C语言 编写一个 n个位数加减法程序 如1+2+3-4 输出2

输入时应该是字符因为考虑到+-这两个字符,但是这时数字也是字符了,没法加减,请问有啥办法把字符变数字吗?还有我用的二维字符数组..求指点... 输入时应该是字符因为考虑到+-这两个字符, 但是这时数字也是字符了,没法加减,请问有啥办法把字符变数字吗? 还有我用的二维字符数组..求指点 展开
 我来答
243920161
2017-04-20 · TA获得超过1183个赞
知道小有建树答主
回答量:447
采纳率:0%
帮助的人:123万
展开全部
#include "stdio.h"

int main()
{
float a[100];//数字
char b[100];//运算符
int c;//数组长度
int d;//临时变量
float sum=0;//总和
float jisuan(float a,char c,float b);//普通四则运算

//输入
scanf("%f",a);
for(c=0;(b[c]=getchar())!='\n';c++)
scanf("%g",&a[c+1]);
b[c]='\0';

//计算
sum=a[0];
for(d=0;d<c;d++)
sum=jisuan(sum,b[d],a[d+1]);
printf("=%g\n",sum);

}

float jisuan(float a,char c,float b)
{
if(c=='+')
return a+b;
else if(c=='-')
return a-b;
else if(c=='*')
return a*b;
else if(c=='/')
return a/b;
else
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式