博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实验1
阅读量:4466 次
发布时间:2019-06-08

本文共 1957 字,大约阅读时间需要 6 分钟。

#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;
}
}

转载于:https://www.cnblogs.com/diaoyi/p/4368148.html

你可能感兴趣的文章
python学习记录一
查看>>
IP通信基础 4月1日
查看>>
KeyProvider
查看>>
空指针为什么能调用成员函数?
查看>>
用MySQL的存储过程来实现一些经典函数
查看>>
React (2) -- State and Lifecycle
查看>>
【转】在EmEditor上编译并运行JAVA
查看>>
关于SqlDateTime溢出的问题
查看>>
jquery下php与ajax的数据交换方式
查看>>
魅蓝Note有几种颜色 魅蓝Note哪个颜色好看
查看>>
使用PullToRefresh实现下拉刷新和上拉加载
查看>>
透明度百分比与十六进制转换
查看>>
HBase表预分区
查看>>
NSBundle,UIImage,UIButton的使用
查看>>
GridView 中Item项居中显示
查看>>
UML类图五种关系与代码的对应关系
查看>>
如何理解作用域
查看>>
从无到满意offer,你需要知道的那些事
查看>>
P1516 青蛙的约会 洛谷
查看>>
SDOI2011 染色
查看>>