混合四则运算

代码:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
char getSignal(); //获取随机运算符函数

int getResult(int,int,char); //结果计算函数

int main()
{
int i,k,p,a[1000],b[1000];//用于保存10个产生的随机数
k=0;
char signal;
int get=0;
srand((unsigned int)time(NULL));//设置当前时间为种子
for (i = 0; i < 1000; ++i){
a[i] = rand()%100+1;//产生1~100的随机数
}
//打印生成的随机数
for (i = 0; i < 1000; ++i){
b[i] = rand()%100+1;//产生1~100的随机数
}

for(i=0;i<1000;i++) //开始算 
{ signal=getSignal();
if(signal=='-')
{
if(a[i]<b[i])
{
int temp;
temp=a[i];
a[i]=b[i];
b[i]=temp;
}
}
if(signal=='/')
{
if(b[i]==0)
{
int temp;
temp=a[i];
a[i]=b[i];
b[i]=temp;
}

p=getResult(a[i],b[i],signal);
if(k<=300)
{
if(p<=100)
{
printf("%d%c%d=%d",a[i],signal,b[i],p);

fflush(stdout);
printf ("\n");
Sleep(1000);
fflush(stdin); //清空输入缓冲区
k=k+1; 
}
else{/*printf("我爱学习!");*/}
}
else
{
return 0;
}
}
}


char getSignal()
{
char signal[4]={'+','-','*','/'};
srand((unsigned)time(NULL));
return signal[rand()%4];
}
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:
printf("运算符错误!\n");
}
return res;
}

运行成果:

 

心得体会:

现在才突然感觉编程不是那么枯燥,有时做完欣赏自己的成品,感觉巨像一件艺术品,唉,可是发现这个码农思想的时候我已经这把年纪了,不过王老师真的是挺会教导学生,真的,对天发誓上大学了,第一个碰到的那么温柔那么有教育心得的棒老师,给赞,写完的时候有一种飘飘然的感觉,感觉自己画的画能勇夺艺术节奥斯卡。写完博客,又莫名有一种充实感,毕竟是写给自己欣赏,回忆用的,感觉编程序真好, 还有,以后什么什么先进老师什么老师评选,在我的问卷里,老师“首当其冲”。我,爱,学,习!

猜你喜欢

转载自www.cnblogs.com/tmynb/p/10561930.html
今日推荐