C语言随机出题100以内的加减法
#include
#include
#include
//定义方法
void Fun(int *sumScore, int num)
{
int inputNum;
scanf("%d", &inputNum);
if (num == inputNum)
{
printf("回答正确!\n");
*sumScore += 20;
}
else
{
printf("回答错误!请重新输入:\n");
scanf("%d", &inputNum);
if (num == inputNum)
{
printf("回答正确!\n");
*sumScore += 10;
}
else
{
printf("回答错误!正确答案:%d\n", num);
}
}
}
int main()
{
printf("共五题,第一次输入正确答案得20分,第二次输入正确答案得10分,否则不得分!\n请作答:\n");
int num1, num2, sumScore = 0, i = 1;
srand((unsigned int)time(NULL));
while (i <= 5) //随机出5道题
{
//生成一个随机数(1-100)
num1 = rand() % 100 + 1;
num2 = rand() % 100 + 1;
if (num1 + num2 <= 100 && num1 - num2 >= 0) //不允许两数的和或差超出0—100的范围
{
int choose = rand() % 2; // 0为+运算,1为减运算
if (choose == 0)
{
printf("第%d题:%d+%d=\n", i, num1, num2);
//调用方法
Fun(&sumScore, num1 + num2);
i++;
}
else if (choose == 1)
{
printf("第%d题:%d-%d=\n", i, num1, num2);
//调用方法
Fun(&sumScore, num1 - num2);
i++;
}
}
}
printf("得分:%d\n", sumScore);
return 0;
}