Existem várias formas de resolver esse problema, incluindo fazer todos os ifs prováveis para decidir cada vitória. No caso dos códigos abaixo, segui uma abordagem de primeira contar a soma de todos os números. Se a soma der 1, significa que só uma pessoa colocou 1. Se a soma der 2, significa que só uma pessoa colocou 0. Logo, primeiro fazemos a soma e depois perguntamos quem foi a pessoa que colocou 1 ou 0.
#include<stdio.h>intmain(){int A, B, C;while(scanf("%d%d%d",&A,&B,&C)!= EOF){if(A + B + C ==1){if(A ==1) printf("A\n");if(B ==1) printf("B\n");if(C ==1) printf("C\n"); }elseif(A + B + C ==2){if(A ==0) printf("A\n");if(B ==0) printf("B\n");if(C ==0) printf("C\n"); }elseprintf("*\n"); }return0;}
#include<iostream>usingnamespace std;intmain(){int A, B, C;while(cin >> A >> B >> C){if(A + B + C ==1){if(A ==1) cout <<'A'<< endl;if(B ==1) cout <<'B'<< endl;if(C ==1) cout <<'C'<< endl; }elseif(A + B + C ==2){if(A ==0) cout <<'A'<< endl;if(B ==0) cout <<'B'<< endl;if(C ==0) cout <<'C'<< endl; }else{ cout <<'*'<< endl; } }return0;}
whileTrue:try: A, B, C = [int(x)for x ininput().strip().split(' ')]if(A + B + C ==1):if(A ==1):print('A')if(B ==1):print('B')if(C ==1):print('C')elif(A + B + C ==2):if(A ==0):print('A')if(B ==0):print('B')if(C ==0):print('C')else:print('*')exceptEOFError:break