井
看上去好玩哦
#include <stdio.h>
int main()
{
int player = 0;
int choice = 0;
int winner = 0;
unsigned int row = 0;
unsigned int column = 0;
char board[3][3] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'}
};
int i = 0;
for( ; i < 9 && winner == 0 ; ++i)
{
printf("%c | %c | %c\n", board[0][0], board[0][1], board[0][2]);
printf("--|---|--\n");
printf("%c | %c | %c\n", board[1][0], board[1][1], board[1][2]);
printf("--|---|--\n");
printf("%c | %c | %c\n", board[2][0], board[2][1], board[2][2]);
player = i % 2 + 1;
do
{
printf("player %d, you are %c, enter number", player, player == 1 ? 'X' : 'O');
scanf("%d", &choice);
row = --choice / 3;
column = choice % 3;
}while(choice < 0 || choice > 8 || board[row][column] > '9');
board[row][column] = player == 1 ? 'X' : 'O';
if((board[0][0] == board[1][1] && board[0][0] == board[2][2]) ||
(board[0][2] == board[1][1] && board[0][2] == board[2][0]))
winner = player;
else
{
int n = 0;
for( ; n <= 2 ; ++n)
{
if((board[n][0] == board[n][1] && board[n][0] == board[n][2]) ||
(board[0][n] == board[1][n] && board[0][n] == board[2][n]))
winner = player;
}
}
}
printf("\n");
printf("%c | %c | %c\n", board[0][0], board[0][1], board[0][2]);
printf("--|---|--\n");
printf("%c | %c | %c\n", board[1][0], board[1][1], board[1][2]);
printf("--|---|--\n");
printf("%c | %c | %c\n", board[2][0], board[2][1], board[2][2]);
if(winner)
printf("winner is %d!", winner);
else
printf("no winner.");
return 0;
}