c语言单项选择题标准化考试系统设计

合集下载

选择题考试系统C++课程设计

选择题考试系统C++课程设计

选择题考试系统目录第一章课程设计的目的和要求 (1)1.1 课程设计的目的 (1)1.2 课程设计的基本要求: (1)第二章课程设计任务内容 (2)2.1 课程设计任务内容 (2)第三章课程设计详细设计说明 (3)3.1 程序模块总图 (3)3.2 教师登录模块 (3)3.3 试题管理模块 (5)3.4 扫描题库模块 (7)3.5 程序辅助模块 (8)3.6 约束条件 (8)3.7 接口函数描述 (8)3.8 程序测试 (9)3.9 调试结果及截图 (9)第四章软件使用说明 (19)4.1 软件开发起因以及使用说明 (19)第五章课程设计心得与体会 (20)附录1 参考文献 (21)附录2 程序源代码 (22)第一章课程设计的目的和要求1.1课程设计的目的VC程序设计是计算机科学与技术专业的基础课程,其实践性、应用性很强。

实践教学环节是必不可少的一个重要环节。

课程设计的目的是加深对理论教学内容的理解和掌握,使学生较系统的掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。

要求学生在设计指导教师的帮助下自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。

要求学生能够全面、深入理解和熟悉掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好的理解和掌握,能够进行简单分析和判断;能编写出良好风格的程序;掌握VC程序设计的基本技能和面向对象的概念和方法。

培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。

1.2 课程设计的基本要求:(1)掌握VC编程、面向对象的基础知识。

(2)掌握API、MFC编程的消息响应机制和应用程序框架。

(3)较熟悉地编写基于API、MFC的VC应用程序。

(4)了解VC的常用标准类库、编程技巧及高级编程。

(5)了解学生管理系统设计的可行性分析、设计、模块划分、功能实现、软件调试、软件评估。

单项选择题标准化考试系统设计

单项选择题标准化考试系统设计

单项选择题标准化考试系统设计
随着教育的不断发展,单项选择题作为一种常见的考试形式,被广泛运用于各类考试中。

然而,由于传统的单项选择题存在着一些缺陷,如容易出现歧义、难以全面考察学生能力等问题,因此,设计一个标准化的单项选择题考试系统显得尤为重要。

首先,我们需要设计一套科学合理的题库。

题库的题目应该涵盖各个知识点和技能要求,既要考察学生的基础知识,又要考察学生的分析、推理和解决问题的能力。

同时,题目的难度应该有所区分,既要有简单的题目让学生得分,也要有一定难度的题目来区分学生的能力水平。

其次,考试系统的评分标准也至关重要。

评分标准应该清晰明确,能够客观公正地评价学生的答题情况。

同时,评分标准也要与题目设计相匹配,避免出现过于主观的评分情况。

这样才能保证考试结果的公平性和真实性。

另外,考试系统的技术支持也是必不可少的。

现代化的技术手段可以大大提高考试的效率和准确性。

例如,采用自动阅卷系统可以大大减轻教师的工作量,同时也可以减少人为因素对考试结果的影响。

此外,考试系统的安全性也是需要重点考虑的问题。

防范作弊行为,保护考试的公平性和权威性,是考试系统设计的一个重要方面。

因此,需要建立起一套完善的监控机制和防作弊措施,确保考试过程的公正和公平。

总的来说,设计一个标准化的单项选择题考试系统需要考虑题库设计、评分标准、技术支持和安全性等多个方面。

只有在这些方面都得到合理的设计和保障,才能够真正实现考试的公平、公正和科学。

希望未来能有更多的教育机构和考试机构能够重视这些问题,不断完善考试系统,为学生提供更好的学习和发展环境。

c语言标准化考试系统课程设计解读

c语言标准化考试系统课程设计解读

课程报告课程名称:标准化考试系统专业班级:学生姓名:学号:任课教师:学期:课程报告任务书成绩评定教师:1 需求分析设计一个标准化考试系统,让学生和老师都能登录。

