#include <stdio.h>
#include <stdlib.h>
#define rsize 3
#define csize 3
int
main()
{
char tictac[rsize][csize];
int a, b;
printf("WELCOME TO TIC TAC TOE \n");
for(a = 0; a < rsize; a++)
{
for(b = 0; b < csize; b++)
{
printf("Enter X or O: ");
scanf(" %c", &tictac[a][b]);
}
}
for(a = 0; a < rsize; a++)
{
if (tictac[a][0] == tictac[a][1] && tictac[a][1] == tictac[a][2]);
{
printf("Row %d has all %c's \n", a, tictac[a][0]);
}
if (tictac[0][a] == tictac[1][a] && tictac[1][a] == tictac[2][a]);
{
printf("Column %d has all %c's \n", a, tictac[0][a]);
}
}
system("pause");
return(0);
}
它应该是一个3x3 tictac toe游戏,但它似乎没有工作。问题是if statement
我不确定为什么它不起作用。有人帮帮我,指出我的问题吗?
答案 0 :(得分:5)
在if
语句的中间有一些额外的分号,这些分号会导致它们为空。所以你的代码实际上是
if (...) {
/* do nothing */
}
{
printf(...
}
并且始终执行printfs。摆脱';'在')'和'{'
之间答案 1 :(得分:1)
在IF(条件)之后,您放置了分号(;)。 删除它。