社区讨论
80分,求调
P1957口算练习题参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @miwkd5qy
- 此快照首次捕获于
- 2025/12/08 11:00 3 个月前
- 此快照最后确认于
- 2025/12/08 11:02 3 个月前
CPP
#include<bits/stdc++.h>
using namespace std;
string sign,x,y;
int transtonum(string s){
int num=0;
for(int i=0;i<s.size();i++){
num=num*10+(s[i]-'0');
}
return num;
}
string transtostr(int num1){
string s="=",temps;
if(num1<0){
s+="-";
num1=-num1;
}
if(num1==0){
s="0";
return s;
}
while(num1!=0){
temps+=num1%10+'0';
num1/=10;
}
for(int i=temps.size()-1;i>=0;i--){
s+=temps[i];
}
return s;
}
void solve(){
string temp;
cin>>temp;
int x1,y1;
string s,res;
if(temp=="a"||temp=="b"||temp=="c"){
if(temp=="a") sign="+";
else if(temp=="b") sign="-";
else if(temp=="c") sign="*";
//sign=temp;
cin>>x>>y;
x1=transtonum(x),y1=transtonum(y);
int emmm;
if(sign=="+") emmm=x1+y1;
else if(sign=="-") emmm=x1-y1;
else if(sign=="*") emmm=x1*y1;
s=transtostr(emmm);
res=x+sign+y+s;
}
else {
x=temp;
cin>>y;
int emmm;
x1=transtonum(x),y1=transtonum(y);
if(sign=="+") emmm=x1+y1;
else if(sign=="-") emmm=x1-y1;
else if(sign=="*") emmm=x1*y1;
s=transtostr(emmm);
res=x+sign+y+s;
}
cout<<res<<endl;
cout<<res.size()<<endl;
}
int main(){
int t;
cin>>t;
while(t--)
solve();
return 0;
}
回复
共 0 条回复,欢迎继续交流。
正在加载回复...