c语言四则运算程序报告,c语言四则运算实验报告.doc

c语言四则运算实验报告.doc

课程编号 1300050027 得分教师签名批改日期深 圳 大 学 实 验 报 告课程名称 C语言实验 实验名称 100以内的四则运算游戏 学 院 信息工程学院 指导教师 张金凤 报告人 王文杰 组号 17 学号 2013130073 实验地点 教学楼D506 实验时间 2014 年 4 月 16 日 提交时间 2014.5.9 一、实验目的一、 学习和掌握C语言函数的定义与调用; 二、 进一步掌握随机数、选择结构、循环控制、交互式输入输出等程序设计方法; 三、 进一步掌握C语言中的数组定义和引用方法; 四、 学习和掌握根据流程图进行模块化程序设计的思想。二、实验要求产生1到4之间的随机数,决定4则运算的符号,再产生两个0到99的随机数进行运算,并记录下做的题数以及正确的数目,当做题者输入n或N时退出程序并显示出完成题数及正确率。三、实验程序详细流程图五、对流程图的简要说明include stdio.hinclude stdlib.hincludetime.hinclude conio.hvoid max_minint a,int b;randN1N2int rN1, int rN2 ;randOper4 ;randLmt100 ;addLmt100int num1, int num2;subLmt100int num1, int num2;mulLmt100int num1, int num2;divLmt100int num1, int num2;/* 主函数的功能如下在主函数中调用上面定义的五个函数,在屏幕上随机循环出一道 100 以内的四则运算题。其中,定义一个整型数组 proNum4 和整型数组 ansNum4,这两个数组中分别存储在上述游戏循环过程中加、减、乘、除四种类型的题出现的次数,以及这四种类型的题被答对的次数。在用户不想继续游戏退出时,在屏幕上显示本次游戏中的加、减、乘、除四种类型题出现的数量,以及每一种题被答对的次数。*/int mainint argc, char *argvsrand unsignedtime NULL ; int proNum40,ansNum40, oper,num1,num2;char ch;printf四则运算游戏,请输入正确答案nn;foroper randOper4;switchopercase 1proNum0;ifaddLmt100num1,num21ansNum0;break;case 2proNum1;ifsubLmt100num1,num21ansNum1;break;case 3proNum2;ifmulLmt100num1,num21ansNum2;break;case 4proNum3;ifdivLmt100num1,num21ansNum3;break;fstdin;printfn按回车继续游戏,按N结束游戏nn;ch getch;ifchnchNbreak;printfn你一共玩了d次加法,其中正确答对d次nn,proNum0,ansNum0; printfn你一共玩了d次减法,其中正确答对d次nn,proNum1,ansNum1; printfn你一共玩了d次乘法,其中正确答对d次nn,proNum2,ansNum2; printfn你一共玩了d次除法,其中正确答对d次nn,proNum3,ansNum3; systemPAUSE;return 0;void max_minint a,int bint c;ifabca,ba,bc;/*定义一个函数 randN1N2int rN1, int rN2 。该函数有两个整型的输入参数 rN1 和 rN2,其中,rN1 rN2。该函数的功能是生成 rN1 到 rN2 之间均匀分布的随机整数,该函数的返回值类型是整型。每调用一次该函数,函数返回一个 rN1 至 rN2 之间的随机整数*/int randN1N2int rN1, int rN2 return randrN2-rN11rN1; /*该函数没有输入参数,函数的返回类型是整型。该函数内部调用上述 randN1N2 函数。每调用一次函数 randOper4 ,返回一个 1 至 4 之间的随机整数*/randOper4 return randN1N21,4;/*该函数没有输入参数,函数的返回类型是整型。该函数内部调用上述 randN1N2 函数。每调用一次函数 randLmt100 ,返回一个 0-99 之间的随机整数。*/randLmt100 return randN1N20,99; /*该函数有两个整型的输入参数 num1 和 num2;函数返回值类型为整型。该函数的功能是在屏幕上列出一个算式 num1 num2 ,然后接受一个键盘输入的计算答案 answer。若结果正确,则屏幕输出一句赞扬的语句,然后返回函数值 1;若结果错误,则屏幕输出一句鼓励的语句,并输出正确答案,然后返回函数值 0。*/addLmt100int num1, int num2int a,b; num1randLmt100; num2randLmt100; printfd d ,num1,num2;anum1num2;scanfd,b; ifba printfn恭喜你,答对了n; return 1; else printfn回答错误,加油n; return 0; /*该函数有两个整型输入参数 num1 和 num2;函数返回值类型为整型。该函数的功能是在屏幕上列出一个算式 numM1 - numM2 ,其中numM1 是 num1 和 num2 中较大的一个数,numM2 是 num1 和 num2 中较小的一个数;然后接受一个键盘输入的计算答案 answer。若结果正确,则屏幕输出一句赞扬的语句,然后返回函数值 1;若结果错误,则屏幕输出一句鼓励的语句,并输出正确答案,然后返回函数值 0。*/subLmt100int num1, int num2int a,b; num1randLmt100; num2randLmt100; max_minnum1,num2;printfd - d ,num1,num2;anum1-num2;scanfd,b; ifba printfn恭喜你,答对了n; return 1; else printfn回答错误,加油n; return 0; /*该函数有两个整型输入参数 num1 和 num2;函数返回值类型为整型。该函数的功能是在屏幕上列出一个算式 num1 num2 ,然后接受一个键盘输入的计算答案 answer。若结果正确,则屏幕输出一句赞扬的语句,然后返回函数值 1;若结果错误,则屏幕输出一句鼓励的语句,并输出正确答案,然后返回函数值 0。*/mulLmt100int num1, int num2int a,b;num1randLmt100; num2randLmt100;printfd x d ,num1,num2;anum1*num2;scanfd,b; ifba printfn恭喜你,答对了n; return 1; else printfn回答错误,加油n; return 0; /*该函数有两个整型输入参数 num1 和 num2;函数返回值类型为整型。该函数的功能是首先判定 num1 是否可以整除 num2,若不能整除,则调用 randLmt100 函数重新生成两个新的 num1 和 num2,然后再进行整除性判断,直到生成的 num1 可以整除 num2;在 num1 可以整除 num2 的情况下,在屏幕上列出一个算式 num2 num1 ,然后接受一个键盘输入的计算答案 answer。若结果正确,则屏幕输出一句赞扬的语句,然后返回函数值 1;若结果错误,则屏幕输出一句鼓励的语句,并输出正确答案,然后返回函数值 0。*/divLmt100int num1, int num2int a,b; do num1randLmt100; num2randLmt100; whilenum1num20num20; printfd d ,num1,num2;anum1/num2;scanfd,b; ifba printfn恭喜你,答对了n; return 1; else printfn回答错误,加油n; return 0; 改进意见 请针对错的多的运算进行重复出题,加强练习。指导教师批阅意见成绩评定 预习(20分)操作及记录(40分)数据处理与结果陈述30分思考题10分报告整体印 象总分8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值