vc++由计算机生成简单的四则运算题报告及源代码
1.1 需求分析:
本程序主要解决的是: 由计算机随机生成的简单的四则运算题,包括加,减,乘,除;用户根据程序的提示,指定出加、减、乘、除中的哪一种运算题,以及指出是一位数还是两位数的运算,并且输入自己的计算结果, 由程序判断结果的正确性,并给出提示,而且本程序能够给出用户的最终成绩.
1.2 概要设计:
本程设计思路: 本程序主要分为三个部分:定义及调用的头文件,四则运算,随机数获得。加、减、乘、除四种运算的处理过程,通过主函数的switch开关语句和一个do-while循环来调用,本程序的关键是通过使用“rand()%10”或“rand()%100”来获得一个0到9的一位整数随机值或得到0到99的两位整数随机值来为用户出题,其包含在stdlib.h头文件里。
程序流程图(如下图):
1.3 详细设计与编码:
程序主要有以下几个主要部分来构成实现
1. 选择四则运算
switch(a)
{
case '+': jia(); break;//进入加运算函数
case '-': jian(); break;//进入减运算函数
case'*': cheng(); break;//进入乘运算函数
case '/': chu(); break;//进入除运算函数
case't': key=false; break;//退出程序
}
2.产生随机数:
int suijishu1(int a[2])
{
time_t t; //时间变量
srand((unsigned)time(&t)); //种下随即发生器必须的种子
a[0]=rand()%10;
a[1]=rand()%10;
return 0;
}
int suijishu2(int a[2])
{
time_t t; //时间变量
原文请找腾讯752018766优,文-论'文~网
http://www.youerw.com return 0;
}
3.四则运算(由于四则运算方式差不多,这里仅仅取加法运算来举例)
int jia()
{
int weishu;
int a[2],r,result;
cout<<"输入运算的位数";
cin>>weishu;
switch(weishu)
{
case 1: suijishu1(a); break;
case 10: suijishu2(a); break;
default: {cout<<"错误!"; jia();}
}
r=a[0]+a[1];
cout<<"a[0]="<<a[0]<<" "<<"a[1]="<<a[1]<<endl;
cout<<"请输入结果:";
cin>>result;
if(result==r)
cout<<"结果正确"<<endl;
else
cout<<"结果错误!"<<endl;
return 0;
}
程序执行的结果:
1.4 调试分析:
在调试过程中程序使用“rand()%10”或“rand()%100” 获得的随机数往往不随机,即获得的随机数不变,经过查阅资料和详细分析,原来它需要初始化.
1.5 用户使用说明:
用户根据程序的提示指出是一位数还是两位数的运算,选择时,输入要进行操作的前面的整数确定即可。可选择加、减、乘、除中的哪一种运算题。
1.6 设计心得:
这是软件课程设计做的一个程序,感觉还不是太难,这个程序主要包括以下几个方面:1.设计好四则运算的运算方式.2.设计选取随机数.3.用定义四则运算和头文件将几个方面衔接起来即可.
所以看来这个程序还是很简单的,不过要做到更好还是不简单的,首先考虑选取随机数中的一些问题,然后还要注意四则运算中的返回结果不要出错。希望后面的实验不会太难。1805
vc++由计算机生成简单的四则运算题报告及源代码下载如图片无法显示或论文不完整,请联系qq752018766