编辑代码

#include <stdio.h>
char board[3][3];
void initialize_board()
{
  for (int row = 0;row <3;row++)
  {
   for (int col = 0; col<3;col++)
   {
    board[row][col] = ' ';
   }
  }
}
void print_board()
{
  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]);
 }
int check_win(char player)
{
 for (int i =0;i<3;i++)
 {
  	if(board[i][0] == player && board[i][1]==player && board[i][2] == player)
  {
   return 1;
  }
    if(board[0][i] == player && board[1][i]==player && board[2][i] == player)
  {
   return 1;
  }
    if(board[0][0] == player && board[1][1]==player && board[2][2] == player)
  {
   return 1;
  }
 	if(board[0][2] == player && board[1][1]==player && board[2][0] == player)
  {
   return 1;
  }
	 return 0;
 }
}
int main()
{
   /*  Write C code in this online editor and run it. */
   int row, col;
   char player = 'X';
   
   initialize_board();
   while(1)
   {
    printf("Player %c' s turn.\n",player);
	printf("Enter row(0-2):");
	scanf("%d",&row);
	printf("Enter column(0-2):");
	scanf("%d",&col);
	   
	if(row < 0||row>2 ||col<0 ||col>2)
	{
	 printf("Invalid input. Try again.\n");
	 continue;
	}
	 if(board[row][col] != ' ')
	 {
		 printf("That space is already occupied. Try again.\n");
		 continue;
	 }  
	   board[row][col] = player;
	   print_board();
	   
	   if(check_win(player))
	   {
	    printf("Player %c wins!\n",player);
		break;
	   }
	   
	   if(player == 'X')
	   {
	     player = '0';
	   }
	   else
	   {
	    player = 'X';
	   }
   }
	return 0;
}