ImageVerifierCode 换一换
格式:PDF , 页数:17 ,大小:435.65KB ,
资源ID:4315179      下载积分:8 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4315179.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(C语言单项选择题标准化考试系统.pdf)为本站上传会员【丰****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

C语言单项选择题标准化考试系统.pdf

1、青岛理工大学C 语言程序设计语言程序设计题目 C 语言单项选择题标准化考试系统 指导教师:姓名:学号:班级:专业:地点:时间:2013-7-1 至 2013-7-5 一、内容一、内容【设计内容】试设计一单项选择题标准化考试系统,实现试题的录入、抽取、用户的答题、系统的自动判卷等功能。【设计要求】1、用文件保存试题库。(每个试题包括题干、4 个备选答案、标准答案)2、试题录入:可随时增加试题到试题库中3、试题抽取:每次从试题库中可以随机抽出 N 道题(N 由键盘输入)4、答题:用户可实现输入自己的答案5、自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩。二、上机环境二、上机环境操作

2、系统:windows.XP开发工具:VC6.0 三、函数调用关系图三、函数调用关系图Main()Menu()ReadfromFile()Answer()createLinkedList()Input()InsertNode()WritetoFile()Output()TorF()图 1 函数调用关系图四、各函数功能说明四、各函数功能说明1main()主函数2Menu()菜单函数3void Answer(int n,TEST*sp)答题函数4void Output(TEST*,int i)输出第 n 道题题目5int TorF(TEST*sp,char m)判卷函数6void Input(TES

3、T*)题目录入函数7void ReadfromFile(TEST*sp)从文件中读取题目信息8TEST*createLinkedList(TEST*sp)创建链表9TEST*InsertNode(TEST*head,TEST*s)插入题目函数10void WritetoFile(TEST*head)保存到文件五、流程图五、流程图开始Menu()输入选择itemItem=1?Item=2?Item=3?Item=4?答题录入题目信息保存文件创建链表将题目信息插入链表中结束假真真假真假真图 2 系统总流程图 开始输入答题数ni=0?num0=rand()%(M-1)+0i=0?numj=numj-

4、1?真Output()假输入答案Score+=TorF()i+j-真假图 3 Answer()函数流程图输出总成绩结束开始输出题号输出选项A输出选项B输出选项C输出选项D结束图 4 Ooutput()函数流程图开始标准答案与输入答案是否相等?输出“Wrong!”输出“Right!”该题分数为1分该题分数为0分结束输入答案m真假图 5 TorF()函数流程图始 始输入题目输入选项A输入选项B输入选项C输入选项D输入答案结束图 6 Input()函数流程图开始结束图7 ReadfromFile()函数流程图打开文件读取文件里的信息关闭文件开始i=0,p,qiM?将第一条信息存入p中初始化p指针的下

5、一个节点i=0?初始化q指针的下一个节点head=pq=pi+返回头指针结束假真假真图 8 createLinkedList()函数流程图开始p,qi=0输入n(q!=NULL&n!=i+1)?p,q指针都指向下一节点i+q=NULL?输出“Not found!”将保存信息的s,插入p,q之间;返回头指针结束图 9 InsertNode()函数流程图真假真假六、程序运行效果图六、程序运行效果图1初始界面2随机抽题3答题并判卷4插入试题5保存到文件七、总结七、总结通过这短短 5 天的时间,学到了许多东西,尤其是对链表及文件的使用。在这之前对于链表和文件的使用还不是特别明白,现在已经可以较为熟练的

6、应用它们。对结构体数组的使用也更加清晰了。在做单项选择题标准化考试系统时,碰到的第一个问题就是如何从文件里读取数据,为了解决这个问题,我细心的研究了老师给的课件,以及之前写过的学生成绩管理系统V6.0,最终解决了这个问题。碰到的第二个问题是,如何让编译器随机抽取的题目不重复,通过认真思考算法,最终得出了一个较为合理的算法。第三个问题是,链表的使用,在做“插入试题”这一块的函数时,经常出现编译错误的提示,仔细阅读编译器提供的错误信息,并对程序进行修改,最后也成功解决了这一个问题。这份程序在文件的读取和保存以及链表的使用方面参考了老师给的课件,并进行修改。但是,我的程序在图形处理上基本是没有,所以

7、界面不是特别美观。通过网络资源,学会了清屏,system(“cls”);通过这次的课程设计,让我进一步的了解到 C 语言在我们日常生活中的重要性,体会到编一个对人们现实生活有用处的程序的快乐,更进一步的激发了我学习这门语言的兴趣.经过这次的训练,我相信自己以后会用更多的时间来把这门语言学好,掌握好这门必修的基础语言。最后,在此对我的 C 语言老师陈老师,表示感谢。感谢她平时认真地帮我调试程序,并耐心地解答疑点。在她的辅导下我从对 C 语言没有丝毫概念的程度到现在已经可以成功地写出一些比较像样的程序,是她开启了我的编程人生。八、参考文献八、参考文献1 邱建华C 语言程序设计教程东软电子出版社,2

