一、编程思想:
1、定义所需要变量
2、设置数组,存储运算符,
3、通过随机函数random(0,100)找出运算数,random(0,4)找出运算符
4、通过输出显示运算式。
二、源代码:
//2016 3.3 Cheng Qiqin //sizeyunsuan #include <iostream> #include<ctime> #include<cstdlib> #include<iomanip> using namespace std; #define N 20 void main(){ int num1,num2,num3,num4; int i,j,k; int random(int,int); char fuhao[4]={'+','-','*','/'}; for(k=0;k<N;k++){ j=random(0,2); if(j==0){//整数四则运算 i=random(0,4); //选择运算符 num1=random(0,100); num2=random(0,100); switch(i){ case 0: //整数相加 cout<<num1<<fuhao[i]<<num2<<"="<<endl; break; case 1: //整数相减 cout<<num1<<fuhao[i]<<num2<<"="<<endl; break; case 2://整数相乘 cout<<num1<<fuhao[i]<<num2<<"="<<endl; break; case 3: //整数相除 while(num2==0){//除数不为0 num2=random(0,100); } cout<<num1<<fuhao[i]<<num2<<"="<<endl; break; default: break; } } else{//真分数四则运算 i=random(0,4); num1=random(0,100); num2=random(0,100); while(num2==0||num1>=num2){//分数分母不为0并且分子不能大于分母 num1=random(0,100); num2=random(0,100); } num3=random(0,100); num4=random(0,100); while(num4==0||num3>=num4){//分数分母不为0并且分子不能大于分母 num3=random(0,100); num4=random(0,100); } switch(i){ case 0: //分数相加 cout<<num1<<"/"<<num2<<fuhao[i]<<num3<<"/"<<num4<<"="<<endl; break; case 1: //分数相减 cout<<num1<<"/"<<num2<<fuhao[i]<<num3<<"/"<<num4<<"="<<endl; break; case 2: //分数相乘 cout<<"("<<num1<<"/"<<num2<<")"<<fuhao[i]<<"("<<num3<<"/"<<num4<<")"<<"="<<endl; break; case 3: //分数相除 while(num3==0){//作为分母的分数不为0 num3=random(0,100); while(num3>=num4){ num3=random(0,100); num4=random(0,100); } } cout<<"("<<num1<<"/"<<num2<<")"<<fuhao[i]<<"("<<num3<<"/"<<num4<<")"<<"="<<endl; break; default: break; } } } } int random(int start,int end){ //随机数函数 return start+(end-start)*rand()/(RAND_MAX+1); }
三、运行结果:
四、目前实现功能:
1、100以内整数相加、相减、相乘、相除。
2、实现真分数相加、相减、相乘、相除。
五、期望实现功能:
1、随机数每次运行的数都不一样。
2、可以实现四则混合运算。