C语言课程设计小学算术运算测试.docx
《C语言课程设计小学算术运算测试.docx》由会员分享,可在线阅读,更多相关《C语言课程设计小学算术运算测试.docx(8页珍藏版)》请在冰豆网上搜索。
C语言课程设计小学算术运算测试
学号
武汉理工大学华夏学院
课程设计
课程名称C语言课程设计
题目小学算术运算测试
专业电子商务
班级电商1111
姓名
成绩_________________
指导教师王绪梅
2012年6月25日至2012年6月29日
课程设计任务书
学生姓名:
专业班级:
电商1111
指导教师:
王绪梅工作单位:
汽车工程系
设计题目:
小学算术运算测试
要求完成的主要任务:
1.任务描述
我计划编写小学算术运算测试程序。
要求完成10以内的加减乘除运算。
能根据用户输入的想要练习的题目数自行出题。
用户输入答案后可以判断正误,并能给出算对及算错的题目数,最后计算出分数。
同时,对于用户算错的题目发出报警声,提示用户注意,同时给出正确结果。
做完一次测试后用户可决定是否继续进行下一次测试。
2.本课程涉及的知识点
变量的定义、输入和输出函数、产生随机数函数、if语句、goto语句、转义字符的使用等等。
3.要求完成的任务
完成整个规定任务的设计及调试,且一定要画出程序流程图,最后得出正确结果,并经教师检查及答辩;
写出规范的课程设计说明书;
课程设计结束后交设计说明书等文档和设计内容:
从6月25日起,学生每天至少要到设计教室半天以上;
设计报告撰写格式要求:
设计报告的主要内容是详细写出在设计过程中所用到的主要技术或方法;
课程设计报告按国际通用格式书写,具体格式要求请见资料:
“课程设计说明书的书写内容与格式”
时间安排:
第一天:
学生先在实验室集中,由指导教师介绍课程设计的目的、布置任务后选题;
第二天-第四天:
学生在实验室完成设计,经教师检查并回答提问,确认设计完成;
第五天:
教师在计算机上先检查设计报告、学生修改后打印提交
指导教师签字:
2012年6月23日
系主任签字:
2012年6月23日
设计过程中现场提问(或答辩)记载:
指导教师评语:
成绩评定等级:
指导教师(签名):
2012年2月17日
1设计题目
小学算术运算测试
2开发环境
硬件环境:
微机系列,内存在1G以上
软件环境:
MicrosoftWindowsXP
3开发工具
TC、Win-tc或者VisualC++6.0
4完成时间
2012-6-25----2012-6-29
5设计过程及设计步骤
5.1功能设计
5.1.1算法设计
1、本程序实现的功能要求:
利用if语句完成所示的主菜单。
2、进入第一步出现如下信息:
开始测试?
(输入y开始,输入n推出)
选择y后,进入第二步。
用户输入要练习的题数。
第三步:
输出算术式子
用户输入结果进行测试。
第四步:
输出测试结果
屏幕显示出本次测试的基本情况。
5.1.2部分模块流程图
5.2程序代码设计
5.2.1输入函数
1)函数原形:
scanf(“%d”,&*)
2)功能:
scanf()函数利用取地址符号&完成对程序中某个变量的赋值,进而程序中判断循环的功能。
3)变量及类型:
inta,b,m:
整型形参变量,接收main()传过来的随机数字。
inti,num:
循环控制变量。
intc,d,f,n,num,j,s,t:
整型形参变量。
其中j具有自加功能;d,f,num,t:
需要用户赋值;c,n,s:
系统自动赋值。
4)说明:
输入字符后需要按回车键,待系统做出判断后往下执行。
5)模块代码及其相关注释:
loop:
printf("开始测试?
输入1开始,输入其他键退出:
");j=0;
scanf("%d",&d);/*输入整型数据,把它存储在变量d的地址内*/
if(d==1)
{
printf("请输入练习的题目数:
");
scanf("%d",&num);/*输入要练习的题数*/
for(i=0;i{srand((unsigned)time(NULL));
m=rand()%2;/*接收程序随机产生的数字1或0*/
Loop:
a=rand()%10;
b=rand()%10;
if(a+b>10)gotoLoop;
5.2.2输出函数
1)函数原形:
printf(“**********”,*)
2)功能:
输出相关提示信息及最后结果。
3)相关变量:
intn:
输出正确结果。
intj,c,s:
输出计算正确,错误的题数及所得分数。
4)说明:
输出时要把要输出的信息用双引号括起来,输出数字时要在其代表变量前加逗号。
5)模块代码及其相关注释:
{
printf("%d+%d=",a,b);/*输出算式a+b*/
n=a+b;
scanf("%d",&t);
if(t!
=a+b)
printf("错误,正确答案为:
%d。
\n\a\a",n);
/*输出计算结果*/
else{
printf("正确\n");j++;
}
}
}
c=num-j;
s=100*j/num;
printf("做对题数:
%d,做错题数:
%d,得分:
%d\n",j,c,s);
/*输出测试相关结果*/
printf("再来一次?
");
printf("2再来,其他键退出:
");/*提示用户输入信息*/
scanf("%d",&f);
if(f==2)
gotoloop;
elseprintf("结束");
}
}
6设计体会
本程序在刚开始调试时有许多错误,但在我的努力及同学的帮助下都被一一克服,现在在操作本程序时可根据提示进行相关操作,能正确输出结果。
在刚开始的几次调试中曾经出现过不能运行、不能产生十以内随机数字、不能随机出现加减、不会正确输出结果、不能进行循环练习等等问题。
经过我的努力及同学的帮助,这些问题得到克服,并且使程序的功能也得到了一定的完善。
现在它能对出错的题目发出报警声,并且给出正确答案。
最后还能分别输出对错的题数及所得分数。
在这次设计过程中,不仅复习课本上所学知识,还通过查资料、问同学学到了课本上没有的知识。
从而启发我,要想写好程序,在写好课本知识的同时还需要多读和专业有关的一些书籍,同时还需要多动脑子,尽量把所学的知识综合起来应用,力争写出完美的程序。
除此之外,我还得到了一些有用的教训:
写程序时必须要细心,不能输错一个字符标点,就连全角半角也得注意。
在修改时要有耐心,编译出错后必须逐个错误去改正,绝不能心急浮躁,否则修改之后还会有新的错误。
7参考文献
[1]贾宗璞、许合利,C语言程序设计,江苏:
中国矿业大学出版社,2007.6
[2]谭浩强,C程序设计(第二版),北京:
清华大学出版社,2001.1
[3]