随机生成10道100以内的加 减 乘 除 取模 数学题 回答正确的加10分错误不加分(把正确结果打印出来) 然后显示最后成绩。(不用float类型)

  • Post author:
  • Post category:其他




c语言实现这个简单的功能

记录自己在嵌入式这行的学习,希望能够帮助到努力成长的你。



主要涉及知识点循环分支语句,随机函数


  1. 平台:ubuntu
  2. 代码:

    #include <stdio.h>

    #include <stdlib.h>

    #include <time.h>

    #include <sys/types.h>

    #include <unistd.h>

int main()

{

int x = 0, y = 0,z = 0, i = 0, num = 0, score = 0;//num玩家录入值
int Num = 0;//系统计算值
char c = 0;
srand(getpid());


for(i = 0; i < 10; i++)
{
	x = rand() % 100;
	y = rand() % 100;//x, y 两个随机操作数
	z = rand() % 5;

//获得运算符

switch(z)

{


case 0 : c = ‘+’;;break;

case 1 : c = ‘-’;break;

case 2 : c = ‘*’;break;

case 3 : c = ‘/’;break;

case 4 : c = ‘%’;

}

	while(c == '/' && y == 0)//除数若为0,重新生成除数至不为0
	{
		y = rand() % 100;
	}

//生成题目并录入回答

printf(“%d %c %d = “, x ,c ,y);

scanf(”%d”, &num);

//系统计算正确答案Num

if(c == ‘+’)

{


Num = x + y;

}

else if(c == ‘-’)

{


Num = x – y;

}

else if(c == ‘*’)

{


Num = x * y;

}

else if(c == ‘/’)

{


Num = x / y;

}

else

{


Num = x % y;

}

//判断正确与否,并计算分数

if(Num == num)

{


printf(“回答正确!加10分!\n”);

score += 10;

}

else

{


printf(“很遗憾!回答错误!\n”);

printf(“正确答案为%d\n”, Num);

}

}

printf(“\n”);

printf(“最终得分为:%d 分!\n”, score);

return 0;

}

3.结果如下:



版权声明:本文为weixin_44955413原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。