老师可以输入试题、修改试题,学生可以答题、查分,实现不同功能。

2 概要设计int main()Int jiao_deng(struct jiaoshi su) /*教师登录验证*/void jiao_xin(struct jiaoshi su) /*将教师的用户信息存入文件*/ void jiao_xin(struct jiaoshi su) /*将教师的用户信息存入文件*/ void jiao_xun(struct tiku tm) /*教师验证通过后,可对题目进行修改*/ void jiao_zeng(struct tiku tm) /*在原有文件基础上,进行新增题目*/ Voidxiu_gai(struct tiku tm,int n) /*修改函数*/int xue_deng(struct xuesheng sb) /*学生登录验证*/void xue_xin(struct xuesheng sb) /*将学生的用户信息存入文件*/3 详细设计#include<stdio.h> #include<stdlib.h> #include<string.h> int count=0;struct jiaoshi{ //教师用户信息结构体 char username[20]; //用户名 char password[12]; //用户密码 }su;struct xuesheng{ //学生用户信息结构体 char username1[20]; //用户名 char password1[12]; //用户密码}sb;struct tiku{ //题库结构体 int nb; //题号 char tigan[100]; //题目内容 char option1[80]; //选项 char option2[80]; char option3[80]; char option4[80];char daan[10]; //答案 }tm;struct chaxun{ int num;char name[20];int chengji;}ch;void jiao_xin(struct jiaoshi su);void xue_xin(struct xuesheng su);void jiao_cha(struct tiku tm);void jiao_zeng(struct tiku tm);void xue_kaoshi(struct tiku tm);void xue_cha(struct chaxun ch,int chengji);void xue_chax(struct chaxun ch);void xue_hao(struct chaxun ch);void xing_ming(struct chaxun ch);void cheng_ji(struct chaxun ch);int xue_deng(struct xuesheng sb);int jiao_deng(struct jiaoshi su);void jiao_xun(struct tiku tm);void cha_tihao(struct tiku tm);void xiu_gai(struct tiku tm,int n);int main(){int choice,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){case 1: xue_xin(sb); break; //调用文件,录入用户信息case 2: xue_kaoshi(tm); break; //调用函数,开始考试case 3: xue_chax(ch); break; //调用文件,查询信息case 0: 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){case 1:jiao_xin(su); break; //调用文件,录入用户信case 2:jiao_cha(tm); break; //调用文件开始录入题目case 3:jiao_zeng(tm); break; //调用文件,增加题目case 4:jiao_xun(tm); break; //调用文件,对题库进行修改case 0: return;}}}}void jiao_xin(struct jiaoshi su) /*将教师的用户信息存入文件*/{FILE *fp;int i;if((fp=fopen("g:\\标准化考试.txt","a"))==NULL){printf("文件打开有误!\n");exit(0);}for(i=1;i<=1;i++){printf("请输入第%d个用户的姓名和密码:",i);scanf("%s%s",ername,su.password);fprintf(fp,"%s %s\n",ername,su.password);}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}void xue_xin(struct xuesheng sb) /*将学生的用户信息存入文件*/{FILE *fp;int i;if((fp=fopen("g:\\标准化考试.txt","a"))==NULL){printf("文件打开有误!\n");exit(0);}for(i=1;i<=1;i++){printf("请输入第%d个用户的姓名和密码:",i);scanf("%s%s",ername1,sb.password1);fprintf(fp,"%s %s\n",ername1,sb.password1);}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}void jiao_cha(struct tiku tm) /*查看题库中的题目*/{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.opti on2,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);}}void jiao_zeng(struct tiku tm) /*在原有文件基础上,进行新增题目*/{FILE *fp;int i;int n;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);scanf("%s",tm.daan );fprintf(fp,"%d %s %s %s %s %s %s\n",tm.nb,tm.tigan,tm.option1,tm.op tion2,tm.option3,tm.option4,tm.daan);}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}void xue_kaoshi(struct tiku tm) /*读出文件,学生开始答题,并将成绩存入文件*/{FILE *fp;int i;int j,k;char s[10];int chengji=0;while(1){if(xue_deng(sb)==0){printf("\t\t对不起,用户名或密码错误!请重新输入!\n");}else{printf("\t恭喜你登陆成功,现在可以开始考试了!\n");break;}}if((fp=fopen("g:\\标准化考试.txt","r"))==NULL){printf("文件打开有误!\n");exit(0);}printf("\t\t##共有三种难度系数1-2-3##");printf("请选择难度系数:");scanf("%d",&j);if(j==1){k=10;}if(j==2){k=20;}if(j==3){k=30;}for(i=1;i<=k;i=i+j){printf("\n");fscanf(fp,"%d %s %s %s %s %s %s",&tm.nb,tm.tigan,tm.option1,tm.opti on2,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("%s\n",tm.daan);printf("请输入你的选项:");scanf("%s",s);if(strcmp(tm.daan,s)==0)chengji=chengji+10;}printf("你的成绩是:%d\n",chengji);printf("\t\t为方便你以后查询成绩,请再次输入你的信息:\n");xue_cha(ch,chengji);if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}void xue_cha(struct chaxun ch,int chengji) /*考试结束,将成绩录入文件*/{FILE *fp;int i;if((fp=fopen("g:\\标准化考试.txt","a"))==NULL){printf("文件打开有误!\n");exit(0);}/*printf("请输入你的学号和姓名:");scanf("%d %s ",&ch.num,);printf("请输入你本次考试的成绩:");*/printf("请输入你本次考试的成绩:");while(1){scanf("%d",&i);if(i==chengji)printf("请输入你的学号和姓名和成绩:");scanf("%d %s ",&ch.num,,&ch.chengji );fprintf(fp,"%d %s %d\n",ch.num,,chengji);break;}else{printf("\t\t对不起,你输入的成绩与本次考试成绩有误,请重新输入!");}}//fprintf(fp,"%d %s\n",ch.num,);if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}void xue_chax(struct chaxun ch) /*成绩查询函数1.按学号2.按姓名3.按成绩*/{int choice;printf("\t\t\t选择1,按学号查询成绩\n");printf("\t\t\t选择2,按姓名查询成绩\n");printf("\t\t\t选择3,按成绩信息\n");printf("请输入你的选择:");scanf("%d",&choice);switch(choice){case 1:xue_hao(ch); break;case 2:xing_ming(ch); break;case 3:cheng_ji(ch); break;}}void xue_hao(struct chaxun ch) /*按学号查询成绩*/{FILE *fp;//int i;int num;int flag=0;if((fp=fopen("g:\\标准化考试.txt","r"))==NULL){printf("文件打开有误!\n");exit(0);}printf("请输入你的学号:");scanf("%d",&num);while(!feof(fp)){fscanf(fp,"%d%s%d",&ch.num,,&ch.chengji);if(num==ch.num){printf("学号:%d\t姓名:%s\t成绩:%d\n",ch.num,,ch.chengji);flag=1;break;}}if(flag==0){printf("对不起,没有找到,请检查你的输入是否正确!");}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}void xing_ming(struct chaxun ch) /*按姓名查询成绩*/{FILE *fp;char name[20];int flag=0;if((fp=fopen("g:\\标准化考试.txt","r"))==NULL){printf("文件打开有误!\n");exit(0);}printf("请输入你的姓名:");scanf("%s",name);while(!feof(fp))fscanf(fp,"%d%s%d",&ch.num,,&ch.chengji);if(strcmp(name,)==0){printf("学号:%d\t姓名:%s\t成绩:%d\n",ch.num,,ch.chengji);flag=1;break;}}if(flag==0){printf("对不起,没有找到,请检查你的输入是否正确!");}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}void cheng_ji(struct chaxun ch) /*按成绩查询信息*/{FILE *fp;int chengji;int flag=0;if((fp=fopen("g:\\标准化考试.txt","r"))==NULL){printf("文件打开有误!\n");exit(0);}printf("请输入你的成绩:");scanf("%d",&chengji);while(!feof(fp)){fscanf(fp,"%d%s%d",&ch.num,,&ch.chengji);if(chengji==ch.chengji){printf("学号:%d\t姓名:%s\t成绩:%d\n",ch.num,,ch.chengji);flag=1;}if(flag==0){printf("对不起,没有找到,请检查你的输入是否正确!");}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}int xue_deng(struct xuesheng sb) /*学生登录验证*/{FILE *fp;int flag=0;char name[20];char password[12];printf("\n");printf("\t\t>>>>>请先登录该系统<<<<<\n\n");printf("\t\t>>>>>请输入你的登录名和密码:");scanf("%s%s",name,password);if((fp=fopen("g:\\标准化考试.txt","r"))==NULL){printf("文件打开有误!\n");exit(0);}while(!feof(fp)){fscanf(fp,"%s%s",ername1,sb.password1);if(strcmp(name,ername1)==0&&strcmp(password,sb.password1)==0) {flag=1;break;}}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}return flag;}int jiao_deng(struct jiaoshi su) /*教师登录验证*/{FILE *fp;int flag=0;char name[20];char password[12];printf("\n");printf("\t\t>>>>>请先登录该系统<<<<<\n\n");printf("\t\t>>>>>请输入你的登录名和密码:");scanf("%s%s",name,password);if((fp=fopen("g:\\标准化考试.txt","r"))==NULL){printf("文件打开有误!\n");exit(0);}while(!feof(fp)){fscanf(fp,"%s%s",ername,su.password);if(strcmp(name,ername)==0&&strcmp(password,su.password)==0) {flag=1;break;}}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}return flag;}void jiao_xun(struct tiku tm) /*教师验证通过后,可对题目进行修改*/{int choice;while(1){if(jiao_deng(su)==0){printf("\t\t对不起,用户名或密码错误!请重新输入!\n");}else{printf("\t\t*登录成功,欢迎使用*\n");break;}}while(1){printf("\n");printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~\n");printf("\t\t请选择按何种方式进行修改!\n");printf("\t\t选择1:按题号查找,并修改!\n");printf("\t\t选择2:输入部分题目内容查找并进行修改!\n");printf("\n");printf("\t\t\t请输入你的选择:");scanf("%d",&choice);switch(choice){case 1: cha_tihao(tm); break; //按题号查找,并修改case 2: return; //输入部分题目内容查找并进行修改!}}}void cha_tihao(struct tiku tm) /*先查询出题目,然后调用函数进行修改*/{int n;FILE *fp;int flag=0;printf("请输入你要修改的题目的题号:");scanf("%d",&n);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);if(n==tm.nb){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("\t\t\t答案:%s\n",tm.daan);printf("\n");printf("%d",ftell(fp));flag=1;break;}}if(flag==0){printf("对不起,没有找到,请检查你的输入是否正确!");}if(flag==1)xiu_gai(tm,n);if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}void xiu_gai(struct tiku tm,int n) /*修改函数*/{FILE *fp;int i;if((fp=fopen("g:\\标准化考试.txt","a"))==NULL){printf("文件打开有误!\n");exit(0);}for(i=1;i<=1;i++){printf("请输入改后题目的题号:");scanf("%d",&tm.nb );printf("请输入改后题目的题干:\n");scanf("%s",tm.tigan );printf("A:\n");scanf("%s",tm.option1 );printf("B:\n");scanf("%s",tm.option2 );printf("C:\n");scanf("%s",tm.option3 );printf("D:\n");scanf("%s",tm.option4 );printf("请输入改后第题的答案:");scanf("%s",tm.daan );fprintf(fp,"%d %s %s %s %s %s %s\n",tm.nb,tm.tigan,tm.option1,tm.op tion2,tm.option3,tm.option4,tm.daan);}if(fclose(fp)){printf("无法关闭此文件!\n");exit(0);}}4 调试分析登录时,解决账号密码错误问题,修改试题后存入的问题。

