选择题考试系统C++课程设计_第1页
选择题考试系统C++课程设计_第2页
选择题考试系统C++课程设计_第3页
选择题考试系统C++课程设计_第4页
选择题考试系统C++课程设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、选择题考试系统目录第一章 课程设计的目的和要求 3课程设计的目的3第二章课程设计任务内容4课程设计任务内容 4第三章课程设计详细设计说明 5程序模块总图5教师登录模块6扫描题库模块9程序辅助模块9约束条件10接口函数描述10程序测试10调试结果及截图1116第四章软件使用说明22软件开发起因以及使用说明 22第五章课程设计心得与体会 23附录1参考文献24附录2 程序源代码25第一章课程设计的目的和要求课程设计的目的VC程序设计是计算机科学与技术专业的基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。 课程设计的目的是加深对理论教学内 容的理解和掌握,使学生较系统的掌握程序

2、设计及其在网络开发中的广泛应用, 基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、 并在实践应用方面打下一定基础。要求学生在设计指导教师的帮助下自行完成各 个操作环节,并能实现且达到举一反三的目的, 完成一个项目解决一类问题。要 求学生能够全面、深入理解和熟悉掌握所学内容,并能够用其分析、设计和解答 类似问题;对此能够较好的理解和掌握,能够进行简单分析和判断;能编写出良 好风格的程序;掌握VC程序设计的基本技能和面向对象的概念和方法。培养学 生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能 力的提高。课程设计的基本要求:(1)掌握VC编程、面向对象

3、的基础知识。(2)掌握API、MFC®程的消息响应机制和应用程序框架。(3)较熟悉地编写基于API、MFCW VC应用程序。(4) 了解VC的常用标准类库、编程技巧及高级编程。(5) 了解学生管理系统设计的可行性分析、设计、模块划分、功能实现、软件 调试、软件评估。(6) 联系已学过的内容,巩固所学的理论,增强独立工作能力。(7)通过设计主要使学生有一个系统总体开发,总体设计、总体实现的完整过 程,对理论学习及动手能力都有一个很大的提高。(8)通过本次设计,进一步培养学生热爱专业的理想, 同时对本专业综合素质 的提高起一个积极的推动作用。(9)能合理的安排个人的工作地点,并遵守操作规

4、程与安全技术规则。第二章课程设计任务内容课程设计任务内容单项选择题标准化考试系统功能要求:用文件保存试题库(每题包括题干、4个备选答案、标准答案)试题录入:可随时增加试题到试题库中试题抽取:每次从试题库中随机抽取 N道题,N由键盘输入答题:用户输入自己的答案自动判卷:系统根据标准答案实现自动判卷,并给出成绩要求:1)用C语言实现系统;2)函数功能要划分好(结构化程序设计);3)界面友好(良好的人机交互),加必要的注释;4)提供程序测试方案。第三章课程设计详细设计说明程序模块总图程序模块功能如图所示:图3-1程序功能示意图由于此程序较复杂要求两个人分工合作完成,所以我负责其中教师管理系统。从图中