8、0092 谭浩强C 程序设计(第三版)清华大学出版社,20053 邱建华C 语言程序设计随堂实训及上机指导东北大学出版社,2007九、程序清单九、程序清单/*单项选择题标准化考试系统设计*/#include#include#include#include#include#define M 30typedef struct testchar problem300;char option1100;char option2100;char option3100;char option4100;char key;struct test*next;TEST;Menu();/菜单函数void Answer

9、int n,TEST*sp);/答题函数void Output(TEST*,int i);/输出第 n 道题题目int TorF(TEST*sp,char m);/判卷函数void Input(TEST*);/录入题目void ReadfromFile(TEST*sp);/从文件中读取题目信息TEST*createLinkedList(TEST*sp);/创建链表TEST*InsertNode(TEST*head,TEST*s);/插入函数void WritetoFile(TEST*head);/保存到文件int main(void)TEST testM;TEST s;TEST*head;i

10、nt item,n;while(1)Menu();scanf(%d,&item);ReadfromFile(&test);switch(item)case 1:printf(请输入答题数:);scanf(%d,&n);Answer(n,&test);break;case 2:system(cls);Input(&s);head=createLinkedList(&test);head=InsertNode(head,&s);break;case 3:system(cls);WritetoFile(head);break;case 4:exit(0);break;default:printf(输

11、入有误!请重新输入。n);/菜单函数Menu()printf(nt*单项选择题标准化考试系统*n);printf(t*1.答题并判卷 *n);printf(t*2.插入试题 *n);printf(t*3.保存到文件 *n);printf(t*4.退出程序 *n);printf(t*n);printf(tt 请输入选项:);/答题函数void Answer(int n,TEST*sp)int i,j,score=0,numM;char m;srand(time(NULL);num0=rand()%(M-1)+0;for(i=0;i=0;j-)/保证不出现重复的题目if(numj=numj-1)/

12、若抽中的题重复则重新抽题goto loop;Output(&spnumi,i+1);/输出抽中的题目printf(请输入答案:);scanf(%c,&m);score+=TorF(&spnumi,m);/判段用户输入的答案与标准答案是否一致printf(n 你的总成绩为:%dn,score);/输出总成绩void Output(TEST*sp,int i)/输出第 n 道题题目函数printf(%d),i);printf(%sn,sp-problem);printf(A%s n,sp-option1);printf(B%s n,sp-option2);printf(C%s n,sp-optio

13、n3);printf(D%s n,sp-option4);int TorF(TEST*sp,char m)/判卷函数if(sp-key=m)/若用户输入的答案与标准答案一致,返回 1printf(Right!n);return 1;elseprintf(Wrong!n);/若用户输入的答案与标准答案不一致,返回 0return 0;void Input(TEST*sp)/试题录入函数printf(请输入要插入的试题信息:n);printf(请输入题干:n);scanf(%s,sp-problem);printf(请输入选项 A:);scanf(%s,sp-option1);printf(请输入

14、选项 B:);scanf(%s,sp-option2);printf(请输入选项 C:);scanf(%s,sp-option3);printf(请输入选项 D:);scanf(%s,sp-option4);printf(请输入答案:);scanf(%c,&sp-key);void ReadfromFile(TEST*sp)/文件读取函数 FILE*fp;int i;if(fp=fopen(test.txt,r)=NULL)/文件打开失败 printf(Failure to open test.txt!n);exit(0);for(i=0;!feof(fp);i+)/文件打开成功 fscanf

15、fp,%s,spi.problem);/将读出的数据保存在 sp 变量里 fscanf(fp,%s,spi.option1);fscanf(fp,%s,spi.option2);fscanf(fp,%s,spi.option3);fscanf(fp,%s,spi.option4);fscanf(fp,%c,&spi.key);fclose(fp);/关闭文件TEST*createLinkedList(TEST*sp)/创建链表int i;TEST*head=NULL,*q=NULL,*p=NULL;/定义三个变量for(i=0;inext=NULL;if(i=0)head=p;/链表的表头e

16、lseq-next=p;q=p;return head;TEST*InsertNode(TEST*head,TEST*s)/插入函数 int n,i;TEST*p,*q;p=head;q=p-next;printf(请输入要在哪个节点后插入题目信息:);scanf(%d,&n);for(i=0;q!=NULL&n!=i+1;i+)/遍历 p=p-next;q=q-next;if(q=NULL)printf(Not found!n);Else /插入数据 p-next=s;s-next=q;return head;void WritetoFile(TEST*head)/保存到文件 FILE*fp;TEST*q;if(fp=fopen(student.txt,w)=NULL)/文件打开失败 printf(Failure to open file!n);exit(0);for(q=head;q!=NULL;q=q-next)/用链表的方式将数据保存到文件 fprintf(fp,%sn,q-problem);fprintf(fp,%sn,q-option1);fprintf(fp,%sn,q-option2);fprintf(fp,%sn,q-option3);fprintf(fp,%sn,q-option4);fprintf(fp,%cn,q-key);fclose(fp);/关闭文件

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服