c程序语言设计考试题及答案

c程序语言设计考试题及答案

c程序语言设计考试题及答案一、单项选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是:A. varB. letC. intD. define答案:C2. 下列哪个选项不是C语言中的控制结构?A. 顺序结构B. 选择结构C. 循环结构D. 递归结构答案:D3. C语言中,用于表示逻辑“与”操作的运算符是:A. &&B. ||C. !D. =答案:A4. 在C语言中,哪个函数用于计算并返回数组中元素的个数?A. sizeofB. countC. lengthD. size5. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D6. C语言中,用于声明指针变量的关键字是:A. pointerB. ptrC. *D. ref答案:C7. 在C语言中,哪个运算符用于取地址?A. &B. *C. %D. ^答案:A8. 下列哪个选项是C语言中合法的标识符?A. 2variableB. variable2C. variable-nameD. $variable答案:B9. C语言中,用于定义函数的关键字是:B. functionC. defD. void答案:B10. 在C语言中,哪个函数用于输出字符串?A. printfB. coutC. putsD. print答案:C二、填空题(每题2分,共20分)1. C语言标准库函数中,用于计算两个数的差的函数是________。

答案:abs2. 在C语言中,________运算符用于比较两个值是否相等。

答案:==3. C语言中,________关键字用于声明一个函数。

