单项选择题标准化考试系统设计资料.pdf

上传人:白大夫 文档编号:5410135 上传时间:2020-05-02 格式:PDF 页数:23 大小:303.91KB
返回 下载 相关 举报
单项选择题标准化考试系统设计资料.pdf_第1页
第1页 / 共23页
单项选择题标准化考试系统设计资料.pdf_第2页
第2页 / 共23页
单项选择题标准化考试系统设计资料.pdf_第3页
第3页 / 共23页
单项选择题标准化考试系统设计资料.pdf_第4页
第4页 / 共23页
单项选择题标准化考试系统设计资料.pdf_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《单项选择题标准化考试系统设计资料.pdf》由会员分享,可在线阅读,更多相关《单项选择题标准化考试系统设计资料.pdf(23页珍藏版)》请在三一文库上搜索。

1、面向对象程序设计(C+ )课程大作业 设计题目:单项选择题标准化考试系统设计 院系:计算机科学与信息工程学院 专业班级: 学号姓名: 指导教师:某老师 2015 年 1 月 目录 一、 成员分工 1 二、需求分析 . 2 三、总体设计 . 3 四、详细设计 . 4 五、系统测试 10 六、总结 13 七、参考文献 14 - - 1 一 成员分工 我们小组成员共有三名,分别是为了能按时圆满的完成这次C+ 课程设计,我们小组进行了详细的 分工,以确保设计能按时完成。经过周密的考虑和详细的调查最终确定单项选择题标准化考试系统设计 需要以下几个功能模块: (1)需求分析 (2)保存试题库 (3)试题的

2、录入 (4)试题的抽取 (5)答题 (6)自动判卷 (7)系统测试 (8)退出系统 经过小组成员的讨论,并根据个人的特长和具体爱好做如下具体分工: 神具体完成以下模块的设计与实现: (1 ) 需求分析 (2 ) 保存试题库 (3 ) 试题的录入 具体完成以下模块的设计与实现: (1)试题的抽取 (2)答题 具体完成以下模块的设计与实现: (1)自动判卷 (2)系统测试 (3)退出系统 - - 2 二 需求分析 1设计目的 将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、 数据结构作一比较和 总结, 结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。通过课程设计,学生

3、在下述各 方面的能力应该得到锻炼: ( 1)进一步巩固、加深学生所学专业课程C+ 程序设计语言的基本理论知识,理论联系实际, 进一步培养学生综合分析问题,解决问题的能力。 (2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。 (3)利用所学知识,开发小型应用系统,掌握运用C+语言编写调试应用系统程序,训练独立开 发应用系统,进行数据处理的综合能力。 ( 4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。 ( 5)掌握结构化程序设计方法,熟悉面向对象程序设计方法。 ( 6)熟练掌握C+ 语言的基本语法,灵活运用各种数据类型。 ( 7)进一步

4、掌握在集成环境下如何调试程序和修改程序。 2课程设计名称及内容 课程设计名称:单项选择题标准化考试系统 设计内容:设计一个单项选择题标准化考试系统,该系统要求能自动组卷和评分。 3设计方案提示 具体的功能: (1) 用文件保存试题库。(每个试题包括题干、 4 个备选答案、标准答案) ; (2) 试题录入:可随时增加试题到试题库中; (3) 试题抽取:每次从试题库中可以随机抽出N 道题(N 由键盘输入); (4) 答题:用户可实现输入自己的答案; (5) 自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩。 主要知识点: (1) 面向对象程序设计方法 (2) 界面的制作, switc

5、h 的应用 (3) 类和对象 (4) 动态数组(链表)类模板 - - 3 (5) 文件的读写 其他: 程序设计可在 Microsoft VC+6.0、Borland C+ Builder 环境下进行。 三 总体设计 1总的叙述 1、用来保存试题库, 可以用到” Struct TestNode Testquestions”结构体数组, 将试题一一对应的 保留下来 , 放在相应的文件里; 2、试题的录入 , 可以定义一个” void InputTitle(int N)”和” Status InsertNode(int coutgetchar(); N+; /N表示结构体数组长度, 通过加 (3)试

6、题的输出模块 实现此功能相关代码如下: void printNode(TestNode p,int n)/输出第 n 道题题目 cout=1; -i) swap(ai-1, arand()%i); Num=ai-1; /随机函数 , 以随机选定何题进行解答 printNode(TestquestionsNum,Num+1); coutgetchar(); if( Match(TestquestionsNum,r) /调用函数IsMatch 判断所输入的答案与标准答案 是否相同 coutgetchar(); InputTitle(N);*/ ReadNode(N); while(flag=N|f

7、lag=n) coutchose;getchar(); switch(chose) case 1:system(“cls“); if(N=0) coutsum;getchar(); if(sumN) coutgetchar(); if(flag=Y|flag=y) exit(0); system(“cls“);break; default:cout #include #include #include #include using namespace std; #define TRUE 1 #define ERROR 0 #define MAX 30 typedef int Status; t

8、ypedef struct char option130,option230,option330,option430,subject150; char result; TestNode; TestNode TestquestionsMAX; Status SaveNode(int N) /把结构体数组保存到文件“cheng“ 中,如成功保 存返回 TRUE,否则返回 ERROR int i; FILE *fp; if(fp=fopen(“cheng“,“wb“)=NULL) return ERROR; for(i=0;iMAX) return ERROR; coutgetchar(); N+;

9、 /N 表示结构体数组长度 , 通过加 Status DeleteNode(int n)/删除数组中的第n 个元素 return TRUE; void printNode(TestNode p,int n)/输出第 n 道题题目 cout=1; -i) swap(ai-1, arand()%i); Num=ai-1; /随机函数 ,以随机选定何题进行解答 printNode(TestquestionsNum,Num+1); coutgetchar(); if( Match(TestquestionsNum,r) /调用函数 IsMatch 判断所输入的 答案与标准答案是否相同 coutchose;getchar(); switch(chose) case 1:system(“cls“); if(N=0) coutsum;getchar(); if(sumN) coutgetchar(); if(flag=Y|flag=y) exit(0); system(“cls“);break; default:cout“请输入正确选择 !“endl; return 0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1