你好昨天我开始编程一个小Tic Tac Toe游戏,但今天我发现了一个错误。如果显示'(只是' X'或者' O'如果有人获胜),则游戏以Draw结束,并且计数器显示9但是它如果我在游戏和输入中犯了错误,也会结束34(可能的输入是1-9),我达到9(计数器)。
我想更改' /'到' B' 并使用 但是我得到了一份声明'在 {。
char Checker();
{
if (matrix[0][0] && matrix[0][1] && matrix[0][2] && matrix[1][0] && matrix[1][1] && matrix[1][2] && matrix[2][0] && matrix[2][1] && matrix[2][2] == 'X' || 'O')
return 'B';
}
你能帮我解决这个问题吗?如果您想查看完整的代码:https://pastebin.com/E5TzAG4t。 对不起,我的英语只是我在学校(德国)学到的一种语言。
编辑:这是检查代码1.看看有人赢了2.我在插入数字时犯了错误
char Win()
{
//Spieler X
if (matrix[0][0] == 'X' && matrix[0][1] == 'X' && matrix[0][2] == 'X')
return 'X';
if (matrix[1][0] == 'X' && matrix[1][1] == 'X' && matrix[1][2] == 'X')
return 'X';
if (matrix[2][0] == 'X' && matrix[2][1] == 'X' && matrix[2][2] == 'X')
return 'X';
if (matrix[0][0] == 'X' && matrix[1][0] == 'X' && matrix[2][0] == 'X')
return 'X';
if (matrix[0][1] == 'X' && matrix[1][1] == 'X' && matrix[2][1] == 'X')
return 'X';
if (matrix[0][2] == 'X' && matrix[1][2] == 'X' && matrix[2][2] == 'X')
return 'X';
if (matrix[0][0] == 'X' && matrix[1][1] == 'X' && matrix[2][2] == 'X')
return 'X';
if (matrix[2][0] == 'X' && matrix[1][1] == 'X' && matrix[0][2] == 'X')
return 'X';
//Spieler O
if (matrix[0][0] == 'O' && matrix[0][1] == 'O' && matrix[0][2] == 'O')
return 'O';
if (matrix[1][0] == 'O' && matrix[1][1] == 'O' && matrix[1][2] == 'O')
return 'O';
if (matrix[2][0] == 'O' && matrix[2][1] == 'O' && matrix[2][2] == 'O')
return 'O';
if (matrix[0][0] == 'O' && matrix[1][0] == 'O' && matrix[2][0] == 'O')
return 'O';
if (matrix[0][1] == 'O' && matrix[1][1] == 'O' && matrix[2][1] == 'O')
return 'O';
if (matrix[0][2] == 'O' && matrix[1][2] == 'O' && matrix[2][2] == 'O')
return 'O';
if (matrix[0][0] == 'O' && matrix[1][1] == 'O' && matrix[2][2] == 'O')
return 'O';
if (matrix[2][0] == 'O' && matrix[1][1] == 'O' && matrix[0][2] == 'O')
return 'O';
return '/';
}
char Checker()
{
if (matrix[0][0] && matrix[0][1] && matrix[0][2] && matrix[1][0] && matrix[1][1] && matrix[1][2] && matrix[2][0] && matrix[2][1] && matrix[2][2] == 'X' || 'O' || '1' || '2' || '3' || '4' || '5' || '6' || '7' || '8' || '9')
return 'B';
}
答案 0 :(得分:0)
好像你想要
if (matrix[0][0] && matrix[0][1] && matrix[0][2] && matrix[1][0] && matrix[1][1] && matrix[1][2] && matrix[2][0] && matrix[2][1] && matrix[2][2] == 'X' || 'O')
表示'如果m00和m01等是X或O',那可能不是意味着什么。你不得不说很长的路
if((m00 == 'o' || m00 == 'x') && (m01 == 'o' || m01 == 'x') ...