C语言 随机生成10个加法算式,输入每个算式的计算结果,判断计算是否正确,输出成绩?

C语言 随机生成10个加法算式,输入每个算式的计算结果,判断计算是否正确,输出成绩?,第1张

除法没有校验,有余数,输出整除即可;

#include "stdafx.h"

#include <stdlib.h>

#include <time.h>

int ChoiceFunc(int a, int b,int Suanfa)

{

int result = 0

switch (Suanfa)

{

case 0:

result = a + b

break

case 1:

result = a - b

break

case 2:

result = a * b

break

case 3:

if (b!=0)

{

result = a / b

}

break

default:

break

}

return result

}

int main()

{

int a1, b1, c1,jieguo,shuru

int jishu = 0

int secore=0

srand((unsigned)time(NULL))

for (int i = 0i <3000i++)

{

a1 = rand() % 100

b1 = rand() % 100

c1 = rand() % 4

jieguo = ChoiceFunc(a1, b1, c1)

if (jishu<10&&b1!=0)

{

if (jieguo >0 &&jieguo <100)

{

jishu++

switch (c1)

{

case 0:

printf("%d+%d= \n", a1, b1 )

printf("请输入结果:")

scanf("%d", &shuru)

if (shuru==jieguo)

{

secore++

printf("正确\n")

}

break

case 1:

printf("%d-%d= \n", a1, b1)

printf("请输入结果:")

scanf("%d", &shuru)

if (shuru == jieguo)

{

secore++

printf("正确\n")

}

break

case 2:

printf("%d*%d= \n", a1, b1)

printf("请输入结果:")

scanf("%d", &shuru)

if (shuru == jieguo)

{

secore++

printf("正确\n")

}

break

case 3:

printf("%d/%d= \n", a1, b1)

printf("请输入结果:")

scanf("%d", &shuru)

if (shuru == jieguo)

{

secore++

printf("正确\n")

}

break

default:

break

}

}

}

else

{

//jishu = 0

//printf("结束\n")

}

}

printf("结束,分数为%d\n", secore)

getchar()

getchar()

return 0

}

第1列数据全部输入:   =RANDBETWEEN(101,999),用于产生101到999之间的随机整数

第3列数据输入:  C2=RANDBETWEEN(100,A2),产生100到A2之间的随机整数,从而保证第3列的随机数字永远不大于第1列的数字。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11463497.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存