制作简单计算器。要求从键盘上进行加、减、乘、除四则运算(a运算符b形式输入),判断输入数据是否可以进行计算,若能计算,将计算结果输出。运行结果如下表所示。 请输入运算 (格式为数字a+(-,*,/)数字b) 80+120 200.000000
代码如下,如有帮助,请采纳一下,谢谢。
#include <stdio.h>
#include <stdlib.h>
#include <string>
int main()
{
char buf[100] = {0};
printf("请输入计算公式:");
gets(buf);
int len = strlen(buf);
int index = 0;
int type = -1; //0+ 1- *2 /3
float a = 0.0;
float b = 0.0;
int i = 0;
for (; i < len; i++ )
{
if (buf[i] == '+')
{
type = 0;
break;
}
else if(buf[i] == '-')
{
type = 1;
break;
}
else if(buf[i] == '*')
{
type = 2;
break;
}
else if(buf[i] == '/')
{
type = 3;
break;
}
}
if (type != -1)
{
char tmp1[10] = {0};
char tmp2[10] = {0};
for (int j = 0; j < i;j++)
tmp1[j] = buf[j];
int k = 0;
for(int j = i+1; j < len;j++,k++)
tmp2[k] = buf[j];
a = atof(tmp1);
b = atof(tmp2);
switch(type)
{
case -1:
printf("无法计算\n");
break;
case 0:
printf("%f\n",a + b);
break;
case 1:
printf("%f\n",a - b);
break;
case 2:
printf("%f\n",a * b);
break;
case 3:
printf("%f\n",a / b);
break;
}
}else
printf("无法计算\n");
//getchar();
//getchar();
return 0;
}