batman 当前离线
考官
荣誉版主
@echo off&setlocal enabledelayedexpansion set /p a=请输入分数的分子: set /p b=请输入分数的分母: if %a% leq %b% (set /a c=a) else (set /a c=b) cls&echo 原分数为:%a%^/%b% for /l %%a in (%c%,-1,2) do ( set /a x=!a! %% %%a,y=!b! %% %%a if !x! equ 0 if !y! equ 0 set /a a/=%%a,b/=%%a ) echo 约分后为:%a%^/%b% pause>nul复制代码
phanphan 当前离线
一级士官
TOP
hanyeguxing (寒夜孤星)当前离线
原帖由 phanphan 于 2010-6-8 13:33 发表 小白提问: 1. set /a x=!a! %% %%a,y=!b! %% %%a 中,中间的那对%%是起什么作用啊? 2. if !x! equ 0 if !y! equ 0 set /a a/=%%a,b/=%%a 可以两个if这样写吗,这样写看来是“或”的意思?
@echo off set/p a=请输入分数的分子: set/p b=请输入分数的分母: cls&echo.原分数为:%a%/%b% if %a% equ %b% set han=1&goto:han if %a% gtr %b% (set ye=%a%&set gu=%b%) else set ye=%b%&set gu=%a% :ye set/a xing=ye%%gu if %xing%==0 (set/a a/=gu,b/=gu) else set ye=%gu%&set gu=%xing%&goto:ye set han=%a%/%b% :han echo.约分后为:%han%&pause>nul复制代码
523066680 (消遣区)当前离线
版主