我也做了一个,个人感觉还行,就是减法出现负数的情况不可避免(以我现在的水平来看)- @echo off
- color 1F
- setlocal enableDelayedExpansion
- title 小学生加减法练习器v1.0
-
- :menu
- cls
- echo ┌───────────────────┐
- echo 小学生加减法练习器v1.0
- echo └───────────────────┘
- echo ┌──┐
- echo │1│ 开始练习
- echo └──┘
- echo.
- echo ┌──┐
- echo │2│ 退出
- echo └──┘
- set /p choose=请输入:
- if %choose%==1 goto lianxi
- if %choose%==2 exit
- echo 输入有误! 请重新输入
- pause>nul
- goto menu
-
- :lianxi
- cls
- set /p sx=请输入数字上限:
- set /p sc=要计算的是加法还是减法(A,B)?
-
-
- :clc
-
-
- ::处理加数(或减数)
- set /a m=%random%%%%sx%
- set /a n=%random%%%%sx%
-
- ::处理算式
- if %sc%==A set ss=%m%+%n%
- if %sc%==B set ss=%m%-%n%
-
- ::生成答案
- set /a results=%ss%
-
- :loop
- cls
- set times=0
- echo 第[%times%]道题
- echo 请计算:%ss%
- set /p ans=请输入结果:
- set /a time=%time%+1
-
- ::结果与标准答案进行对比
- if %ans% gtr %results% set d=大&goto error
- if %ans% lss %results% set d=小&goto error
- if %ans% equ %results% goto right
-
- :error
- cls
- echo 你计算的结果%d%了!
- pause>nul
- goto clc
-
- :right
- cls
- echo Bingo 你算对了
- echo 按任意键继续答题
- pause>nul
- goto clc
复制代码
|