首页 > 其他 > 详细

四则运算 最新修改版

时间:2015-03-27 19:44:25      阅读:281      评论:0      收藏:0      [点我收藏+]
#include<stdio.h>
#include<malloc.h>
#include <conio.h> 
#include <stdlib.h>
#include <time.h>
#include <string.h>
char fuhao()
{

int xuanzhe;
time_t t;
srand((unsigned)time(&t));
xuanzhe=rand()%4+1;
switch(xuanzhe)
{
case 1:return+;
case 2:return-;
case 3:return*;
case 4:return/;
}
}
void main()
{
float shuru3;
time_t t;
int geshu,fanwei,shuliang,shu1,shu2,defen,shuru,xuanzhe,shu3,shuliang1,xuanzhe2,fujiati,shu4;
float b;
char c,c1;
char fenshu[10];
static char fenshudaan[10];
printf("请输入四则数目的个数");
printf("1:2个数");
printf("2:3个数");
printf("数值个数:");
scanf("%d",&geshu);
while(geshu!=1&&geshu!=2)
{
printf("输入错误,请从新输入");
printf("1:2个数");
printf("2:3个数");
}
printf("请输入四则运算最大的数目(最好10-100):");
scanf("%d",&fanwei);
printf("请输入题目的数量:");
scanf("%d",&shuliang);
if(geshu==1)
{

for(int i=1;i<=shuliang;i++)
{
c=fuhao();
srand((unsigned)time(&t));
shu1=rand()%fanwei+1;
shu2=rand()%fanwei+1;
if(c==+)
{defen=shu1+shu2;
}
else if(c==-)
{defen=shu1-shu2;
}
else if(c==*)
{defen=shu1*shu2;
}
else if(c==/)
{defen=shu1/shu2;
}
printf("第%d题:%d%c%d=",i,shu1,c,shu2);
scanf("%d",&shuru);
if(shuru==defen)
{
printf("正确!\n");
}
else
{
printf("错误!\n");
}
}
}

 

 

 

if(geshu==2)
{    
for(int ii=1;ii<=shuliang;ii++)
{
srand((unsigned)time(&t));
shu1=rand()%fanwei+1;
shu2=rand()%fanwei+1;
shu3=rand()%fanwei+1;
shu4=rand()%16+1;

switch(shu4)
{
case 1:c1=*;c=-;
shuliang1=shu1*shu2-shu3;break;
case 2:c1=*;c=+;
shuliang1=shu1*shu2+shu3;break;
case 3:c1=/;c=-;
shuliang1=shu1/shu2-shu3;break;
case 4:c1=/;c=+;
shuliang1=shu1/shu2+shu3;break;
case 5:c1=/;c=/;
shuliang1=shu1/shu2/shu3;break;
case 6:c1=/;c=*;
shuliang1=shu1/shu2*shu3;break;
case 7:c1=*;c=+;
shuliang1=shu1*shu2+shu3;break;
case 8:c1=*;c=*;
shuliang1=shu1*shu2*shu3;break;
case 9:c1=-;c=+;
shuliang1=shu1-shu2+shu3;break;
case 10:c1=-;c=-;
shuliang1=shu1-shu2-shu3;break;
case 11:c1=-;c=*;
shuliang1=shu1-shu2*shu3;break;
case 12:c1=-;c=/;
shuliang1=shu1-shu2/shu3;break;
case 13:c1=+;c=-;
shuliang1=shu1+shu2-shu3;break;
case 14:c1=+;c=+;
shuliang1=shu1+shu2+shu3;break;
case 15:c1=+;c=*;
shuliang1=shu1+shu2*shu3;break;
case 16:c1=+;c=/;
shuliang1=shu1+shu2/shu3;break;
}
printf("第%d题:%d%c%d%c%d=",ii,shu1,c1,shu2,c,shu3);
scanf("%d",&shuru);
printf("%d",shuru);
if(shuru==shuliang1)
{
printf("正确!\n");
}
else
{
printf("错误!\n");
}
}
printf("是否做附加题(1:是。2:否。):");
scanf("%d",&fujiati);
if(fujiati==1)
{
srand((unsigned)time(&t));
xuanzhe2=rand()%5+1;
switch(xuanzhe2)
{
case 1:
strcpy(fenshu,"2/3");
printf("2/(4-1)=");    
scanf("%s",fenshudaan);


break;
case 2:
printf("5/(13-1)=");
strcpy(fenshu,"5/12 ");
scanf("%s",fenshudaan);

break;
case 3:
strcpy(fenshu,"3/7");
printf("(1+2)/7=");
scanf("%s",fenshudaan);

break;

case 4:
strcpy(fenshu,"1/3");
printf("(4-3)/3=");    
scanf("%s",fenshudaan);


break;
case 5:
strcpy(fenshu,"21");
printf("(4+3)*3=");    
scanf("%s",fenshudaan);
break;

}

if(!strcmp(fenshu,fenshudaan))
{
printf("%s正确!",fenshudaan);
}
else
{
printf("%s错误!",fenshudaan);
}

}
else
{
printf("程序结束!");
exit(0);
}

printf("程序结束!");

}
}
  

技术分享

心得体会:修改了很多if-else语句,修改了某些bug,修改了某些表达不清晰的提示。

四则运算 最新修改版

原文:http://www.cnblogs.com/shaojiawen/p/4372543.html

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