答案:void4. C语言中,________关键字用于声明一个结构体。

答案:struct5. 在C语言中,________关键字用于声明一个枚举类型。

答案:enum6. C语言中,________函数用于将整数转换为字符串。

单项选择题标准化考试系统课程设计论文

单项选择题标准化考试系统课程设计论文

单项选择题标准化考试系统课程设计论文数据结构课程设计设计说明书单项选择题标准化考试系统起止日期: 2013年 12月 23 日至 2013 年 12月27日学生姓名班级成绩指导教师(签字)课程设计任务书2013—2014学年第1学期计算机与信息工程学院专业班级课程设计名称: 数据结构课程设计设计题目: 单项选择题标准化考试系统完成期限:自 2013 年 12 月 23日至 2013年12 月 27 日共 1 周设计依据、要求及主要内容(可另加附页):一、设计目的熟悉各种数据结构和运算,会使用数据结构的基本操作解决一些实际问题。

二、设计要求在本课程设计过程中要求学生:(1)重视课程设计环节,用严谨、科学和踏实的工作态度对待课程设计的每一项任务;(2)按照课程设计的题目要求,独立地完成各项任务,严禁抄袭;凡发现抄袭,抄袭者与被抄袭者皆以零分计入本课程设计成绩。

凡发现实验报告或源程序雷同,涉及的全部人员皆以零分计入本课程设计成绩。

(3)学生在接受设计任务后,首先要按设计任务书的要求编写设计进程表。

(4)认真编写课程设计报告。

三、设计内容1)问题描述设计一单项选择题标准化考试系统,实现考试的标准化管理。

2) 基本要求功能要求:(1) 用文件保存试题库。

(每个试题包括题干、4个备选答案、标准答案)(2) 试题录入:可随时增加试题到试题库中(3) 试题抽取:每次从试题库中可以随机抽出N道题(N由键盘输入)(4) 答题:用户可实现输入自己的答案(5) 自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩。

四、参考文献1、王红梅,数据结构,清华大学出版社2、王红梅,数据结构学习辅导与实验指导,清华大学出版社3、严蔚敏、吴伟民,《数据结构C语言版》,清华大学出版社目录1、设计目的 (1)2、总体设计 (1)3、详细设计 (1)3.1、程序具体功能 (1)3.2、调试分析.............................................................. 2 4、源程序和运行结果 (2)4.1、源程序 (2)4.2、运行结果............................................................. 12 5、心得体会 ..................................................................15 6、参考文献 (15)单项选择题标准化考试系统 1、设计目的熟悉各种数据结构和运算,会使用数据结构的基本操作解决一些实际问题。

HNCE网上考试系统 C语言程序设计 选择题答案

HNCE网上考试系统  C语言程序设计 选择题答案

一、单项选择题(17道小题,共20分)1、以下叙述中正确的是( C )。

