#include<bits/stdc++.h>
using namespace std;
int main()
{
int num;
cin>>num;
cin.get();
string str[600];
for(int i=0;i<num;i++)
{
getline(cin,str[i]);
}
// for(int i=0;i<num;i++)
// {
// cout<<str[i]<<endl;
// }
char k;
for(int i=0;i<num;i++)
{
string str1,str2,str3,str4;
if(str[i][0]>='a'&&str[i][0]<='c')
{
k=str[i][0];
str1=str[i].substr(2,str[i].size()-2);
int space;
space=str1.find(' ',0);
str2=str1.substr(0,space);
str3=str1.substr(space+1,str1.size()-space-1);
int s1,s2,s3;
s1=stoi(str2,0,10);
s2=stoi(str3,0,10);
if(k=='a')
{
s3=s1+s2;
cout<<str2<<"+"<<str3<<"=";
}
else if(k=='b'){
s3=s1-s2;
cout<<str2<<"-"<<str3<<"=";
}
else if(k=='c'){
s3=s1*s2;
cout<<str2<<"*"<<str3<<"=";
}
str4=to_string(s3);
cout<<str4<<endl;
cout<<str2.size()+str3.size()+str4.size()+2<<endl;
}
else
{
string str1,str2,str3,str4;
str1=str[i];
int space;
space=str1.find(' ',0);
str2=str1.substr(0,space);
str3=str1.substr(space+1,str1.size()-space-1);
int s1,s2,s3;
s1=stoi(str2,0,10);
s2=stoi(str3,0,10);
if(k=='a')
{
s3=s1+s2;
cout<<str2<<"+"<<str3<<"=";
}
else if(k=='b'){
s3=s1-s2;
cout<<str2<<"-"<<str3<<"=";
}
else if(k=='c'){
s3=s1*s2;
cout<<str2<<"*"<<str3<<"=";
}
str4=to_string(s3);
cout<<str4<<endl;
cout<<str2.size()+str3.size()+str4.size()+2<<endl;
}
}
return 0;
}
https://blog.csdn.net/wetqadsg/article/details/127825209
不知道你这个问题是否已经解决, 如果还没有解决的话:抱歉,由于缺乏完整的错误信息和源代码,无法准确解决问题。建议您调试程序并检查可能导致RE错误的因素,包括数组越界、空指针引用、栈溢出等。您可以使用gdb或其他调试器进行调试,或者在代码中添加printf语句来帮助定位错误。我也建议您仔细检查题目要求和提交格式,确保您的程序符合规范。