C++ 单项选择题标准化考试系统.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++ 单项选择题标准化考试系统.doc

目 录 1.课程设计目的 1 2.课程设计题目描述和要求 1 2.1课程题目 1 2.2课程要求 1 3.课程设计报告内容 1 3.1算法描述 1 3.2 源程序 2 4.课程设计总结: 6 5.参考书目 7 1 课程设计目的 练习自己的动手能力,在学习理论的同时增强自己的编程能力,使理论与实践相结合,在学习书本的同时扩展自己的课外知识. 2 课程设计题目描述和要求 2.1课程题目 单项选择题标准化考试系统 2.2课程要求 (一)功能要求: (1)用文件保存试题库。(每个试题包括题干、4个备选答案、标准答案) (2)试题录入:可随时增加试题到试题库中 (3)试题抽取:每次从试题库中可以随机抽出N道题(N由键盘输入) (4)答题:用户可实现输入自己的答案 (5)自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩。 (二)其它要求: (1) 只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读 (2) 至少采用文本菜单界面(如果能采用图形菜单界面更好) (3) 学生可自动增加新功能模块(视情况可另外加分) (4)写出课程设计报告,具体要求见相关说明文档. 3 课程设计报告内容 3.1算法描述 定义题目数组,选向数组,输入题目的及选向并给定正确答案。 输入所要答的题目数,然后进行答题。输入的答案与标准答案进行比较,如果一致,则正确,否则错误。最后根据题目数及答对题目数进行输出得分。 3.2 源程序 #include iostream #include fstream #include dos.h using namespace std; struct question { char ask[200];/*选择题题目*/ char answer[4][80];/*选择题选项*/ int right;/*正确答案*/ struct question *next; }; //函数声明 int MenuChoice(void); //选择菜单 struct question *charu_timu(struct question *fst, const struct question *ad); //向列表中插入试题函数 struct question *da_an_weizhi(struct question *seek, long len, long max); //确定一个读取答案的位置的函数 void GetQuestion(struct question *src); //获取问题,选项,以及正确答案函数 void bao_cun(const struct question *ed, FILE *saf); //将列表中的试题保存在文件中的函数 struct question *LoadFile(struct question *td, FILE *laf); //从文件中读取题目,将题目添加到列表中的函数 int GetAnswer(void); //输入选择题的答案 void huida_Question(const struct question *que, int n); //回答问题函数 main() { struct question *start = NULL, temp; long choice, line = 0, c; FILE *fp = fopen(wangkun.dat, a+); while ((choice = MenuChoice()) != 3) if (choice == 1) { GetQuestion(temp); start = charu_timu(start, temp); ++line;/*统计列表的长度*/ system(cls); } else if (choice == 2) { c =8; while (c 6 || c line) { cout请输入要回答的问题数量: ; cinc; } huida_Question(start, line); } return 0; } /*da_an_weizhi函数确定一个读取答案的位置,len代表要读取的答案数,max代表列表的长度*/ struct question *da_an_weizhi(struct question *seek, long len, long max) { int i; while (i--) seek = seek-next;//找到指定的位置 return seek; } //向列表中插入试题

文档评论(0)

基本资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档