高级语言程序设计
3. 中国地理知识考试系统
本考试系统可以通过单项选择的形式来对中国地理知识进行测试。测试题的题库保存在给定的数据集文件TestData.txt中,数据文件中每一行数据代表一个题目,其中第一列是题目的编号,第二列是题目的答案(1,2,3,4分别代表四个选项A,B,C,D),第3,4,5,6列分别存储四个选项的内容。根据需要分别建立结构体数组和结构体链表来对从数据文件中读取的数据进行保存,要求在查询功能中使用结构体素组,在题库题目信息维护功能中使用结构体链表。系统的具体功能要求如下(参考):
1. 中国地理知识学习:
(1) 用户需选择本次要学习的题目数量(需要给出题目数量范围和进行输入判断)
(2) 系统能够根据设定数量显示出本次学习的题目和参考答案
2. 中国地理知识测试:
(1) 用户要进行测试的话,必须先登录,已有用户的数据保存在UserInfo.txt文件中,每一行对应一个用户,其中每一行第一列代表用户编号,第二列代表用户名,第三列代表密码信息。
(2) 用户身份验证成功后,系统会随机从题库中抽取10道题目,然后每次显示一个题目,用户需分别通过输入1,2,3,4来完成A,B,C,D四个选项的选择。
(3) 当用户做完成题目,系统能够显示本次成绩并将该用户本次成绩增加到ScoreData.txt文件的一行中,其中第一列代表用户的编号,第二列代表用户名,第三列代表分数。
(4) 用户可以1)对自己的测试数据进行查询,每次查询前需先输入自己的用户名和密码进行验证,通过后可以显示出自己所有的测试记录; 2)查询自己的测试次数和平均分
3. 中国地理知识题库维护:
(1) 用户能够按照题目编号删除题库中的题,要求当删除某题后,所有后面的题的题号能够减1并将修改后的题库数据更新到TestData.txt文件中。
(2) 用户能够按照题目的数据格式在已有题库中增加新的题目,用户需首先按照题目数据格式先录入新增题目的数据,然后选择在某个编号题目的后面插入该题目。当新插入完成后,系统能够自动将插入题目之后的所有题目的编号自动增1并更新到数据文件中。
附件TXT数据:
1 山东 2 烟台 济南 潍坊 青岛
2 浙江 3 苏州 无锡 杭州 宁波
3 广东 1 广州 深圳 珠海 惠州
4 湖北 4 黄冈 仙桃 荆州 武汉
5 湖南 2 邵阳 长沙 益阳 湘潭
6 河北 1 石家庄 承德 廊坊 唐山
7 河南 2 开封 郑州 洛阳 三门峡
8 青海 3 格尔木 德令 西宁 玉树
9 甘肃 2 白银 兰州 天水 定西
10 新疆 1 乌鲁木齐 哈密 库尔勒 吐鲁番
11 山西 3 大同 吕梁 太原 阳泉
12 陕西 4 宝鸡 咸阳 渭南 西安
13 广西 4 北海 桂林 百色 南宁
14 辽宁 1 沈阳 大连 鞍山 锦州
15 黑龙江 1 哈尔滨 牡丹江 齐齐哈尔 丹东
16 吉林 2 通化 长春 白山 松原
17 西藏 3 林芝 山南 拉萨 日喀则
18 四川 4 绵阳 泸州 宜宾 成都
19 云南 3 丽江 玉溪 昆明 楚雄
20 内蒙古 1 呼和浩特 呼伦贝尔 包头 赤峰
21 安徽 2 芜湖 合肥 蚌埠 淮北
22 江西 4 宜春 九江 景德镇 南昌
23 福建 2 厦门 福州 三明 龙岩
24 海南 3 三亚 三沙 海口 五指山
25 江苏 1 南京 徐州 常州 南通 无锡
案例做计算机C语言:高级语言程序设计-中国地理知识系统
2017-12-18