每日一题--给小朋友的自动出题自动批改
目录
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
srand((int)time(0)); // 产生随机种子 把0换成NULL也行
int left,right,oper,result;
char char_oper; //除了数字oper变量外,还有字符char_oper变量
left = rand() % 10;
right = rand() % 10;
oper = rand() % 4; //这是加减乘除符号,用0,1,2,3四个数表示
switch(oper)
{
case 0:char_oper = '+';
cout << left << char_oper << right << "=";
cin >> result;
if(result == left + right)
{
cout << "YES";
}
else
{
cout << "NO";
}
break;
case 1:char_oper = '-';
cout << left << char_oper << right << "=";
cin >> result;
if(result == left - right)
{
cout << "YES";
}
else
{
cout << "NO";
}
break;
case 2:char_oper = '*';
cout << left << char_oper << right << "=";
cin >> result;
if(result == left * right)
{
cout << "YES";
}
else
{
cout << "NO";
}
break;
case 3:char_oper = '/';
cout << left << char_oper << right << "=";
cin >> result;
if(result == left / right)
{
cout << "YES";
}
else
{
cout << "NO";
}
break;
}
return 0;
}
利用随机数实现非数字变量的随机
0表示+
1表示-
2表示*
3表示/
用switch语句实现
这段代码比较巧妙,稍微琢磨一下