试卷自动出题系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

河南中医学院

《计算机程序设计》(c语言)

课程设计报告

试卷自动出题系统

院系:信息技术学院

专业:计算机科学与技术

班级:2013级计科本科班

姓名:史向祎、游少莎、梁成宜

指导老师:***

完成日期:2013年12月28日

目录

试卷自动出题系统 (1)

1.题目描述: (3)

2.算法设计/设计思想: (3)

2.1设计思想: (3)

2.2分工情况: (4)

3.结构框图、各模块的功能: (4)

3.1各模块的功能: (4)

3.1.1、main()函数 (4)

3.1.2、land()函数 (4)

3.1.3、welcome()函数 (4)

3.1.4、subject_choose()函数 (4)

3.1.5、ques_total()函数 (4)

3.1.6、question_i()函数 (4)

3.1.7、getSystemTime()函数 (5)

3.1.8、score_i()函数 (5)

3.2结构框图: (5)

4.程序结构: (7)

4.1登陆函数land()函数 (7)

4.2选择科目subject_choose()函数 (8)

4.3试题总数函数ques_total()函数 (9)

4.4定义试题函数:question_i()函数 (10)

4.5显示分数函数 (11)

5.源程序及调试结果清单 (12)

5.1源程序 (12)

5.2调试结果: (25)

6设计总结及心得体会 (29)

6.1设计总结 (29)

6.2设计心得: (29)

试卷自动出题系统

1.题目描述:

1.1设计一个简单的出题系统,要求有简单的界面,程序段要分清模块。(要求)

程序共包括以下功能:

1.欢迎界面;

2.密码输入登陆界面;

3.显示主菜单;

4.选择所做的科目;

5.输入所做科目的题目数目;

6.系统根据编写的程序随机给出所选科目的题目;

7.用户边做题,系统判断题目正误并且记录系统时间;

8.系统根据所做题目正误给出最后得分并给出时间计算出分数;

9.退出出题界面。

1.2按照分析,设计,编码,调试和测试的软件开发过程完成这个应用程序;

1.3程序运行之后,通过从键盘上输入的试卷题数,系统能够随机生成选择试题(由单选题和多选题两大题型);

1.4用户可输入选择题显示出答案选项;

1.5系统自动改卷并统计出总分,并显示做对的题号和数目;显示做错的题号和数目,并给出最终得分。

2.算法设计/设计思想:

2.1设计思想:

1.通过函数的嵌套调用来实现对当前程序中各个模块的连接与调用;

2.采用模块化设计思想,程序包含主函数和多个子函数,通过函数的调用来完成各项功

能的衔接。

3.主要利用了land()函数实现登陆,其中主要用了if语句嵌套和数组知识strcmp();在系

统时间(时间和日期)函数中主要用到了using namespace std; getSystemTime()获得系统时

间。

4.在登陆函数、欢迎界面设计及科目选择中用选择函数,循环控制结构,子函数的声明

及调用;在系统出题环节,用rand()随机函数实现出题,主要用了switch开关语句和if 嵌套来完成多分支情况;for语句实现循环;在计分环节数组用来存放正确以及错误的题号;试题分数显示环节,即统计出题目,分数,又有前后时间的对比,以便答题者得到

自己的分数及对应的时间。

2.2分工情况:

游少莎主要负责登陆界面,欢迎以及显示规则界面的设置,包括对背景色字体等进行设计。还负责主菜单的设计,科目选择函数的编写;

梁成宜主要负责完成用户输入题目总数,系统自动出题,以及分数的显示;

史向祎主要负责完成系统时间的显示,各个函数之间的调用以及界面的组合。

3.结构框图、各模块的功能:

3.1各模块的功能:

该程序共分八个模块,以下为各模块的功能说明:

3.1.1、main()函数

主要负责对各个函数的声明,以及进入开始界面显示主菜单等。

3.1.2、land()函数

主要负责登陆工作,三次之内输入正确密码即可以登陆,三次输错,则自动退出系统;负责设置控制台背景色和字体颜色,使屏幕具有视觉美感。

3.1.3、welcome()函数

出现欢迎界面。并显示系统规则。

3.1.4、subject_choose()函数

主要实现用户自主选择测试的科目。在主菜单中选择1~4选项,选择做题还是退出系统。

3.1.5、ques_total()函数

主要负责用户自主选择所做题目的数目,但是不能超过系统规定的题数。

3.1.6、question_i()函数

该函数是系统按照用户的要求出现相应的数目的题目,用户边做题目,系统边改题,并同步显示出正确答案,并且在做题改题的同时统计正确、错误的数目及相应题号。

其中,1、2、3分别相对应英语、数学、c语言试题函数。

3.1.7、getSystemTime()函数

做题前后分别显示系统时间,使用户可以知道自己花了多少时间,便于自我评价。

3.1.8、score_i()函数

显示分数函数,用来显示各科做完后正确、错误的数目以及相应题号,并显示出最终得分。

其中,1、2、3分别相对应英语、数学、c语言的分数。

3.2结构框图:

相关文档
最新文档