#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int CreateNumber ()
{
int a;
a= rand()%10+1;
return a;
}
//上为生成随机数的函数 名为CreateNumber 调用该函数后可返回一个随机数(其实单独为这个写一个函数我觉得没啥必要 但是机考要求你这么写呀)
int CreateQuestion ()
{
int x1 , x2 ;
x1= CreateNumber();
x2= CreateNumber(); //我是觉得为了这俩部分写个随机数函数真没必要 直接rand就行 就像下面这个op一样
printf("%d * %d = ?\n",x1,x2);
return x1*x2;
}
int CheekScore (int a,int b) //注 : 这个变量a和变量b 分别是你输入的答案 和经函数计算后的正确答案 该函数的目的是判断它俩是否相等 并给出Right/Wrong
{
if(a==b)
{
printf("Right\n");
return 3;
}
else
{
printf("Wrong\n");
return 4;
}
}
/* Q:为什么要return 3 return 4啊? 何意味?
A:这是我的小巧思 通过返回3和4 可以在后面起到一些小作用 请继续往下看
*/
void RW1 () //任务1:随机产生1-10之间正整数,出乘法问题,直到学生答对为止。
{
int Answer, TureAnswer, a=0;
while(a!=3) //在a不等于3时循环
{
TureAnswer = CreateQuestion();
scanf("%d",&Answer);
a = CheekScore (Answer , TureAnswer); //获取CheekScore的返回值3或4
}
printf("恭喜你已通过任务1,请再次输入数字 1 ~ 3 进入对应任务\n");
a=0; //重置a
return; // 退出函数
}
int main()
{
srand(time(NULL));
int n;
printf("请输入数字 1 ~ 3 进入对应任务\n");
while(scanf("%d",&n)==1)
{
if(n==1) RW1();
}
return 0;
}
//写完任务一后我饿了 任务二和任务三就不写了 拜拜