首页 > 其他 > 详细

四则运算

时间:2020-11-04 21:07:35      阅读:46      评论:0      收藏:0      [点我收藏+]

软件191 陈宇 3170704324

include <stdio.h>

include <ctype.h>

include <time.h>

include <stdlib.h>

include <windows.h>

define IDNO_LENGTH 6

define CALC_KIND 4

char getSignal();

int getResult(int, int, char);

void takeTest();

void falsePrint(int);

void correctPrint(int);

//main函数

void main()

{
while (1)

{
	takeTest();

}

}

//获取随机运算符

char getSignal()

{
char signal[CALC_KIND] = { ‘+‘, ‘-‘, ‘*‘, ‘/‘ };

srand((unsigned)time(NULL));

return signal[rand() % 4];

}

//获取随机数

int random(double start, double end)

{
return (int)(start + (end - start)*rand() / (RAND_MAX + 1.0));

}

//运算

int getResult(int num1, int num2, char signal)

{
int res;

switch (signal)

{
case ‘+‘:

	res = num1 + num2; break;

case ‘-‘:

	res = num1 - num2; break;

case ‘*‘:

	res = num1*num2; break;

case ‘/‘:

	res = num1 / num2; break;

default:

	res = 0;

	printf("运算符不符合规则\n");

}

return res;

}

//列出题目

void takeTest()

{
int giveRes;

int num1;

int num2;

char signal;

int printFlag;



srand((unsigned)time(NULL));

signal = getSignal();

num1 = random(0, 100);

num2 = random(1, 100);



if (signal == ‘-‘)

{
	if (num1 < num2)

	{
		int temp;

		temp = num1;

		num1 = num2;

		num2 = temp;

	}

}



if (signal == ‘/‘)

{
	if (num2 == 0)

	{
		int temp;

		temp = num1;

		num1 = num2;

		num2 = temp;

	}

}



printf("%d%c%d=", num1, signal, num2);

scanf("%d", &giveRes);

fflush(stdin);



if (getResult(num1, num2, signal) == giveRes)

{
	printFlag = random(1, 5);

	correctPrint(printFlag);

}

else

{
	printFlag = random(1, 4);

	falsePrint(printFlag);

	printf("正确答案:%d\n", getResult(num1, num2, signal));

}

}

//回答正确打印信息

void correctPrint(int num)

{
switch (num)

{
case 1:

	printf("You‘re right!\n"); break;

case 2:

	printf("It‘s OK!\n"); break;

case 3:

	printf("Correct!\n"); break;

case 4:

	printf("Perfect!\n"); break;

case 5:

	printf("Good!\n"); break;

default:

	printf("Powerful!\n"); break;

}

}

//回答错误打印信息

void falsePrint(int num)

{
switch (num)

{
case 1:

	printf("You‘re lost!"); break;

case 2:

	printf("Failure!"); break;

case 3:

	printf("Come on!"); break;

case 4:

	printf("It‘s wrong!"); break;

default:

	printf("Incorrect!"); break;

}

}
技术分享图片

软件191 陈宇 3170704324

四则运算

原文:https://www.cnblogs.com/chenyu321/p/13927855.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!