#include "iostream.h"
#include "stdlib.h"
#include "time.h"
int main()
{
int a,b,numOfQues=0,numOfRight=0;
char inquiry;
srand(time(NULL));
cout<<"欢迎做个位数的加减法:"<<endl;
do
{
int temp=rand()%4;
a=rand()%10;
b=rand()%10;
switch(temp)
{
case 0:
{
int ans;
cout<<a<<'+'<<b<<'=';
cin>>ans;
if(ans==(a+b))
{
numOfRight++;
cout<<"恭喜你答对了!"<<endl;
}
else
cout<<"打错了请再接再厉!"<<endl;
break;
}
case 1:
{
int ans;
cout<<a<<'-'<<b<<'=';
cin>>ans;
if(ans==(a-b))
{
numOfRight++;
cout<<"恭喜你答对了!"<<endl;
}
else
cout<<"打错了请再接再厉!"<<endl;
break;
}
case 2:
{
int ans;
cout<<a<<'*'<<b<<'=';
cin>>ans;
if(ans==(a*b))
{
numOfRight++;
cout<<"恭喜你答对了!"<<endl;
}
else
cout<<"打错了请再接再厉!"<<endl;
break;
}
case 3:
{
int ans;
if(b==0)
{
continue;
}
else
{
cout<<a<<'/'<<b<<'=';
cin>>ans;
if(a%b!=0)
{
cou<<"输出错误,请重新选择"<<endl;
break;
}
else if(ans==(a/b))
{
numOfRight++;
cout<<"恭喜你答对了!"<<endl;
}
else
cout<<"打错了请再接再厉!"<<endl;
}
break;
}
}
numOfQues++;
cout<<"还要再做一道题吗?(n或者N表示不需要)"<<endl;
cin>>inquiry;
}while(inquiry!='n'&&inquiry!='N');
cout<<"你的正确率为:"<<numOfRight*100/numOfQues<<"% 再见!"<<endl;
return 0;
}
就是除法这一块问题超多啊! 还有 怎么在重新选题的情况下 不增加intOfQues?
只能在每个case里加题目数啊 好吧 感觉好麻烦。。 谢了