您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > c语言标准化考试系统课程设计
课程报告课程名称:标准化考试系统专业班级:学生姓名:学号:任课教师:学期:课程报告任务书题目标准化考试系统主要内容开发出一个标准化考试系统,所谓标准化考试系统即仅支持选择题,也是为方便自动批改的功能的实现。要求实现以下基本功能:(1)提供给教师添加试题的功能(试题信息用文件保存)--输入(2)试题的整体浏览功能(3)能够抽取试题组合成一套试卷(组卷的策略:可以是随机的,当然若教师添加的试题时有知识点、章节等信息,亦可以实现按照一定的组卷策略实现出题:如每个知识点抽取若干题目,最终组合一套试卷)(4)教师实现题目信息的管理,比如删除、修改等(5)查询功能(至少一种查询方式)、排序功能(至少一种排序方式)扩展功能:可以按照自己的程度进行扩展。比如(1)简单的权限处理(2)成绩报表打印功能(3)甚至根据自己情况,可以加上学生信息和考试成绩信息的管理,并扩充为广义的考试系统。即学生输入账号密码登陆,进行考试,交卷后显示成绩;(4)模糊查询(5)综合查询(6)统计、分析等功能总之,可以根据自己需求进行分析功能。特别说明:尽可能地运用自己已经学习过的数据结构的知识去展现。任务要求一、提交材料应包括:(1)系统源代码(2)课程报告二、整个设计过程具体要求(1)需求分析要求学生对案例系统进行分析,设计出需要完成的功能,完善各个模块的调用关系;(2)设计过程要求学生进一步明确各模块调用关系,进一步完善模块函数细节(函数名、参数、返回值等)(3)实现过程要求学生养成良好的编码习惯、完成各个模块并进行测试,最终完成系统整体测试;(4)总结阶段按照要求完成系统设计和实现报告,并进行总结、答辩。成绩评定报告撰写情况(30分)系统完成情况(30分)答辩情况(40分)总分内容20分规范程度5分程序测试5分基本功能20分扩展功能10分自述情况10分答辩情况30分成绩评定教师:1需求分析设计一个标准化考试系统,让学生和老师都能登录。老师可以输入试题、修改试题,学生可以答题、查分,实现不同功能。2概要设计intmain()Intjiao_deng(structjiaoshisu)/*教师登录验证*/voidjiao_xin(structjiaoshisu)/*将教师的用户信息存入文件*/voidjiao_xin(structjiaoshisu)/*将教师的用户信息存入文件*/voidjiao_xun(structtikutm)/*教师验证通过后,可对题目进行修改*/voidjiao_zeng(structtikutm)/*在原有文件基础上,进行新增题目*/Voidxiu_gai(structtikutm,intn)/*修改函数*/intxue_deng(structxueshengsb)/*学生登录验证*/voidxue_xin(structxueshengsb)/*将学生的用户信息存入文件*/标准化考试系统学生入口教师入口第一次进入登录第一次进入登录否注册是否注册3详细设计#includestdio.h#includestdlib.h#includestring.hintcount=0;structjiaoshi{//教师用户信息结构体charusername[20];//用户名charpassword[12];//用户密码}su;structxuesheng{//学生用户信息结构体charusername1[20];//用户名charpassword1[12];//用户密码}sb;structtiku{//题库结构体intnb;//题号chartigan[100];//题目内容charoption1[80];//选项charoption2[80];charoption3[80];charoption4[80];chardaan[10];//答案}tm;structchaxun{intnum;charname[20];intchengji;开始考试查询成绩退出系统查看试题插入试题修改试题}ch;voidjiao_xin(structjiaoshisu);voidxue_xin(structxueshengsu);voidjiao_cha(structtikutm);voidjiao_zeng(structtikutm);voidxue_kaoshi(structtikutm);voidxue_cha(structchaxunch,intchengji);voidxue_chax(structchaxunch);voidxue_hao(structchaxunch);voidxing_ming(structchaxunch);voidcheng_ji(structchaxunch);intxue_deng(structxueshengsb);intjiao_deng(structjiaoshisu);voidjiao_xun(structtikutm);voidcha_tihao(structtikutm);voidxiu_gai(structtikutm,intn);intmain(){intchoice,choice1,choice2;printf(\t\t\t欢迎进入标准化考试系统\n);printf(\t\t\t选择1:以学生身份登录\n);printf(\t\t\t选择2:以教师身份登录\n);printf(\t\t提示:如果你是第一次使用该系统,请先注册你的基本信息!\n);while(1){printf(\t\t\t请输入你的选择项:);scanf(%d,&choice);getchar();if(choice==1||choice==2)break;elseprintf(\t\t\t对不起,输入有误,请重新输入!\n);}if(choice==1)while(1){{printf(\n);printf(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n);printf(\t\t\t选择1:注册!\n);printf(\t\t\t选择2:开始考试!\n);printf(\t\t\t选择3:成绩查询!\n);printf(\t\t\t选择0:退出\n);printf(\n);printf(\t\t\t请输入你的选择:);scanf(%d,&choice1);switch(choice1){case1:xue_xin(sb);break;//调用文件,录入用户信息case2:xue_kaoshi(tm);break;//调用函数,开始考试case3:xue_chax(ch);break;//调用文件,查询信息case0:return;}}}if(choice==2)while(1){{printf(\n);printf(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n);printf(\t\t\t选择1:注册!\n);printf(\t\t\t选择2:查看题库中的题目\n);printf(\t\t\t选择3:向题库中增加题目\n);printf(\t\t\t选择4:对题库题目进行修改\n);printf(\t\t\t选择0:退出\n);printf(\t\t\t请输入你的选择:);scanf(%d,&choice2);switch(choice2){case1:jiao_xin(su);break;//调用文件,录入用户信case2:jiao_cha(tm);break;//调用文件开始录入题目case3:jiao_zeng(tm);break;//调用文件,增加题目case4:jiao_xun(tm);break;//调用文件,对题库进行修改case0:return;}}}}voidjiao_xin(structjiaoshisu)/*将教师的用户信息存入文件*/{FILE*fp;inti;if((fp=fopen(g:\\标准化考试.txt,a))==NULL){printf(文件打开有误!\n);exit(0);}for(i=1;i=1;i++){printf(请输入第%d个用户的姓名和密码:,i);scanf(%s%s,su.username,su.password);fprintf(fp,%s%s\n,su.username,su.password);}if(fclose(fp)){printf(无法关闭此文件!\n);exit(0);}}voidxue_xin(structxueshengsb)/*将学生的用户信息存入文件*/{FILE*fp;inti;if((fp=fopen(g:\\标准化考试.txt,a))==NULL){printf(文件打开有误!\n);exit(0);}for(i=1;i=1;i++){printf(请输入第%d个用户的姓名和密码:,i);scanf(%s%s,sb.username1,sb.password1);fprintf(fp,%s%s\n,sb.username1,sb.password1);}if(fclose(fp)){printf(无法关闭此文件!\n);exit(0);}}voidjiao_cha(structtikutm)/*查看题库中的题目*/{FILE*fp;while(1){if(jiao_deng(su)==0){printf(\t\t对不起,用户名或密码错误!请重新输入!\n);}else{printf(\t\t*登录成功,现在可以查看试题了!*\n);break;}}if((fp=fopen(g:\\标准化考试.txt,r))==NULL){printf(文件打开有误!\n);exit(0);}while(!feof(fp)){printf(\n);fscanf(fp,%d%s%s%s%s%s%s,&tm.nb,tm.tigan,tm.option1,tm.option2,tm.option3,tm.option4,tm.daan);printf(%d%s\n,tm.nb,tm.tigan);printf(%s\n,tm.option1);printf(%s\n,tm.option2);printf(%s\n,tm.option3);printf(%s\n,tm.option4);printf(\n);printf(\t\t\t答案:%s\n,tm.daan);}if(fclose(fp)){printf(无法关闭此文件!\n);exit(0);}}voidjiao_zeng(structtikutm)/*在原有文件基础上,进行新增题目*/{FILE*fp;inti;intn;while(1){if(jiao_deng(su)==0){printf(\t\t对不起,用户名或密码错误!请重新输入!\n);}else{printf(\t\t*登录成功,欢迎使用*\n);break;}}printf(请输入本次要添加的题目个数n:);scanf(%d,&n);if((fp=fopen(g:\\标准化考试.txt,a))==NULL){printf(文件打开有误!\n);exit(0);}for(i=1;i=n;i++){printf(请输入题号:);scanf(%d,&tm.nb);printf(请输入第%d个题目的题干:\n,tm.nb);scanf(%s,tm.tigan);printf(请输入答案:\n);printf(A:);scanf(%s,tm.option1);printf(B:);scanf(%s,tm.option2);printf(C:);scanf(%s,tm.option3);printf(D:);scanf(%s,tm.option4);printf(请输入第%d个题目的答案:,tm.nb);scan
本文标题:c语言标准化考试系统课程设计
链接地址:https://www.777doc.com/doc-3814279 .html