自己编的一个小小bat
bat吧
全部回复
仅看楼主
level 5
风行者SX 楼主
最近闲来无事,编了一个bat计算器,几下完成--给新手们做个榜样了。
上代码:
set /p b=
echo 请输入另一个加数
set /p c=
set /a d=%b%+%c%
echo %d%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
:jian
echo 请输入被减数
set /p beijian=
echo 请输入减数
set /p jian=
set /a e=%beijian%-%jian%
echo %e%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
:cheng
echo 请输入被乘数
set /p beicheng=
echo 请输入乘数
set /p cheng=
set /a f=%beicheng%*%cheng%
echo %f%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
:chu
echo 请输入被除数
set /p beichu=
echo 请输入除数
set /p chu=
set /a g=%beichu%/%chu%
echo %g%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
:qing
cls
:end
goto a
比较人性化,还有清屏功能,无限循环的做计算(做一次开一次程序太亏了)。各位大虾指导下。
2011年09月29日 15点09分 1
level 5
风行者SX 楼主
晕!前面有一部分没有复制!这次上完全得代码。
@echo off
color 2f
echo bat计算器
:a
echo 输入1为加法,2为减法,3为乘法,4为除法。
set /p a=
if %a%==1 (goto jia)
if %a%==2 (goto jian)
if %a%==3 (goto cheng)
if %a%==4 (goto chu)
:jia
set /p b=
echo 请输入另一个加数
set /p c=
set /a d=%b%+%c%
echo %d%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
:jian
echo 请输入被减数
set /p beijian=
echo 请输入减数
set /p jian=
set /a e=%beijian%-%jian%
echo %e%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
:cheng
echo 请输入被乘数
set /p beicheng=
echo 请输入乘数
set /p cheng=
set /a f=%beicheng%*%cheng%
echo %f%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
:chu
echo 请输入被除数
set /p beichu=
echo 请输入除数
set /p chu=
set /a g=%beichu%/%chu%
echo %g%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
:qing
cls
:end
goto a

2011年09月29日 15点09分 2
楼主我拿走了如何
2018年01月03日 13点01分
level 5
风行者SX 楼主
补丁,最新补丁~~~
取余运算~~(适合小童鞋们作弊~~~~)
大家看:
先把:a后面改成:
echo 输入1为加法,2为减法,3为乘法,4为除法,5为取余运算。
在if %a%==4 (goto chu)后面添一句:
if %a%==5 (goto quyu)
然后在:qing前面加上:
:quyu
echo 输入被除数
set /p beiquyu=
echo 输入除数
set /p quyu=
set /a h=%beiquyu%%%quyu%
echo %h%
pause
echo 需要清屏吗?需要输入1,不需要输入2
set /p qing=
if %qing%==1 (goto qing)
if %qing%==2 (goto end)
测试完毕,木有问题,给新手做个榜样吧。

2011年09月29日 15点09分 3
level 5
风行者SX 楼主
似乎bat无法做一些高级运算比如根号之类的。。。不然我就可以在家作弊了。。。。呵呵呵
2011年09月29日 15点09分 4
只要你有耐心,完全可以的 [哈哈]
2014年08月27日 18点08分
level 11
vbs
2011年09月29日 15点09分 5
level 13
SET中不用带百分号的而且最好开启变量延迟
2011年09月29日 23点09分 6
level 5
风行者SX 楼主
是指等号前面的还是后面的??等号前面的不用加,后面的我试过不加,结果--一闪而过!!所以还是加上保险。
2011年09月30日 23点09分 7
level 5
风行者SX 楼主
5楼的vbs算什么——
2011年09月30日 23点09分 8
level 5
风行者SX 楼主
对不起我也属于入了一半门的,看到过变量延迟但是没用过,问一下变量延迟是神马用??
2011年09月30日 23点09分 9
不是神马用,是什么用
2018年01月03日 13点01分
level 5
风行者SX 楼主
最近学C语言去了。。。。因为C语言可以做些高级的事,bat就只能先放下了~~~我曾经出过一个BAT入门教程,用BAT编的,结果——找不到了!!!!额。。。我再去E盘找找——,,,,
2011年09月30日 23点09分 10
level 11
其实开方编写,小数乘法是一大障碍。。。
2011年09月30日 23点09分 11
level 14
其实可以做到!小数乘法可以用for /f截取,开方嘛,goto可以做到
2011年10月01日 04点10分 12
level 13
@echo off
:2
echo 输入题目如1+2
set/pp=
set/aa=%p%
echo;结果为 %a%
set p=
goto 2
2011年10月27日 14点10分 14
输入值p,设定值赋值p给a,结果显示a的值(其实是显示p的值),错误在【set p= 】完全无用。而且这段代码在运行时的唯一结果是看不到cmd显示%a%,因为太快了,而层主没有pause,代码将会瞬间回归【:2】。
2014年04月20日 13点04分
level 5
风行者SX 楼主
第一,程序可简写为:
@echo off
:2
echo 输入题目如1+2
set/p a=
echo;结果为 %a%
goto 2
第二,
goto 2前面那个set /p p=是干什么的,没有用!
第三,
你这个赖皮哦,直接输出题目哦。

2011年11月22日 11点11分 15
level 5
风行者SX 楼主
对不起,打错,楼上的set /p p=应该写为set p=
2011年11月22日 11点11分 16
level 13
你确定没有用
2011年11月23日 05点11分 17
level 8
有问题,打不开呀...
2011年11月26日 05点11分 18
level 5
风行者SX 楼主
请复制二楼的代码,一楼有部分没有粘帖上去。至于怎样保存为bat文件,我想你懂的。
2011年11月26日 10点11分 19
level 5
风行者SX 楼主
那请问是什么用???我是中手…………
2011年11月26日 10点11分 20
1 2 尾页