看上去好玩哦

#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;
}

井
井