Board logo

标题: 关于批处理简单模拟投票的实现 [打印本页]

作者: fanglor     时间: 2007-4-17 05:58    标题: 关于批处理简单模拟投票的实现
思路:同样是从文本中取数加1!


代码如下:

@ECHO OFF
IF NOT EXIST 1.TXT (GOTO MADE) ELSE (GOTO MAIN)
:MADE
echo 0 >1.txt
echo 0 >2.txt
echo 0 >3.txt

:MAIN
SET /P A=<1.TXT
SET /P B=<2.TXT
SET /P C=<3.TXT
SET /A M=%A%+%B%+%C%+1
ECHO ____________________________________________________
ECHO ^| ++++++++++++++++++++++++++++++++++++++++++++++++ ^|
ECHO ^| + CMD 投票简单实现 Maded by fanglor + ^|
ECHO ^| + %DATE% + ^|
ECHO ^|用法:GOOD: G; COMM: C; BAD: B [只能选一个投一次]^|
ECHO ^| ++++++++++++++++++++++++++++++++++++++++++++++++ ^|
ECHO ----------------------------------------------------
SET /P G=[INPUT YOUR CHOICE]
IF /I %G%==G GOTO GOOD
IF /I %G%==C GOTO COMM
IF /I %G%==B GOTO BAD

:GOOD
SET /A D=%A%+1
ECHO YOUR CHOICE:
ECHO GOOD - %D%/%M%
ECHO THE OTHER:
ECHO COMM - %B%/%M%
ECHO BAD - %C%/%M%
ECHO %D% >1.TXT
PAUSE
EXIT

:COMM
SET /A D=%B%+1
ECHO YOUR CHOICE:
ECHO COMM - %D%/%M%
ECHO THE OTHER:
ECHO GOOD - %A%/%M%
ECHO BAD - %C%/%M%
ECHO %D% >2.TXT
PAUSE
EXIT

:BAD
SET /A D=%C%+1
ECHO YOUR CHOICE:
ECHO DAD - %D%/%M%
ECHO THE OTHER:
ECHO GOOD - %A%/%M%
ECHO COMM - %B%/%M%
ECHO %D% >3.TXT
PAUSE
EXIT

测试通过,欢迎改进!

作者: fanglor     时间: 2007-4-17 06:00
啊?怎么发的是这个啊!失误。

代码应是:

@ECHO OFF
IF NOT EXIST 1.TXT (GOTO MADE) ELSE (GOTO MAIN)
:MADE
echo 0 >1.txt
echo 0 >2.txt
echo 0 >3.txt

:MAIN
SET /P A=<1.TXT
SET /P B=<2.TXT
SET /P C=<3.TXT
SET /A M=%A%+%B%+%C%+1
ECHO ____________________________________________________
ECHO ^| ++++++++++++++++++++++++++++++++++++++++++++++++ ^|
ECHO ^| + CMD 投票简单实现 Maded by fanglor + ^|
ECHO ^| + %DATE% + ^|
ECHO ^|用法:GOOD: G; COMM: C; BAD: B ^|
ECHO ^| ++++++++++++++++++++++++++++++++++++++++++++++++ ^|
ECHO ----------------------------------------------------
ECHO.
ECHO WHAT DO YOU THINK THE WWW.CN-DOS ?
ECHO.
SET /P G=
IF /I %G%==G GOTO GOOD
IF /I %G%==C GOTO COMM
IF /I %G%==B GOTO BAD

:GOOD
SET /A D=%A%+1
ECHO YOUR CHOICE:
ECHO GOOD - %D% /%M%
ECHO THE OTHER:
ECHO COMM - %B%/%M%
ECHO BAD - %C%/%M%
ECHO %D% >1.TXT
PAUSE
EXIT

:COMM
SET /A D=%B%+1
ECHO YOUR CHOICE:
ECHO COMM - %D% /%M%
ECHO THE OTHER:
ECHO GOOD - %A%/%M%
ECHO BAD - %C%/%M%
ECHO %D% >2.TXT
PAUSE
EXIT

:BAD
SET /A D=%C%+1
ECHO YOUR CHOICE:
ECHO DAD - %D% /%M%
ECHO THE OTHER:
ECHO GOOD - %A%/%M%
ECHO COMM - %B%/%M%
ECHO %D% >3.TXT
PAUSE
EXIT

哈哈,一楼我占了,谁都不要跟我抢!

作者: 546474     时间: 2007-4-17 08:32
二楼我来占。有点看不懂。

作者: flyinspace     时间: 2007-4-17 09:26
代码看得好累。。

最好重新写一下吧。。

作者: fanglor     时间: 2007-4-18 11:53
不会吧。结构很清楚的啊!几个标签也分的很清啊!

就是 www.cn-dos.net 写错了。不好意思啦!

作者: sd287054     时间: 2007-4-18 13:28
SET /P G=[INPUT YOUR CHOICE]
G的变量直 INPUT YOUR CHPICE 这句话是什么意思????

作者: bjsh     时间: 2007-4-18 22:03
那不是G的变量值;
set /p 的用法是:
set /p 变量名=提示语
把用户的输入赋值给变量;
所以INPUT YOUR CHPICE 是提示语而不是G的变量值