0
已解决
王梓澳
中级光能
中级光能
我的代码:
#include <string>
#include <sstream>
#include <iostream>
using namespace std;
int main ()
{
string a,s1,s2;
getline (cin,a);
int falg=0;
for (int i=0;i<a.size();i++)
{
if (a[i]!='+')
s1[i]=a[i];
if (a[i]=='+')
{
falg=i+1;
break;
}
}
for (int i=falg;i<a.size();i++)
s2[i]=a[i];
int j1,j2;
stringstream z1,z2;
z1<<s1;
z1>>j1;
z2<<s2;
z2>>j2;
int h=j1+j2;
cout<<h;
return 0;
}
题目:
从键盘输入任意两个整数的加法表达式,如35+53(表达式长度不超过10位),计算并输出计算的结果。(注:表达式是一个字符数组,如定义的是2个变量,则不给分!)
运行结果:
哪错了?
代码不要,是要哪错了?
王梓澳在2018-04-21 10:27:26追加了内容
#include <string>
#include <sstream>
#include <iostream>
using namespace std;
int main ()
{
string a,s1,s2;
getline (cin,a);
int falg=0;
for (int i=0;i<a.size();i++)
{
if (a[i]!='+')
s1[i]=a[i];
if (a[i]=='+')
{
falg=i+1;
break;
}
}
for (int i=falg;i<a.size();i++)
s2[i-falg]=a[i];
int j1,j2;
stringstream z1,z2;
z1<<s1;
z1>>j1;
z2<<s2;
z2>>j2;
int h=j1+j2;
cout<<h;
return 0;
}
还是错的!