#include int getNumber(){
return rand()%100;
}
int getOp(){
return rand()%2 ;
}
void getsum(int *num1,int *num2 ,int *op ,int *userRes, int *result){
int numMax , numMin , i ,uNum;
for(i = 0 ; i < 100 ; i++ ){
//先获取操作符,如果是+ 不排大小,是减,再排大小
if(op[i]==1){//加法
printf(" %d + %d = ",num1[i],num2[i]);
scanf("%d",&uNum) ;
userRes[i] = uNum ;//获取用户结果
result[i] = num1[i] + num2[i] ; //加法正确结果
printf("\n"); //验证结果
if(userRes[i] == result[i]){
printf("恭喜你!结果正确 %d + %d = %d \n",num1[i],num2[i],userRes[i]);
}else{
printf("很遗憾!结果错误 %d + %d = %d \t 您的结果是:%d\n",num1[i],num2[i],result[i],userRes[i]);
}
}esle{//减法
if(num1[i] >= num2[i] ){//num1 dayu num2
printf(" %d - %d = ",num1[i],num2[i]);
scanf("%d",&uNum) ;
userRes[i] = uNum ;//获取用户结果
result[i] = num1[i] - num2[i] ; //加法正确结果
printf("\n");
//验证结果
if(userRes[i] == result[i]){
printf("恭喜你!结果正确 %d + %d = %d \n",num1[i],num2[i],userRes[i]);
}else{
printf("很遗憾!结果错误 %d + %d = %d \t 您的结果是:%d\n",num1[i],num2[i],result[i],userRes[i]);
}
} else{
printf(" %d - %d = ",num2[i],num1[i]);
scanf("%d",&uNum) ;
userRes[i] = uNum ;//获取用户结果
result[i] = num2[i] - num1[i] ; //加法正确结果
printf("\n"); //验证结果
if(userRes[i] == result[i]){
printf("恭喜你!结果正确 %d + %d = %d \n",num2[i],num1[i],userRes[i]);
}else{
printf("很遗憾!结果错误 %d + %d = %d \t 您的结果是:%d\n",num2[i],num1[i],result[i],userRes[i]);
}
}
}
}
}
// 输出验证结果
void getresult(int *num1,int *num2 ,int *op ,int *userRes, int *result){
int i ;
for(i = 0 ; i < 100 ; i++ ){
if(op[i]==1){// 加法
printf("%d + %d = %d 您的结果是:%d \n",num1[i],num2[i],result[i],userRes[i]);
}else{ // 减法
if(num1[i] >= num2[i] ){//num1 dayu num2
printf("%d - %d = %d 您的结果是:%d \n",num1[i],num2[i],result[i],userRes[i]);
} else{
printf("%d - %d = %d 您的结果是:%d \n",num2[i],num1[i],result[i],userRes[i]);
}
if(i%5 == 0) //每五个换行
printf("\n");
}
}
int main()
{
// 产生两个操作数,擦欧洲胡 两个结果
int num1[100],num2[100],op[100],userRes[100],result[100];
int i;
for(i = 0 ;i < 100 ; i++){
//产生随机数 符号
num1[i] = getNumber();
num2[i] = getNumber();
op[i] = getOp() ;
}
getsum(num1,num2 ,op ,userRes, result);
//输出所有结果
getresult(num1,num2 ,op ,userRes, result);
return 0 ;
}