c语言中一百以内相乘的积,一百以内的加减乘除法游戏....

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#include

#include

void main()

{

int n,i,m,time1=0;long answer1,answer;float a[10]; char c[2],str[10];

long result(float a[],char str[],int n);

begin:

time1=0;

srand(time(NULL));

n=(rand()%10)+3;

if(n/2)

n=n+1;

for(i=0;i

a[i]=rand()%300+1;

for(i=0;i

{

m=rand()%4;

switch(m)

{

case 0:str[i]='+';break;

case 1:str[i]='-';break;

case 2:str[i]='*';break;

case 3:str[i]='/';break;

}

}

printf("this is a text please show right answer\nyou have 3 times\nGOOD LUCK\n");

for(i=0;i

printf("%.2f%c",a[i],str[i]);

printf("%.2f",a[(n+1)/2-1]);

printf("\n");

printf("input your answer\n");

answer=result(a,str,n);

do

{

scanf("%ld",&answer1);

getchar();

time1++;

}while(answer1!=answer&&time1<=3);

if(answer==answer1)

printf("you are right\n");

if(answer!=answer1)

printf("sorry the right answer is %ld\n",answer);

printf("try again?Y/N\n");

scanf("%s",c);

if(c[0]=='y'||c[0]=='Y')

goto begin;

}

long result(float a[],char str[],int n)

{

int i,j,a1,b;

a1=(n-1)/2;

b=(n+1)/2;

for(i=0;i

{

if(str[i]=='*')

{

a[i]=a[i]*a[i+1];

a1--;b--;

for(j=i;j

str[j]=str[j+1];

for(j=i+1;j

a[j]=a[j+1];

i--;

}

if(str[i]=='/')

{

a[i]=a[i]/a[i+1];

a1--;b--;

for(j=i;j

str[j]=str[j+1];

for(j=i+1;j

a[j]=a[j+1];

i--;

}

}

for(i=0;i

{

if(str[i]=='+')

{

a[i]=a[i]+a[i+1];

a1--;b--;

for(j=i;j

str[j]=str[j+1];

for(j=i+1;j

a[j]=a[j+1];

i--;

}

if(str[i]=='-')

{

a[i]=a[i]-a[i+1];

a1--;b--;

for(j=i;j

str[j]=str[j+1];

for(j=i+1;j

a[j]=a[j+1];

i--;

}

}

return((long)a[0]);

}

别人说的题目比你还清楚呢 这个代码转帖�

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值