中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-04 04:41
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于批处理简单模拟投票的实现 查看 682 回复 6
楼 主 关于批处理简单模拟投票的实现 发表于 2007-04-17 05:58 ·  中国 湖北 武汉 电信
初级用户
积分 68
发帖 30
注册 2007-01-16 07:05
19年会员
UID 76659
性别 男
状态 离线
思路:同样是从文本中取数加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

测试通过,欢迎改进!
2 发表于 2007-04-17 06:00 ·  中国 湖北 武汉 电信
初级用户
积分 68
发帖 30
注册 2007-01-16 07:05
19年会员
UID 76659
性别 男
状态 离线
啊?怎么发的是这个啊!失误。

代码应是:

@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

哈哈,一楼我占了,谁都不要跟我抢!
3 发表于 2007-04-17 08:32 ·  中国 安徽 芜湖 电信
中级用户
★★
积分 247
发帖 123
注册 2007-04-17 06:29
19年会员
UID 85468
性别 男
状态 离线
二楼我来占。有点看不懂。
4 发表于 2007-04-17 09:26 ·  中国 广东 广州 海珠区 电信
银牌会员
★★★
积分 1,206
发帖 517
注册 2007-03-25 01:18
19年会员
UID 82819
性别 男
状态 离线
代码看得好累。。

最好重新写一下吧。。
知,不觉多。不知,乃求知
5 发表于 2007-04-18 11:53 ·  中国 湖北 武汉 电信
初级用户
积分 68
发帖 30
注册 2007-01-16 07:05
19年会员
UID 76659
性别 男
状态 离线
不会吧。结构很清楚的啊!几个标签也分的很清啊!

就是 www.cn-dos.net 写错了。不好意思啦!
6 发表于 2007-04-18 13:28 ·  中国 云南 红河哈尼族彝族自治州 开远市 电信
初级用户
积分 111
发帖 44
注册 2007-03-12 16:00
19年会员
UID 81515
性别 男
状态 离线
SET /P G=[INPUT YOUR CHOICE]
G的变量直 INPUT YOUR CHPICE 这句话是什么意思????
7 发表于 2007-04-18 22:03 ·  中国 浙江 杭州 华数宽带
银牌会员
★★★
积分 2,000
发帖 621
注册 2007-01-01 00:00
19年会员
UID 75212
性别 男
状态 离线
那不是G的变量值;
set /p 的用法是:
set /p 变量名=提示语
把用户的输入赋值给变量;
所以INPUT YOUR CHPICE 是提示语而不是G的变量值
论坛跳转: