C语言 小学生测试.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言 小学生测试

PAGE PAGE 1 Time \@ yyyy年M月d日2017年10月29日指导教师: Time \@ yyyy年M月d日2017年10月29日 指导教师:郑老师 组别:16自动化第7组 [南京理工大学紫金学院]成员:谢德煜,徐安伟 徐凡,徐航小学生测试 [南京理工大学紫金学院] 成员:谢德煜,徐安伟 徐凡,徐航 小学生测试 [C语言报告] TOC \o 1-3 \h \u 7555 一、组内成员分工 2 21332 二、课题介绍 2 25783 三、程序功能介绍 2 30012 四、主体内容 2 7694 1.设计分析 2 23332 2.流程图 2 26932 3.各模块的功能及程序说明 2 27455 4.源代码 2 11225 5.操作方法 2 29576 6.实验结果 2 9971 五、设计 2 组内成员分工 谢德煜:报告册书写 徐安伟:分析设计 徐凡:编写程序 徐航:调试修改 课题介绍 小学生测验系统 任务:面向小学1~2年级学生,随机选择两个整数和加减法形成算式要求学生解答。 功能要求:1)电脑随机出10道题,每题10分,程序结束时显示学生得分; 2)确保算式没有超出1~2年级的水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范围,负数更是不允许的; 3)每道题学生有三次机会输入答案,当学生输入错误答案时,提醒学生重新输入,如果三次机会结束则输出正确答案; 4)对于每道题,学生第一次输入正确答案得10分,第二次输入正确答案得7分,第三次输入正确答案得5分,否则不得分; 5)总成绩90以上显示“SMART”,80-90显示“GOOD”,70-80显示“OK”,60-70显示“PASS”,60以下显示“TRY AGAIN”。 程序功能介绍 通过随机函数rand()生成两个之和50且之差0的两个随机数,以及随机的+—号来实现随机选择两个整数和加减法。 通过if函数来进行的结果的判断,同时进行分数档次的划分,计算最终的十次叠加值得出最后的总分。从而进行对较为客观的总评。 四、主体内容 1.设计分析:通过随机函数和循环结构来实现面向小学生的测试 开始流程图 开始 判断计算计算判断计算计算判断输出算式生成两个随机数和随机的加减号 判断 计算 计算 判断 计算 计算 判断 输出算式 生成两个随机数和随机的加减号 3.源代码 #includestdlib.h #includestdio.h #includeconio.h #includestring.h void main() { int num=0,add=0; /* 答题数,总分 */ int score[3]={10,7,5};/*得几分*/ char str[20],str1[10][20]; while(1) { int a=0,b=0,d=0,c=0,k=0,i=0,j=-1,result; char sf[2]={+,-};/* 符号 */ while(1) { a=rand()%51;/*0-50的随机数*/ b=rand()%51;/*0-50的随机数*/ d=rand()%2;/* 随机符号 */ if(d==0)c=a+b; else c=a-b; if(c=0 c=50)/* 如果相同重新出题 */ { sprintf(str,%d %c %d = \n,a,sf[d],b); strcpy(str1[num],str); if(num==0) break; j=-1; for(i=0; inum; i++) { if(strcmp(str,str1[i])==0) { j=1;break;} } if(j0) break; } } printf(%s\n,str);/* 回答 */ printf(输入计算结果:\n); while(1) { scanf(%d,result); k++; if(result==c) { printf(回答正确!\n); add+=score[k-1]; break; } else if(k3) { printf(错误,请重新回答:\n); } else { printf(错误,正确答案: %d\n,c); break; }

文档评论(0)

zsmfjy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档