《2022年c语言单项选择题标准化考试系统设计 .pdf》由会员分享,可在线阅读,更多相关《2022年c语言单项选择题标准化考试系统设计 .pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、课程设计任务书学院、 系 :专业:学 生 姓 名:学 号:设 计 题 目:单项选择题标准化考试系统设计起迄日期 : 指导教师 :名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 - - - - - - - - - 1. 设计目的设计单项选择题标准化考试系统。2 任务概述(1)用文件保存试题库(每个试题包括题干、4 个备选答案、标准答案). (2)试题录入:可随时在试题库中增加试题. (3)试题抽取:每次从试题库中可以随机抽出N道题( N由键盘输入) . (4)答题
2、:用户可以输入自己的答案. (5)自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩.3 模块划分单项选择体标准化考试系统4 主要函数说明及 N-S图添加试题到试题库显示试题库答题判卷退出系统名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 11 页 - - - - - - - - - (1)菜单 Menu():用来给用户提供选项;(2)Read() 函数:用于打开文件;FILE *fp ,int i=0 fp=fopen(单项选择题标准化考试系统设计.txt,
3、r+) Y if(fp=NULL) Nprintf(文件打开失败 ); return 0;for(i=0;!feof(fp);i+) fprintf(fp,%s %s %s %s %s %cn,quei.topic,quei.a1,quei .a2,quei.a3,quei.a4,quei.real); fclose(fp) return i (3)Save() 函数:用于添加试题后保存试题;输出菜单界面输入选项输入 1 Y 输入 2 添加 Add()函数Y N N 输入 3 添加 Put()函数Y N 添加Ask()函数输入 4 Y N break break break exit(0)名师
4、资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 11 页 - - - - - - - - - (4)Put() 函数:用于显示试题;(5)Add()函数:用于添加试题(5)Adi . FILE *fp int i=0 if(fp=fopen( “ 单项选择题标准化考试系统设计.txt”)=Null)Y N printf( “ 文件打开失败!”)fprintf( fp, ”%s %s %s %s %s%cn,quei.topic,quei.a1,quei.a2,quei.a3,
5、quei.a4,quei.real”)i=0;in;i+ int i,n n=Read(que) 打印表头fprintf( fp, ” %s %s %s %s %sn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4”)i=0;in;i+ getch() FILE *fp int i,a,n sruct question que n=Read(que) scanf(”%s %s %s %s %s %cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real”) fprintf( fp, ” %s %s %s
6、 %s %s%cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real ”)i=0;in; i+ fclose(fp) printf( “ 请输入增加试题的数目”)scanf(“ %d“, &a );名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - (5)Ask()函数:用于答题并判卷。图 4-6 修改函数( cor )5. 程序运行数据及其结果sruct question
7、queN int m,score=0;char r; fp=fopen( 单项选择题标准化考试系统设计.txt,r+); if(strcmp(number,stui.num)=0);break; for(i=0 ;in;i+) printf(%sn%sn%sn%sn%sn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4); printf(n 请输入您的答案:); scanf(%c,&r); getchar(); printf( “ 请输入要答得题目数:”)Scanf(” %d” ,&m );Y if(quei.real=r) N printf(n 答案正确
8、 !n) ;score+; printf(n 答案错误 !n); score=score; printf(n 你的总成绩为:%dn,score); getchar(); getchar(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 11 页 - - - - - - - - - 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 11 页 - -
9、- - - - - - - 6 课程设计心得通过这次实训,感觉到自己还是差很多的,自己学到的还是远远不够的,练习的太少了,好多知识点都记得不牢,还需要大量的练习。又因为一个学期没看了,好多东西都忘了,所以好多知识点都是在看得时候重新拾起来的。这次实训给我的教训就是平时要多多练习一些题型,时不时的复习以前的知识点,让自己更加熟练的掌握更多编程技巧,更多的思路。还有一点就是没有思路的时候千万不要放弃,要学会思考,学会独立有耐心的完成一些事情,等到做完成功之后,便会收获很多的信心和欣慰。总之就是要有耐心,坚持多做练习,不会的多请教别人,一切困难都会迎刃而解。附录:#include #include
10、/串操作及内存操作函数#include /调用系统函数#include/动态内存#include #define N 100 void Menu1(); int Read(); void save(); void Put(); void Add(); void Ask(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 11 页 - - - - - - - - - struct question char topic100; char a1100; char a2100
11、; char a3100; char a4100; char real; ; void Menu1()/主菜单 system(cls); puts(tt-欢迎进入单项选择题标准化考试系统设计-); puts(tt 1-添加试题到试题库中 ); puts(tt 2-显示试题库 ); puts(tt 3-答题并判卷 ); puts(tt 4-退出); puts(tt 请选择 ); int choice1,choice2; while(12) scanf(%d,&choice1); switch(choice1) /调用子函数。case 1:system(cls);Add();Menu1();bre
12、ak; case 2:system(cls);Put();Menu1();break; case 3:system(cls);Ask();Menu1();break; case 4:puts(欢迎下次使用 );exit(0); int Read(struct question queN)/打开文件 FILE *fp; int i=0; fp=fopen(单项选择题标准化考试系统设计.txt,r+); /以读的形式打开文件 information.txt if(fp=NULL) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师
13、精心整理 - - - - - - - 第 8 页,共 11 页 - - - - - - - - - printf(文件打开失败 ); return 0; for(i=0;!feof(fp);i+) fscanf(fp,%s %s %s %s %s %cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real); fclose(fp); return i; void save(struct question queN,int n) / 考试系统改变后更新并保存文件 FILE *fp; int i=0; if(fp=fopen(单项选择题标准化考
14、试系统设计.txt,w+)=NULL) printf(文件打开失败! n); return ; else for(i=0;in;i+) fprintf(fp,%s %s %s %s %s %cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real); fclose(fp); void Put()/显示试题信息 struct question queN; int i,n; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共
15、11 页 - - - - - - - - - n=Read(que); printf(*所有的试题信息如下*nn); for(i=0;in;i+) printf(%sn%sn%sn%sn%snn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4); getch(); void Add()/添加试题 FILE *fp; int a,i; struct question queN; fp=fopen(单项选择题标准化考试系统设计.txt,a+); /以添加的形式打开文件 if(fp=NULL) printf(文件打开失败 ); return; printf(请输
16、入增加试题的数目 n); scanf(%d,&a); for(i=1;i=a;i+) printf(n请输入第 %d个试题的题目,第一个选项,第二个选项,第三个选项,第四个选项,正确答案,并按回车键确认:n,i); scanf(%sn%sn%sn%sn%sn%c,&quei.topic,&quei.a1,&quei.a2,&quei.a3,&quei.a4,&quei.real); fprintf(fp,n%sn%sn%sn%sn%sn%cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real); printf(添加信息成功! ); 名师资
17、料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 11 页 - - - - - - - - - fclose(fp); getchar(); getchar(); void Ask()/答题并判卷 FILE *fp; struct question queN; int m,score=0; char r; fp=fopen(单项选择题标准化考试系统设计.txt,r+); printf(请输入要答得题目数: ); scanf(%d,&m); for(int i=1;i=m;i+)
18、 fread(&quei,sizeof(struct question)-1,1,fp); printf(%sn%sn%sn%sn%sn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4); printf(n请输入您的答案 :); scanf(%c,&r); getchar(); if(quei.real=r) printf(n答案正确 !n); score+; else printf(n答案错误 !n); score=score; printf(n你的总成绩为 :%dn,score); getchar(); getchar(); int main() Menu1(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 11 页 - - - - - - - - -