输入
输入两行,每行是一个表达式,只有个位数和加减符号组成,计算他们相加后的数,每个表达数中数字个数不超过5个,保证前后没有运算符号且每两个数字之间有一一个运算符号,数字[0,9]
输出
输出两个表达式相加后值
样例输入
1+2+3+44-3-2-1
样例输出
8
输入
输入两行,每行是一个表达式,只有个位数和加减符号组成,计算他们相加后的数,每个表达数中数字个数不超过5个,保证前后没有运算符号且每两个数字之间有一一个运算符号,数字[0,9]
输出
输出两个表达式相加后值
样例输入
1+2+3+44-3-2-1
样例输出
8
包含其他输入后读入多行字符串
例如一些编程题要求先输入字符串行数,然后再一行一行读入字符串。如果正常顺写编程的话,会发现第一行字符串读入的是空,后续才能正常录入每行字符串。
这是因为第一行输入一个int数据后,换行符并没有被忽略,直接被准备读入第一行字符串的getline俘获。
所以需要在第一行输入一个int数据后,调用cin.ignore()忽略下面的一个流录入,将其抛弃。
int N;
cin>>N;
cin.ignore(); //取消换行键的读入
string strCinLine[100];
for(int i =0;i<N;i++)
getline(cin,strCinLine[i]);
或者给strCinLine动态申请空间,节省空间开销。
int N;
cin>>N;
cin.ignore(); //取消换行键的读入
string* strCinLine = new string[N];
for(int i =0;i<N;i++)
getline(cin,strCinLine[i]);
delete []strCinLine; //记得释放动态空间
strCinLine = NULL;