单项选择题标准化考试系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
沈阳航空航天大学
课程设计报告
课程设计名称:C语言课程设计
课程设计题目:单项选择题标准化考试系统设计
院(系):计算机学院
专业:计算机科学与技术
班级:34010104
学号:2013040101164
姓名:
指导教师:孙伟东
完成日期:2014年03月1日
沈阳航空航天大学课程设计报告
目录
第1章概要设计 ........................................................................................................ - 1 - 1.1题目的内容与要求 ................................................................................................ - 1 -
内容:设计并实现一个单项选择题标准化考试系统。该系统可以完成试题录入、试题抽取、自动判卷等功能。.................................................................................. - 1 -
1.2总体结构 (1)
第2章详细设计 ...................................................................................................... - 2 -
2.1菜单操作模块 (1)
2.2将题目装入内存模块 (1)
2.3开始答题模块 (1)
2.4添加试题模块 (1)
第3章调试分析 .................................................................................................... - 13 - 第4章使用说明 .................................................................................................... - 14 - 附录(程序清单).............................................................................................. - 17 -
第1章概要设计
1.1题目的内容与要求
内容:设计并实现一个单项选择题标准化考试系统。该系统可以完成试题录入、试题抽取、自动判卷等功能。
要求:
(1)用文件保存试题库。(每个试题包括题干、4个备选答案、标准答案)
(2)试题录入:可随时增加试题到试题库中
(3)试题抽取:每次从试题库中可以随机抽出N道题(N由键盘输入)(4)答题:用户可实现输入自己的答案
(5)自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩。
1.2总体结构
本程序主要分为四个模块(功能模块图见下图):(1)模块一:菜单操作模块
该模块实现程序的菜单操作。2)模块二:将题目装入内存模块函数开辟内存空间将试题文件中题目装入内存中。(3)模块三:开始答题模块函数会让用户输入要答的题目数,在屏幕上输出题干和选项并让用户输入答案。判断用户输入答案是否正确。4)模块四:添加试题模块
打开储存试题的文件进行试题信息输入。
第2章详细设计
2.1菜单操作模块:
控制整个程序的运行,控制菜单操作,通过主函数模块分别调用各个模块,实现各项功能,流程如图2.1所示。
图2.1 该模块实现程序的菜单操作。
实现算法如下:
○1在屏幕上输出菜单选项。
○2接受用户输入。
2.2.将题目装入内存模块:
将题目装入内存模块函数开辟内存空间将试题文件中题目装入内存中
图2.2
函数开辟内存空间将试题文件中题目装入内存中。
实现算法如下:
○1遍历文件判断回车符个数(计算题目数)。
○2根据提供参数判断是否将当前题目装入内存。
○3开辟内存空间,将题目信息装入内存。
○4关闭文件返回题目总数。
2.3开始答题模块:
开始答题模块函数会让用户输入要答的题目数,在屏幕上输出题干和选项并让用户输入答案。判断用户输入答案是否正确。
流程图如图2.3
图2.3
函数会让用户输入要答的题目数,在屏幕上输出题干和选项并让用户输入答案。判断用户输入答案是否正确。
实现算法如下:
○1接受用户输入题目数,判断是否合法(大于0、小于总题数)。
○2置随机数并判断随机数是否合法。
○3调用将题目装入内存模块题目装入内存。
○4在屏幕上输出题目,接受用户输入答案。
○5判断用户输入的答案是否正确,输出答题结果统计。
2.4添加试题模块:
流程图如图2.4
打开储存试题的文件进行试题信息输入。实现算法如下:
○1打开文件。
○2开辟内存空间,接受用户输入题目信息。○3判断用户输入是否合法。
○4写到文件并保存。
章调试分析
第3章调试分析
问题1:文本文件无法删除指定的一行
方法:所以要用类似于进栈出栈的方法,把要删的信息过滤出去
问题2:程序不能运行
方法:解决办法就是不断的按F10进行调试,最终找到错误的地方。问题3:打开的文件没有关闭,最终导致一部分源代码被无意休改方法:问了成绩好的同学,最后加了个关闭文件的函数。