题目描述
小新同学AC了a+b后发现这个题目简直是Too Simple, 于是找学长出有意思的题目,学长于是问: “ 现在a 和 b 都是 一个表达式,你来算它们的和吧~”,于是学长写了两个等式:
1+2+3+4
4+3+2+1
解释道: “第一个是a, 第二个是b,你算下a+b吧~”
输入
输入两行,每行是一个表达式,只有个位数和加减符号组成,计算他们相加后的数,每个表达数中数字个数不超过5个,保证前后没有运算符号且每两个数字之间有一个运算符号, 数字[0,9]
输出
输出两个表达式相加后值
样例输入
1+2+3+4
4-3-2-1
样例输出
8
#include <stdio.h>
int main()
{
char in;
int flag=1,a=0;//in判断+-,转化为int_flag做乘法,a为输入数
while(1)
{
in=getchar();
if(in=='\n') break;//换行退出
else if(in=='+'){flag=1;continue;}//加法
else if(in=='-'){flag=-1;continue;}//减法
else a+=flag*(in-'0');//运算
}
flag=1;//重置第二行首元素加
//第二行重复算法
while(1)
{
in=getchar();
if(in=='\n') break;
else if(in=='+'){flag=1;continue;}
else if(in=='-'){flag=-1;continue;}
else a+=flag*(in-'0'); }
printf("%d",a);//输出
}