- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信息科学与技术学院
程序设计基础课程设计报告
题目名称: 单项选择题标准化考试系统
学生姓名: 阿斯木姑丽˙木合白提
学 号: 2011508049
专业班级: 计科(02)班
指导教师: 郭理 老师
2012年 7 月 5日
目录
.1 课程设计题目与要求 3
.1.1 设计题目 3
1.2设计要求 3
.2总体设计 3
.3 详细设计 4
.3.1功能模块设计 4
. 3.1.1保存文件功能模块: 4
.3.1.2 输出文件功能模块: 5
.3.1.3 答题功能模块: 5
.3.2数据结构设计 6
.4 调试分析 6
˙5 课程设计总 结 10
6.附录 10
7 指导教师意见 15
.1 课程设计题目与要求
.1.1 设计题目
课程设计名称:单项选择题标准化考试系统
设计内容:设计并实现一个单项选择题标准化考试系统。该系统可以完成试题录入、试题抽取、自动判卷等功能。
1.2设计要求
功能要求:
用文件保存试题库。(每个试题包括题干、4个备选答案、标准答案)
试题录入:可随时增加试题到试题库中
试题抽取:每次从试题库中可以随机抽出N道题(N由键盘输入)
答题:用户可实现输入自己的答案
自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩。
(二)其它要求:
(1) 只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读
(2) 至少采用文本菜单界面(如果能采用图形菜单界面更好)
(3) 学生可自动增加新功能模块(视情况可另外加分)
.2总体设计
一 总的概叙:
1、用来保存试题库,可以用到”Struct TestNode Testquestions”结构体数组,将试题一一对应的保留下来,放在相应的文件里;
2、试题的录入,可以定义一个” void InputTitle(int N)”和” Status InsertNode(int N)”函数将试题录入;
3、 试题的抽取,可以定义一个” void printNode(TestNode p,int n)”的函数,用到”Rand”函数进行随机抽取;
4、答题方面,,则定义一个” void answer(int sum)”函数用于答题者的输入答案;
5、自动判卷,则可以定义一个” Status Match(TestNode p,char m)”函数,用来对比答题者答案和正确答案,给出判断正确与否;
6、用一个main函数将上述各个函数功能块连接起来,实现”单项选择题标准化考试系统”的各个方面的功能,完成设计.。
二、大概流程图
.3 详细设计
.3.1功能模块设计
. 3.1.1保存文件功能模块:
.3.1.2 输出文件功能模块:
.3.1.3 答题功能模块:
N
Y
Y N
.3.2数据结构设计
程序中主要用到了结构体数组,定义类型,如typedef int Status等,用结构体数组可以使得程序比较简便,易于读懂,免去频繁的赋值,而用定义类型,可以使得程序具有移植性,健壮性好。
.4 调试分析
一、 操作界面
二、 进行答题并判卷
在这一部分我发现如果题库中没有试题的话,程序依然会让你答题,显示的题目和选项都是空白的,操作起来很费神。
后来再程序中加了一个判断题库中题目数量显示和比较答题数和试题数多少的判断语句,重新运行得以解决。
三、 显示整张试卷内容
选这个选项的时候,如果题库没有试题,将会显示空白。
所以又在程序中加了一个和上一个差不多的判断语句。
四、 插入试题
五、 退出系统
调试分析结论:里面用到的随机函数在随机选择试题时,有时会遇到选择出来的试题时重复的,
由于时间比较紧迫,暂时还没有找出原因,修正过来.
˙5 课程设计总 结
经过这次的C++课程设计,我学到了很多,最主要的一点是怎样去运用自己学过的知识,怎样去找到自己所需要的资料,并在短时间把它运用到具体的实践中,运用到自己所需要的方面。这个过程是很艰难的,要花费很多的时间和精力,但是,在事情过后,自己就会发现自己已经在这个过程中学到了自己想要的东西,这种获得是更深刻的。
在做这个C++课程设计的时候,我原先也
文档评论(0)