中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-10 14:56
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,255 会员排行
DOS批处理 & 脚本技术(批处理室) » 如何实现打乱试题与答案简单考试代码?
可打印版本  960 / 7
第1楼 pykacha 发表于 2008-11-22 18:19
初级用户 发帖 73 积分 156
如何实现打乱试题与答案简单考试代码?
具体问题是这样的:
在shiti.txt文件里有大概如下内容,总共有20题(答案间用Tab,-y表示此答案为正确答案,用来判断是否加分用的,出题时不显示出来):
////////////////////////////////////
1.你今年多大?
a.几岁 b.十几岁-y c.二十几岁
2.你学什么专业?
a.化学 b.物理 c.政治-y
3.你现在读几年级?
a.高一-y b.高二 c.高三
……
////////////////////////////////////
现在想用个P文件从中逐个调出所有试题,但顺序要打乱,可能首先调出的是第2或第3或第10题,接着调出第4什么的,乱序调出全部试题。
答案abc的出现也是随机打乱顺序的。如第2题出来时可能变会为:
8.你学什么专业?
a.物理 b.政治 c.化学
当输入b(不用回车)后就自动加1分,输入a或c就不加分但出示正确答案,然后到下一题,刚做过的题目可以不清屏,让它依然留在屏上。
全部完成时显示得分。
自己试了很长一段时间了,没办法。
希望大家帮帮忙。
(当然,如果可以记录下做错的题目,并提供选择,是否想把做错的题目再做一次,那效果就更完美了)
第2楼 zexuhu 发表于 2008-11-22 18:30
初级用户 发帖 30 积分 66 来自 陕西
%RANDOM% 返回 0 到 32767 之间的任意十进制数字。
比如说想生成0-100的随机数就是对101取余数就可以了
格式是:set num=%RANDOM%%%100
第3楼 zexuhu 发表于 2008-11-22 18:33
初级用户 发帖 30 积分 66 来自 陕西
if num==1 goto 第一题
if num==2 goto 第二题
if num==3 goto 第三题
..........
第4楼 pykacha 发表于 2008-11-22 19:27
初级用户 发帖 73 积分 156
这些俺都知道,但整体实现起来不容易,请高手帮忙
第5楼 terse 发表于 2008-11-22 21:54
银牌会员 发帖 946 积分 2,404
试试这个如何?


[ Last edited by terse on 2008-11-24 at 17:51 ]
第6楼 pusofalse 发表于 2008-11-22 22:43
银牌会员 发帖 646 积分 1,604


[ Last edited by pusofalse on 2008-11-22 at 23:02 ]
第7楼 pykacha 发表于 2008-11-24 17:36
初级用户 发帖 73 积分 156
谢谢terse与pusofalse的用心指导。
trese那个运行起来好像有些问题,pusofalse那个基本实现了功能,很简洁。
也谢谢其它人,谢谢slore。
虽然有点罗嗦,但我还是要说。谢谢了。
第8楼 terse 发表于 2008-11-24 17:54
银牌会员 发帖 946 积分 2,404
Originally posted by pykacha at 2008-11-24 17:36:
谢谢terse与pusofalse的用心指导。
trese那个运行起来好像有些问题,pusofalse那个基本实现了功能,很简洁。
也谢谢其它人,谢谢slore。
虽然有点罗嗦,但我还是要说。谢谢了。

重新修改一下 错误有什么提示?
不过 不能输入字符后就跳过 还是要回车才到下一题
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023