(1分)A、C语言比其他语言高级B、C语言可以不用编译就能被计算机识别执行C、C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D、C语言出现的最晚,具有其他语言的一切优点2、以下说法正确的是( C )。

(1分)A、C语言程序总是从第一个函数开始执行B、在C语言程序中,要调用函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分3、下列可用于C语言用户标识符的一组是( B )。

(1分)A、void define WORDB、a3_b3 _123 CarC、For abc caseD、2a DO sizeof4、设int a=3,b=4,c=5;表达式(a+b)>c&&b==c的值是( C ) 。

(1分)A、2B、-1C、0D、15、以下关于循环体的描述中,( C )是错误的。

(2分)A、循环体中可以出现break语句B、循环体中还可以出现循环语句C、循环体中不能出现continue语句D、循环体中可以出现switch语句6、While(x)中的x相当于( D )。

(2分)A、x==0B、x==1C、x!=1D、x!=07、以下关于switch语句和break描述中, ( A) 是正确的。

(2分)A、在switch语句中,可以根据需要使用或不使用break语句B、switch语句中必须用break语句C、break语句只能用于switch语句D、break语句是switch语句必须的一部分8、以下对C语言函数的有关描述中,正确的是( B )。

(1分)A、在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参B、C函数既可以嵌套调用又可以递归调用C、函数必须有返回值,否则不能使用函数D、C程序中有调用关系的所有函数必须放在同一个源程序文件中、9、在下面的函数声明中,存在着语法错误的是( D )。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计任务书 学 院、系: 专 业: 学 生 姓 名: 学 号: 设 计 题 目: 单项选择题标准化考试系统设计

起 迄 日 期: 指 导 教 师: 1.设计目的 设计单项选择题标准化考试系统。 2 任务概述

(1)用文件保存试题库(每个试题包括题干、4个备选答案、标准答案). (2)试题录入:可随时在试题库中增加试题. (3)试题抽取:每次从试题库中可以随机抽出N道题(N由键盘输入). (4)答题:用户可以输入自己的答案.

(5)自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩. 3 模块划分

单项选择体标准化考试系统

4主要函数说明及N-S图 (1)菜单Menu():用来给用户提供选项;

(2)Read()函数:用于打开文件; FILE *fp ,int i=0

fp=fopen("单项选择题标准化考试系统设计.txt","r+") Y if(fp==NULL) N printf("文件打开失败"); return 0;

添加试题到试题显示试题库

答题

判卷 退

出 系 统

输出菜单界面 输入选项 输入1 Y

输入2 添加Add()函数 Y N

N

输入3 添加Put

()函数 Y N

添加Ask()函数

输入4 Y N

break break break break

exit(0) for(i=0;!feof(fp);i++) fprintf(fp,"%s %s %s %s %s %c\n",que[i].topic,que[i].a1,que[i] .a2,que[i].a3,que[i].a4,que[i].real);

fclose(fp) return i

(3)Save()函数:用于添加试题后保存试题;

(4)Put()函数:用于显示试题; (5)Add()函数:用于添加试题 (5)Adi .

(5)Ask()函数:用于答题并判卷。

FILE *fp int i=0 if((fp=fopen(“单项选择题标准化考试系统设计.txt”))==Null) printf(“文件打开失败!”)

