两种方法都是只有#1#2 AC
#include<bits/stdc++.h>
using namespace std;
int a=0,b=0,c=0;
void f(int &n,char c){
switch(c) {
case 'a':
n=a;
break;
case 'b':
n=b;
break;
case 'c':
n=c;
break;
default:
n=c-'0';
}
}
int main(){
string s;
cin>>s;
for(int i=0;i<s.size();i++){
switch(s[i]) {
case 'a':
f(a,s[i+3]);
break;
case 'b':
f(b,s[i+3]);
break;
case 'c':
f(c,s[i+3]);
break;
}
i+=4;
}
printf("%d %d %d",a,b,c);
return 0.0;
}
#include<bits/stdc++.h>
using namespace std;
int a=0,b=0,c=0;
void f(int &n,char c){
switch(c) {
case 'a':
n=a;
break;
case 'b':
n=b;
break;
case 'c':
n=c;
break;
default:
n=c-'0';
}
}
int main(){
char c1,c2;
while((scanf("%c:=%c;",&c1,&c2))==2){
switch(c1) {
case 'a':
f(a,c2);
break;
case 'b':
f(b,c2);
break;
case 'c':
f(c,c2);
break;
}
}
printf("%d %d %d",a,b,c);
return 0.0;
}