小学生二年级四则运算2.0

时间:2021-11-18 04:50:27

在原有基础之上,希望加上分数的四则运算。

此次编程实现功能:30道四则运算题的编写(不重复编写)

                                支持整型四则运算,还有分数四则运算

                                可制定出题的数量

 

 1 //开始编程时间:15:18
 2 //结束编程时间:16:42
 3 #include <iostream>
 4 #include <time.h>
 5 #include <stdlib.h>
 6 using namespace std;
 7 #define max 100
 8 #define n 30
 9 int main() 10 { 11 srand(time(NULL)); //seed 12 int num1,num2,num3,num4; 13 int i,j,m; 14 char ysf[4]={'+','-','*','/'}; 15 for(m=0;m<n;m++) 16  { 17 j=rand()%2; // 生成0或1 18 if(j==0) // 整型四则运算 19  { 20 i=rand()%4; // 生成0-3的随机数 21 num1=rand() % max; // 生成0-max-1的随机数 22 num2=rand() % max; 23 switch(i){ 24 case 0: //整数相加 25 cout<<num1<<ysf[i]<<num2<<"="<<endl; 26 break; 27 case 1: //整数相减 28 cout<<num1<<ysf[i]<<num2<<"="<<endl; 29 break; 30 case 2://整数相乘 31 cout<<num1<<ysf[i]<<num2<<"="<<endl; 32 break; 33 case 3: //整数相除 34 while(num2==0) 35 {//除数不为0 36 num2=rand() % max;; 37  } 38 cout<<num1<<ysf[i]<<num2<<"="<<endl; 39 break; 40 default: 41 break;} 42  } 43 else if(j==1) // 分数四则运算 44  { 45 i=rand()%4; 46 num1=rand() % max; 47 num2=rand() % max; 48 while(num2==0||num1>=num2){//分数分母不为0并且分子不能大于分母 49 num1=rand() % max; 50 num2=rand() % max; 51  } 52 num3=rand() % max; 53 num4=rand() % max; 54 while(num4==0||num3>=num4){//分数分母不为0并且分子不能大于分母 55 num3=rand() % max; 56 num4=rand() % max; 57  } 58 switch(i){ 59 case 0: //分数相加 60 cout<<num1<<"/"<<num2<<ysf[i]<<num3<<"/"<<num4<<"="<<endl; 61 break; 62 case 1: //分数相减 63 cout<<num1<<"/"<<num2<<ysf[i]<<num3<<"/"<<num4<<"="<<endl; 64 break; 65 case 2: //分数相乘 66 cout<<"("<<num1<<"/"<<num2<<")"<<ysf[i]<<"("<<num3<<"/"<<num4<<")"<<"="<<endl; 67 break; 68 case 3: //分数相除 69 while(num3==0){//作为分母的分数不为0 70 num3=rand() % max; 71 while(num3>=num4){ 72 num3=rand() % max; 73 num4=rand() % max; 74  } 75  } 76 cout<<"("<<num1<<"/"<<num2<<")"<<ysf[i]<<"("<<num3<<"/"<<num4<<")"<<"="<<endl; 77 break; 78 default: 79 break; 80  } 81  } 82  } 83 }

编程运行截图如下:

小学生二年级四则运算2.0

 

 

小学生二年级四则运算2.0