5、可以看出程序中教师的管理系统又分三个模块:(1)教师登陆模块(2)试题管理模块(3)扫描题库模块教师登录模块模块描述:此模块是确保试题的保密,不被任意人随意看到而设置的一个密码验证登陆模块。具作用是起到保护试题不被泄露。程序如下:int userlogin()(char username20; n"exit(1);cout<<endl<<"注意:新增的题目中,不允许出现和'#'! "<<endl;cout<<"题库中已有"<<maxnum<<"道题

6、,请按顺序编写题号!"<<endl;cout<<”请输入题目(不包括选项,并在最后加一个字符'#'表示输入完毕):n"docin>>contentn;n+;while(contentn-1!='#');n=0;while(contentn!='#') out_stream<<contentn;n+;out_stream<<endl;cout<<"你想要设置几个选项呢请输入答案选项数:"cin>>optnum;don=0;co

7、ut<<" 请输入第"<<num<<"个选项(在最 后加一个字符'#'表示输入 完 毕)"<<endl;docin>>contentn;n+;while(contentn-1!='#');n=0;while(contentn!='#') out_stream<<contentn;n+;out_stream<<endl;num+;while(num!=optnum+1);out_stream<<endl<&l

8、t;""<<endl;();("",ios:app); n"exit(1);do cout<<" 请录入答案:n"cin>>ans;while(ans!='A'&&ans!='B'&&ans!='C'&&ans!='D');out_stream<<ans;();maxnum+;cout<<"继续回答问题吗选择'1' 继续,选择&#

9、39;2'回到主菜单。"<<endl;cin>>dist;while(dist=1);doselect(menu();性能:(1)用文件保存试题库(每题包括题干、4个备选答案、标准答案)(2)试题录入:可随时增加试题到试题库中(3)可以在录完,每一道题后,退出或继续录入输入值:按照相应的提示输入信息,题目会保存到 中,答案会保存到" 中,并且原来的信息不会丢失。保存到两个文件中在自动判题时就要求两 个文件一起调用,当然这是另外一部分,不在我的程序内。输入的信息可 以是字符也可以是汉字。算法:此模块算法最大特点是根据字符#判断试题的题目和选项录

10、入是 否结束。利用循环来实现试题一道一道的录入,从而保存到文件中。数据文件存储说明:输入信息试题题目及选项试题答案图3-2文件存储示意图扫描题库模块模块描述:此模块是为了确定试题库中有多少道题,并且其在录入试题时也会起到作用,根据其扫描出的题数,确定录入试题的题号。程序如下: n"exit(1);)while(in_stream >>check)(if (check='') count+;)return count;)算法:此块的算法是在根据录入试题时在题号前面自动录一个所以在扫描时根据勺个数来判断试题的个数。程序辅助模块辅助模块是为了能够实现各模块之间紧

11、密的连接,比如程序中的menuselect模块等。约束条件硬件环境:内存256MBW上;硬盘60G以上其他组件:光驱(CDROM显卡(SVGA适配器;集线器;交换机。系统平台:Windows2003操作系统,Office 2000 办公软件设计语言:C+!言服务器:运行软件:Microsoft Visual C+接口函数描述此部分程序有一个主函数和五个子函数:1 int main主函数2 int userlogin(); 功能:用户登录3 int menu();功能:菜单函数4 void doselect(int choice);功能: 选择处理5 void add();功能:添加题目6 in

12、t checkAll();功能:扫描题库程序测试完成教师管理系统的详细设计后,接下来就到了系统测试阶段。在这一阶段 中,首先要完成代码的编译过程。代码初步完成编写后,要仔细地进行编译,根 据系统提示错误,进行修改。注意代码的书写规范,包括命名惯例、注释、分隔 和缩进等。在这个过程中,我们要养成良好的程序编写习惯,对编译过程中经常出现的 错误情况加以注意,为今后的程序编写打下基础。调试结果及截图程序主界面:r C:、, U se rsAd mini strtoD e sktopDeb ugC ppl.exe图3-3系统主界面测试内容:实现教师和学生两个不同角色的登陆界面。操作步骤:输入数字1,然

13、后按任意键期望结果:教师管理界面登陆成功操作截图:图3-4教师登陆界面测试内容:实现登陆正确,输入错误会重新输入操作步骤:输入用户名admin,然后按回车期望结果:用户界面登陆成功操作截图:图3-5密码输入界面操作:按回车判断是否输入正确 操作截图:汉"C:Use rsAdml nistrato rDes lct<? pDeb ugC p pl. exe'图3-6密码正确后界面操作界面:kmwyxy教师登录叫"mW"."=".-C;U rsAd iriinistratorAD e5kt-opDebugC ppl.exe;续 SS,

14、继 KK神误键 :错音 X户户按 W用用请图3-7密码输入错误界面测试内容:重新输入密正确码后是否进入扩充题界面操作步骤:按照提示操作;期望结果:输入成功,进入扩充试题界面操作界面;* 'C:U5er7 Admir itriitcr.DeslctopDebugCppl.exe'KXMXMKW HX MM藻黄X MM 款董*M惬*舅 MM餐菜*试题管理*JH(*:M MM. JCM JCJCM! MMJC NHMHM MHH?eJiHit MHMrWM MHM MM 抵MHMHMiNMMKXJCM.MMXaCJWMXXatJCMNXJiEKK 算旄*Jt3cM 旄 XMWKiMM

15、=*KJCKJtMMXKXMMltM:注 MMMN»»1.A >2.退出程序 请速至榛作:图3-8登陆成功试题管理界面图3-9试题录入界面1测试内容:测试出入题目后是否能够录入文件操作步骤:输入题目,不包括选项,最后输入一个 #字符;期望结果:输入成功,进入输入选项界面图3-10录入选项界面测试内容:测试出录入题目术后后是否能够进入输入 A选项界面操作步骤:输入题目数,期望结果:输入成功,进入输入 A选项界面图3-11录入A选项界面示输入完毕)汪蠢飘墙的题目中,不为i; 题集中已有£道题,请揄 请匾人题目不包括选项.并6 7+5=廿他想擘设置几个选项呢?道

16、信喻其第1个选璇在重;后图3-12录入B选项界面表示输入完毕”事输入第2个选项在最后加一个字符,配表示输入完毕) 请输入第3个选项在最后加一个字符,中表示输入完毕输人题§不包括选项,并轻最后?+5= tt扁八第i个选项(在瓯肩7口一个图3-13录入C选项界面个字符示输入完毕情输入第B 11 U南输入第C 12 it憎输入第个选项在最后加一个字符,配去示输入完毕 个选项在最后加一个字符,镇表示输入完毕 个选项在最后加一个字符,中表示输入完毕,住季新增的题目中,不, 慝库中已有5道题,请书 番辅人题目不包括选项.卜 7+5= U你想蒙埃置几个选项呢? 者辅人第1个选项在最型和HtB|彳白

17、字符,於表示输入完毕、=图3-14录入D选项界面图3-15录入答案界面字符,卡表示输入完毕兀口T钿肥,示输入完毕)犍续回答问题吗继续选择回到主菜单输入题目不包括选项.?+5= n想襄设置几个选项呢?fiiAM 1个选项也最恬%)第2个选项(在最后加一个字符,即表示榆人完毕) 斯弑第3个选项在最后加一个字符W表示输入完毕 储第入第4个选项在最后加一个字符即表示输入完毕 D 15 #请杲入答案:大写字母酎R/C/D5图3-16继续录入或退出界面tilcu - iHW本文件(月端有向情式帮助(E颂4、A“B、C、D、2+7= ?67©5、5+5=瓦2氏5C. 3D. 10田 6 卜C D7

18、+5=121113咔图3-17试题录入文件截图文件开,扁辑E 13式首音")帮助®A&DDDA图3-18试题答案截图2121第四章软件使用说明软件开发起因以及使用说明此软件开发是为了实现上机考试,给同学一个上机练习而产生的需求。近 年来随科技进步,网上考试越来越迫切,因此针对这一需求,此软件就此产生。此软件分两个模块,一个是教师管理系统,另一个是学生考试系统;教师可以随时录入试题,可以从问件上直接修改试题;学生可以直接选择答题,和随 机答题两种方式进行。并且此软件可以自动判题,生成成绩。给同学和老师带来 了很多方便。此程序操作简单,很容易掌握。第五章课程设计心得与体

19、会课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼 实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程 .随着科学 技术发展的日新日异,软件开发已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握软件的开发技 术是十分重要的。回顾起此次选择题考试系统课程设计, 至今我仍感慨颇多,的确,从选题到定稿, 从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很 多很多的的东西,同时不仅可以巩固了以前所学过的知识, 而且学到了很多在书 本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很

20、 重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来, 从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立 思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做 的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处, 对以前所学过的知识理解得不够深刻, 掌握得不够牢固,比如说试题录入文件不 知道怎么追加源文件保存,不懂结构体的运用,对软件的汇编语言掌握得不 好通过这次课程设计之后,一定把这学期所学过的知识重新温故。这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在刘静老师 的辛勤指导下,终于由繁到简,由逆而

21、解。同时,在刘静老师和同学的身上我学 得到很多实用的知识,在此我表示感谢!同时,对给过我帮助的所有同学和各位 指导老师再次表示忠心的感谢!附录1参考文献1谭浩强著C+程序设计.北京:清华大学出版社;19992谭浩强著C+程序设计题解与上机指导.北京:清华大学出版社; 19993(美)Richard Johnsonbangh Martin Kalin 著 面向对象程序 设计C+皓言描述,机械工业出版社;2006附录2 程序源代码/*程序简介:单选考试系统帐号:admin密码:123*/#include <iostream>#include <cstdlib>#includ

22、e <fstream>#include <string>#include <ctime>using namespace std;充题库"<<endl<<">>>>2.退出程序"<<endl<<"请选择操作:”;cin>>choice;<<endl;system("pause");system("cls");menu();return 0;)n"exit(1);)cout<

23、;<endl<<" 注意:新增的题目中,不允许出现''和'#'! "<<endl;cout<<"题库中已有"<<maxnum<<”道题,请按顺序编写题号! "<<endl;cout<<”请输入题目(不包括选项,并在最后加一个字符'#'表示输入完毕): n”;docin>>contentn;n+;while(contentn-1!='#');n=0;while(contentn!='#') out_stream<<contentn;n+;out_stream<<endl;cout<<"你想要设置几个选项呢t#输入答案选项数:"cin>

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论