fprintf(fp,”%s %s %s %s %s %c\n,que[i].topic,que[i].a1,que[

i=0;i

int i,n n=Read(que) 打印表头

fprintf(fp,”%s %s %s %s %s\n,que[i].topic,que[i].a1,que[i].a2,que[i].a3,que[i].a4”)

i=0;igetch() FILE *fp int i,a,n sruct question que n=Read(que)

scanf(”%s %s %s %s %s%c\n,que[i].topic,que[i].a1,que[i].a2,que[i].a3,que[i].a4,que[i].real”) fprintf(fp,”%s %s %s %s %s%c\n,que[i].topic,que[i].a1,que[i].a2,que[i].a3,que[i].a4,que[i].real”)

i=0;i

fclose(fp)

printf(“请输入增加试题的数目”) scanf(“%d“,&a);

sruct question que[N] int m,score=0;char r; 图4-6 修改函数(cor)

5. 程序运行数据及其结果 6 课程设计心得 通过这次实训,感觉到自己还是差很多的,自己学到的还是远远不够的,练习的太少了,好多知识点都记得不牢,还需要大量的练习。又因为一个学期没看了,好多东西都忘了,所以好多知识点都是在看得时候重新拾起来的。这次实训给我的教训就是平时要多多练习一些题型,时不时的复习以前的知识点,让自己更加熟练的掌握更多编程技巧,更多的思路。 还有一点就是没有思路的时候千万不要放弃,要学会思考,学会独立有耐心的完成一些事情,等到做完成功之后,便会收获很多的信心和欣慰。总之就是要有耐心,坚持多做练习,不会的多请教别人,一切困难都会迎刃而解。 附录:

#include #include //串操作及内存操作函数 #include //调用系统函数 #include//动态内存 #include #define N 100 void Menu1(); int Read(); void save(); void Put(); void Add(); void Ask(); struct question { char topic[100]; char a1[100]; char a2[100]; char a3[100]; char a4[100];

fp=fopen("单项选择题标准化考试系统设计.txt","r+"); if(strcmp(number,stu[i].num)==0);break; for(i=0;iprintf("%s\n%s\n%s\n%s\n%s\n",que[i].topic,que[i].a1,que[i].a2,que[i].a3,que[i].a4); printf("\n请输入您的答案:"); scanf("%c",&r); getchar();

printf(“请输入要答得题目数:”) Scanf(”%d”,&m);

Y if(que[i].r

eal==r) N

printf("\n答案正确!\n"); score++; printf("\n答案错误!\n");

score=score;

printf("\n你的总成绩为:%d\n",score); getchar();

getchar(); char real; }; void Menu1()//主菜单 { system("cls"); puts("\t\t-----欢迎进入单项选择题标准化考试系统设计-----"); puts("\t\t 1----添加试题到试题库中"); puts("\t\t 2----显示试题库"); puts("\t\t 3----答题并判卷"); puts("\t\t 4----退出"); puts("\t\t 请选择……"); int choice1,choice2; while(12) { scanf("%d",&choice1); switch(choice1) { //调用子函数。 case 1:system("cls");Add();Menu1();break; case 2:system("cls");Put();Menu1();break; case 3:system("cls");Ask();Menu1();break; case 4:puts("欢迎下次使用 ");exit(0); } } } int Read(struct question que[N])//打开文件 { FILE *fp; int i=0; fp=fopen("单项选择题标准化考试系统设计.txt","r+"); //以读的形式打开文件information.txt if(fp==NULL) { printf("文件打开失败"); return 0; } for(i=0;!feof(fp);i++) {

fscanf(fp,"%s %s %s %s %s %c\n",que[i].topic,que[i].a1,que[i].a2,que[i].a3,que[i].a4,que[i].real); } fclose(fp); return i; } void save(struct question que[N],int n) // 考试系统改变后更新并保存文件 { FILE *fp; int i=0; if((fp=fopen("单项选择题标准化考试系统设计.txt","w+"))==NULL) { printf("文件打开失败!\n"); return ; } else { for(i=0;i

fprintf(fp,"%s %s %s %s %s %c\n",que[i].topic,que[i].a1,que[i].a2,que[i].a3,que[i].a4,que[i].real); } fclose(fp); } void Put()//显示试题信息 { struct question que[N]; int i,n; n=Read(que); printf("*********************所有的试题信息如下**********************\n\n"); for(i=0;i

printf("%s\n%s\n%s\n%s\n%s\n\n",que[i].topic,que[i].a1,que[i].a2,que[i].a3,que[i].a4); getch(); } void Add()//添加试题 { FILE *fp; int a,i; struct question que[N]; fp=fopen("单项选择题标准化考试系统设计.txt","a+"); //以添加的形式打开文件

相关文档
最新文档