高精度整数计算器c语言,用C语言编写高精度计算器遇到了一个问题,求解答

代码在下面,我设置的是随便输点什么,不符合要求的话应该输出error,但是如果是第一次输错了,会报错,但接下来按什么键都显示error,如果是第一次输对了,第二次输错了,那么后面还是一直会报错,能帮我改下程序吗?

#include

#include

void main()

{

float jisuan(float *a,char *c,float*b);

/* 对jisuan函数进行声明 */

float a,b;

float jieguo,i;

char c,d;

while(1)

{

printf("请输入计算式\n");

for(i=1;i<10000;i++)

{

scanf("%f%c%f",&a,&c,&b);

jieguo=jisuan(&a,&c,&b);

/* 调用jisuan函数 */

printf("计算结果为:%g%c%g=%f\n",a,c,b,jieguo);

printf("是否要继续计算? 直接输入算式:继续; N:退出;\n");

d=getch();

if(d=='n'||d=='N')

break;

}

break;

}

}

float jisuan(float*a,char *c,float *b)

/* 定义jisuan函数 */

{

float jieguo=0;

switch(*c)

{

case '+':jieguo=*a+*b;

break;

case '-':jieguo=*a-*b;

break;

case '*':jieguo=*a**b;

break;

case '/':

if(*b==0)

printf("error");

/* 如果被除数为零,则输出“error” */

else jieguo=*a/(*b);

break;

default:printf("error");

/* 如果输入算式有误,则输出“error” */

}

return(jieguo);

/* 将计算值返回主函数 */

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值