




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
综合性程序设计报告设计题目: 编程题上机考试系统 指导教师: _ 苑莹 _班 级: 61232班 学 号: _ 6123213 _设 计 者: 朱陶和 成 绩: 设计时间: 2013 年 06月 20 日一、题目描述 随着计算机的普及和应用,对计算机的学习和考试的环境也逐渐从书本和试卷过渡到计算机环境上,为此目的设计此系统用于完成题目的生成,维护及使用等目的.用于利用计算机实现部分上机考试功能,包括试题的输入,试题的删除,试题的显示,试题的抽出等功能。总体结构采取模块化方式进行程序设计,要求程序的功能设计,数据结构设计及整体结构设计合理。系统以菜单界面方式工作,运行界面友好。主要功能:ll 试题的输入ll 试题的删除ll 试题的抽出 l 试题的显示 l 整套试题的保存二、功能模块分解及说明 菜 单 抽出试题 输入试题 删除试题 模块分析:先定义主函数提示用户应该输入题号、所选择的题目,或删除的试题。再定义一个题库的结构体,存储所需要的试题,其中包含试题题号、题目。分别定义试题输入函数,试题删除函数,及试题抽取函数。通过提示将试题输入,然后通过题号进行试题的抽取和删除。最后总体输出。三、数据库设计及说明:1、对变量的说明:(1)变量说明:int i: 主函数中进行操作的代号。int th: 题库结构体中的试题题号。(2)函数定义说明:void dq(): 文件的读取void bc() 文件的存取void ct() 抽取试题的保存void sr(): 试题输入void sc(): 试题删除void cx(): 试题抽取(3)结构体说明struct tk 定义题库的结构体。int th; 定义试题题号char tm100; 定义试题的题目st20,sj20; 4、 界面说明界面进入后输入代号1:进行所有试题输入输入代号2:输入删除试题的题号,进行试题的删除。输入代号3:进行试题的抽取,通过统计试题题号,计算抽取试题的个数。输入代号4:退出系统。5、 源代码及注释#include#includestruct tkint th;char tm100;st20,sj20; /st题库的试题 sj抽取出的试题int j=0,k=0;void dq() /文件的读取FILE *p1;int i;if(p1=fopen(tk,rb)=NULL)printf(n);return;for(i=0;!feof(p1);i+)if(fread(&sti,sizeof(struct tk),1,p1)!=1)printf(n);elseif(sti.th!=0)j=j+1;fclose(p1);k=i-1;return;void bc() /文件的存取FILE *p1;int i;if(p1=fopen(tk,wb)=NULL)printf(文件打开错误!n);return;for(i=0;i20;i+)if(fwrite(&sti,sizeof(struct tk),1,p1)!=1)printf(文件保存错误!n);fclose(p1);return;void ct() /抽取试题的保存FILE *p2;int i;if(p2=fopen(xt,wb)=NULL)printf(文件打开错误!n);return;for(i=0;i20;i+)if(fwrite(&sji,sizeof(struct tk),1,p2)!=1)printf(文件保存错误!n);fclose(p2);return;void main()int i;void sr();void sc();void cx();dq();printf(*欢迎进入编程题上机考试系统*n);printf(1.试题输入 2.试题删除 3.试题抽选 4.退出系统n请输入您所需操作的代号: );scanf(%d,&i);while(i!=4)switch(i)case 1:sr();break;case 2:sc();break;case 3:cx();break;default:printf(输入错误n);printf(1.试题输入 2.试题删除 3.试题抽选 4.退出n请输入您所需操作的代号: );scanf(%d,&i);bc();printf(谢谢使用,再见!n);void sr() / 试题输入int m;printf(请输入试题:n);for(m=0;mj;m+)if(stm.th=0)break;getchar();gets(stm.tm);j=j+1;k=k+1;stm.th=j;printf(新输入试题为:n%sn,stm.tm);void sc() /试题删除int m,n;for(m=1;m=j;m+)for(n=0;nk;n+)if(stn.th=m)printf(%d.%sn,stn.th,stn.tm);printf(n请输入需要删除的题目的题号:n);scanf(%d,&n);for(m=0;mn)stm.th-=1;printf(试题已删除。n);j=j-1;void cx() /试题抽取int m=0,n,p,q20;printf(共有%d道题目,请输入您要抽选多少道题目:n,j);scanf(%d,&n);printf(请您从中抽选%d个题号:n,n); for(m=0;mn;m+) scanf(%d,&qm);for(m=0;mn;m+)for(p=0;pk;p+)if(stp.th=qm)sjm.th=m+1;strcpy(sjm.tm,stp.tm);printf(%d.%snn,sjm.th,sjm.tm);ct();6、 设计测试说明进入考试系统的欢迎界面后,通过提示,输入代号。输入代号1:输入代号2:其中第1,2,3,4题为上次输入的试题。输入代号3:输入代号4:7、 设计体会经过这几周的课程设计,我学到了很多东西,巩固和加深了对变量、函数以及数据结构等内容的理解,在以前上课的过程中,只是在抽象的了解c语言的各种算法和各种运用,自己对他的概念还不是很具体,这让我在学习的过程中有一定的难度。经过这次设计,让我对c语言有了更深的认识;提高综合运用本课程所学知识的能力;增强了我独立思考、深入研究、分析问题、解决问题的能力;同时通过课程设计,也增强了我严肃认真的学习态度。 由于学习c语言的时间相对来说短了一些,并且课程结束的比较仓促,所以,在课程设计的过程中,一开始感觉一头雾水,遇到了很多问题,还不知道如何下手,许多课本的知识不能够灵活的掌握,所以进行了反复的实验,把自己所遇到的问题和疑惑向同学请教,或者上网查询资料,才将程序一点一点的补充完整,经过跟一些同学的仔细探讨,最后才得以完工。 通过此次课程设计,使我对C语言有了更进一步的认识和了解,要想学好它,不仅要有扎实的理论基础,还要进行大量的实验,要通过不断的上机操作才能更好地学习它,更让我发现自己的好多不足之处,对C语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对C语言中经常出现的错误也不了解。通过实践的学习,我认识到学好计算机要重视实践操作,不仅仅是学习C语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。 虽然此次课程设计提高了我的编程的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 规范经营承诺书参考样本6篇
- 单招文综考试试卷及答案
- 2025年乡村旅游观光车租赁合同书
- 2025年广西玉林市继续教育公需课考试题(含答案)
- 用电安全考试题目及答案
- 播音模拟考试过程及答案
- 市场推广和营销活动合作合同
- 编制考试题库卷子及答案
- 调饮师操作技能考试题及答案
- 容县学校笔试题目及答案
- 行政管理毕业论文-我国地方政府行政机构改革问题研究
- 静配中心医用耗材管理制度
- 湖南信息职业技术学院2025年单独招生考试职业技能测试D组考试大纲(应届普通高中毕业考生、退役军人)
- 2025年时政真题面试题及答案
- AI基础知识培训
- 2024年秋季新苏教版一年级上册数学全册教案
- GB/T 18936-2025禽流感诊断技术
- 小学三年级数学万以内加减法能力练习习题大全附答案
- 《危化品储罐设计与制备技术规范》
- 现代设施蔬菜产业高质量发展现状分析
- 2025年中国石油吉林石化公司招聘笔试参考题库含答案解析
评论
0/150
提交评论