#include<bits/stdc++.h>
using namespace std;
int main()
{
string d;getline(cin,d);
string a,b,e;
for(int i=0;i<d.size();i++)
{
if(d[i]==' '){b=d.erase(0,i+1);break;}
// 当遇到第一个空格时 将A,B分开
e=d[i];
a+=e;
}
int aa=0,bb=0;
for(int i=0;i<a.size();i++)
{
if(a[i]>='0'&&a[i]<='9')aa++;
}
for(int i=0;i<b.size();i++)
{
if(b[i]>='0'&&b[i]<='9')bb++;
}//stoi用法是将字符串转化为int类型,不知道的可以查一下
if(aa==a.size()&&a[0]!='0'&&stoi(a)<=1000)cout<<a;
else cout<<"?";//一定要注意A和B的范围,大于0小于等于1000
cout<<" + ";
if(bb==b.size()&&b[0]!='0'&&stoi(b)<=1000)cout<<b;
else cout<<"?";
cout<<" = ";
if(aa==a.size()&&bb==b.size()&&(a[0]!='0'&&b[0]!='0')&&stoi(a)<=1000&&stoi(b)<=1000)cout<<stoi(a)+stoi(b);
else cout<<"?";
}
本题易错点:
1、A和B的范围【0--1000】
2、将字符串转化为int类型可以用stoi也可以手搓