一、需求
1、隨機生成m道四則運算式,數值由用戶自定義。
2、每行顯示n道四則運算式,數值由用戶自定義。
3、每一道四則運算式由兩個1~100的隨機數字和一個隨機運算符組成,並輸出運算結果。
二、代碼:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int add(int x,int y);
int subtract(int x,int y);
int multiply(int x,int y);
float divide(float x,float y);
int a,b,i,j=1,t,m,n; //a和b為四則運算式中隨機生成的兩個數,t為四則運算式中隨機生成的運算符,m為用戶自定義的四則運算式總數,n為每一行顯示的四則運算式數量。
char ch;
printf("請輸入需要生成的四則運算式總數:");
scanf("%d",&m);
printf("請輸入每一行的四則運算式數量:");
scanf("%d",&n);
for(i=0;i<m;i++,j++)
{
a=rand()%100+1;
b=rand()%100+1;
t=rand()%4;
if (t==0) ch='+';
else if (t==1) ch='-';
else if (t==2) ch='*';
else if (t==3) ch='/';
if(ch=='+')
printf("%d%c%d=%d \t",a,ch,b,add(a,b));
else if(ch=='-')
printf("%d%c%d=%d \t",a,ch,b,subtract(a,b));
else if(ch=='*')
printf("%d%c%d=%d \t",a,ch,b,multiply(a,b));
else if(ch=='/')
printf("%d%c%d=%.2f \t",a,ch,b,divide((float)a,(float)b));
if(j%n==0) printf("\n");
}
return 0;
}
int add(int x,int y)
{return(x+y);}
int subtract(int x,int y)
{return(x-y);}
int multiply(int x,int y)
{return(x*y);}
float divide(float x,float y)
{return(x/y);}
三、運算結果
當m=300,n=5時,運算結果為:

