Tic-Tac-Toe Game c ++

时间:2014-07-09 13:52:07

标签: c++

XO Game C ++

此代码仅返回"它是一个领带!!" ..我的代码中的错误是什么?

#include <stdio.h>

int main()
{
char a1,b1,c1,a2,b2,c2,a3,b3,c3;

scanf("%c%c%c\n%c%c%c\n%c%c%c",&a1,&b1,&c1,&a2,&b2,&c2,&a3,&b3,&c3);

if(a1==b1==c1=='X'||a2==b2==c2=='X'||a3==b3==c3=='X'||a1==a2==a3=='X'
   ||b1==b2==b3=='X'||c1==c2==c3=='X'||a1==b2==c3=='X'||c1==b2==a3=='X'){

    printf("X wins\n");

   }

if(a1==b1==c1=='O'||a2==b2==c2=='O'||a3==b3==c3=='O'||a1==a2==a3=='O'
   ||b1==b2==b3=='O'||c1==c2==c3=='O'||a1==b2==c3=='O'||c1==b2==a3=='O'){

    printf("O wins\n");

   }

if(a1!=b1!=c1||a2!=b2!=c2||a3!=b3!=c3||a1!=a2!=a3
   ||b1!=b2!=b3||c1!=c2!=c3||a1!=b2!=c3||c1!=b2!=a3){

    printf("It’s a Tie !!\n");

   }
}

1 个答案:

答案 0 :(得分:0)

a1==b1==c1=='X'

这不符合你的想法。它将a1b1==c1=='X'的布尔结果进行比较,可能会给false

要检查它们是否完全相同,您需要

a1=='X' && b1=='X' && c1=='X'