
#include <stdio.h>
int main()
{
int a, b;
scanf("%d%d", &a, &b);
int result=(a==1&&b==2) || (a == 2 && b == 3) || (a== 3&&b==1)?1:2;
if (a == b) printf("平局");
else printf("player %d win.", result);
}

#include <stdio.h>
int main()
{
int a, b;
scanf("%d%d", &a, &b);
int result=(a==1&&b==2) || (a == 2 && b == 3) || (a== 3&&b==1)?1:2;
if (a == b) printf("平局");
else printf("player %d win.", result);
}
你输入12,直接被当作一个数字整个被a获取了,然后下一行的12被整个给了b,所以a==b
你有2个修改办法,一个是
#include <stdio.h>
int main()
{
char a, b;
scanf("%c%c", &a, &b);
int result=(a=='1'&&b=='2') || (a == '2' && b == '3') || (a== '3'&&b=='1')?1:2;
if (a == b) printf("平局");
else printf("player %d win.", result);
}
另一个是输入的时候加上一个空格
比如
1 2