学生选修课程系统设计73326_第1页
学生选修课程系统设计73326_第2页
学生选修课程系统设计73326_第3页
学生选修课程系统设计73326_第4页
学生选修课程系统设计73326_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机学院软件工程10级C程序课程设计报告6C语言课程设计报告题 目:小学算术运算测试设 计 者:贾天顺专业班级:软件工程.NET10-3学 号:311009070314指导教师:米爱中 2011年 6 月 30日河南理工大学计算机学院目录1.设计任务书.22.本人课题及任务.23.程序功能简介.24.主体内容.24.1设计分析4.2程序结构(画流程图)4.3各模块的功能及程序说明4.4试验结果(包括输入数据和输出结果)4.5设计体会5.结束语.41. 设计任务书1.1、 题目与要求:我所制作的程序是小学算术运算测试,它可以运算10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分数

2、。1.2问题提出:由于自己掌握的C语言知识较少,缺乏制作程序的经验,要实现题目中的要求有一定难度,所用语句可能超出所学范围,在制作过程中会出现一定错误,需要自己搜索有关资料来帮助实现课题要求。1.3. 本程序涉及的知识点变量的定义、输入和输出函数、产生随机数函数、if语句、goto语句、转意字符的使用等等。2.本人课题及任务2.1 本人课题:小学算术运算测试2.2任务:编写一个程序,它可以运算10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分数。程序要求界面美观简介,功能齐全。3. 程序功能简介使用者输入不大于10的数,即输入的题数,即可随机得到几道题,使用者输入结果,程序可以判

3、断结果的正误,最后计算分数。4.主题内容:4.1设计分析:本程序实现的功能要求:利用while语句完成所示的主菜单根据提示输入题目数进行答题判断是否正确计算分数 图1小学算术运算测试主菜单进入第一步出现如下信息:Please input the sum of exam:(输入不大于10的数字,)输入后进入第二步:计算,计算结果是否正确,计算完成后进入第三步:统计分数,然后结束。4.2 程序结构:开始Input the sum(010)Compute正确错误GoodError最后统计分数,结束 图2小学算术运算测试程序结构4.3各模块的功能及程序说明Printf("请输入练习的题目数:

4、");scanf("%d",&num); /*输入要练习的题数*/ for(i=0;i<num;i+) srand(unsigned)time(NULL); m=rand() % 2; /*接收程序随机产生的数字1或0*/Loop:a=rand() % 10;b=rand() % 10; if(a+b>10) goto Loop;4.4试验结果:随机输入一个小于10的数字,出现计算的题目数。根据提示做题,最后程序判断结果是否正确,得出分数。4.5设计体会:本程序在刚开始调试时有许多错误,但在我的努力及同学的帮助下都被一一克服,现在在操作本程序时

5、可根据提示进行相关操作,能正确输出结果。在这次设计过程中,不仅复习课本上所学知识,还通过查资料、问同学学到了课本上没有的知识。从而启发我,要想写好程序,在写好课本知识的同时还需要多读和专业有关的一些书籍,同时还需要多动脑子,尽量把所学的知识综合起来应用,力争写出完美的程序。5. 结束语参考文献1 贾宗璞、许合利,C语言程序设计,江苏:中国矿业大学出版社,2007.62 谭浩强,C程序设计(第二版),北京:清华大学出版社,2001.13 附录程序清单:#include <stdio.h>#include <stdlib.h>#include <time.h>i

6、nt Getanum(int num) int a; srand(num*num+time(0); a=(rand()+num)%10;/产生不大于10的数 return a;void main() int i,num,a,b,c,op,error; error = 0;/错误数置零 num = 100;/使得下面的while循环成立即可 while(!(num>0&&num<10)/10以外的数不能执行 printf("Please input the sum of exam :"); scanf("%d",&num

7、); for(i=0;i<num;i+)/每次出题开始 a = Getanum(i);/第一个操作数 b = Getanum(a);/第二个 op = (Getanum(a+b)+b)/a%2;/产生符号 +或者- switch(op) case 0:/+ if(a+b>10)/超过10重新来 i-; break; else printf("%d : %d + %d = ",i+1,a,b);/出题 scanf("%d",&c);/取输入的结果 if(c != a+b)/答案错误 printf("Error!n"); error+; else/verygood printf("Good!n"); break; case 1:/- if(b>a)/保证a>b 使得不出现负数 a=a+b; b=a-b; a=a-b; printf("%d : %d - %d = ",i+1,a,b);/出题 scanf("%d",&c);/取结果 if(c != a-b) printf("Error!n"); error+;/错误自加 else printf("Good!n"); break;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论