c语言小学生测验.docxVIP

  • 21
  • 0
  • 约3.78千字
  • 约 12页
  • 2021-11-10 发布于天津
  • 举报
1 设计目的 (1)进一步巩固和复习C程序设计的基础知识; ( 2)培养学生结构化程序、模块化程序设计的方法和能力; ( 3)了解软件的编制过程及各环节的具体内容; ( 4)提高学生程序调试技巧、软件设计能力和代码规范化等素质; 提高学生分析问题、解决问题以及实际运用能力。 2 任务概述 面向小学 1~2 年级学生,随机选择两个整数和加减法形成算式要求学生解答。 功能要求: ( 1)电脑随机出 10 道题,每题 10 分,程序结束时显示学生得分; ( 2)确保算式没有超出 1~2 年级的水平,只允许进行 50 以内的加减法,不允许两数之和 或之差超出 0~50 的范围,负数更是不允许的; ( 3)每道题学生有三次机会输入答案,当学生输入错误答案时,提醒学生重新输入,如果 三次机会结束则输出正确答案; ( 4)对于每道题,学生第一次输入正确答案得 10 分,第二次输入正确答案得 7 分,第三 次输入正确答案得 5 分,否则不得分; 5)总成绩 90 以上显示“ SMAR” T 系统 图4主要函数说明及其 系 统 图 4主要函数说明及其 (1)小学生测验系统 n ()函数的N-S图,如图4.1所示 输 出 等 级 ,80-90 显示 “GOOD, 70-80 显示 “ OK ,60-70 显示 “PASS , 60 以下 “TRY AGAIN 3模块划分 小学生测验系统包括系统出题,判断题目是否合规,学生答题,判断正误计算得分 ,输出等级退出系统几个功能,功能模块图如图 3.1所示。 小学生测验 学 判 小学生测验系缩功能模块图断 正 i=1 i=10 a=rand()%51 b=rand()%51 c=rand()%2 T c=a+bc=a-b T c=a+b c=a-b c0||c50 输出回答第几题和对应的算式 k=3 k=1 输入答案result result==c 输出回答正确 输出回答错误 grade+=score[k-1] break 下一道 i++ k==0 Grade(grade) getch() 图4.1 main()函数N-S图 定义主函数main ()的功能是:随机选择0~50之间的两个数进行随机加减法运算, 共出10道题目,确保答案在0~50之间,同时保证所出题目不重复,让学生回答,每道 题有三次机会,第一次回答正确得10分,第二次回答正确得7分,第三次回答正确得5 分,否则不得分,最后算出总得分划分等级 5程序运行数据及其结果 至古早二- 田认央目 回 Wo c n _ c 至古早二 - 田认央目 回 Wo c n _ c) *中十七方 中 寸** 中*** ** 5M A R 丁 ±+i* ±*S £***?i?±#i±*S**切中土 ◎之 回K_ZE硒1田E F 引了是西: 4 1 + .5 = 十一贵S 图5.1答错一题一次得分图 I第丁题: 29-25 - 特r入王十分结果: 回后正的H信阵啮? |2Q-29 = |输入廿州=果: [网转KF询!样样配、 依D颈; 卜35 = 、领人计克至吉阜; 139 里」|音正碗!棒伟唯 [串]。题二 Ba-o = ,输入E1同结果: 卜久辛七音。技?1^ H 奏声一片 g F1茶-。「t_,1」口: [普条,脸. 曲 火,思考 右回答o(c_c)o: Bs I回答正确工桥阵Ifc? ■ E^~|i t^_ Kilij, njw u^a -■- -,■- - J- kjLa - ■_- nj^ -,_■ ■ £7?- ■ ■ % T 1 I I1 , - ■ - -■--J-. ajj -■--- -■■ iLLaiKAnKMj J 三■』-千一人■—u*:人*? - -T ■ .■/ 人Ta *-T. JvV j * pi l j.- J.- -T- **』 -T- -W - - w- -T- - ■■ ^r- [傩钦拼,平: 图5.2答错一题两次得分图 图5.3答错一题三次得分图 图5.4 全部答对得分图 6课程设计心得 通过这次课程设计我学到了许多。同时也巩固了许多 C语言的知识。但我觉得最重要 的是在这个课程设计中看到了自己许多的不足,在许多方面都有所欠缺,对一些函数理 解的不透彻,不能熟练的编写有关代码。除了知识储备的不足之外,还有一些不良的编 码习惯,时常导致掉写漏写,编写出来的没有做到美观整洁。 本次实验所写的小学测验系统,与以往编写的小程序相比更加复杂,功能也更多, 自动出题 自动判卷,划分等级等每一个模块的编写都不得马虎,一有错误就会导致程序运行出错, 所以困难较大,所以在编写代码的时候遇到了许多困难,例如如何保证系统给出的随机 数不同,为了解决这个问题映入了 srand((unsigned)time(NULL)) 方法,这些新的东

文档评论(0)

1亿VIP精品文档

相关文档