#include<bits/stdc++.h>
using namespace std;
int a=0,b=0,c=0;
void f(string s){
int *p=NULL,*q=NULL,temp=0;
//判断被赋值的变量
if(s[0]=='a'){
p=&a;
}
else if(s[0]=='b'){
p=&b;
}
else{
p=&c;
}
//判断值
if(s[3]=='a'){
q=&a;
}
else if(s[3]=='b'){
q=&b;
}
else if(s[3]=='c'){
q=&c;
}
else{
temp=s[3]-'0';
q=&temp;
}
//赋值操作
*p=*q;
}
int main() {
string s,temp;
getline(cin,s);
for(int i=0;i<s.size();i+=5){
temp=s.substr(i,4);
f(temp);
}
cout<<a<<" "<<b<<" "<<c<<endl;
}
评测点2
in
c:=5;a:=b;b:=c;c:=a;a:=a;b:=b;c:=c;a:=c;c:=a;a:=b;b:=c;c:=a;a:=a;b:=b;c:=c;a:=c;b:=a;a:=c;c:=b;a:=2;c:=a;b:=9;
out
2 9 2
我不知道哪里出现错误