#include #include _Bool checkwin_k (char Board[3][3],char turn) { if ((Board[0][0]==turn)&& (Board[1][0]==turn)&& (Board[2][0]==turn)) { return 1; }else if ((Board[0][1]==turn)&& (Board[1][1]==turn)&& (Board[2][1]==turn)) { return 1; }else if ((Board[0][2]==turn)&& (Board[1][2]==turn)&& (Board[2][2]==turn)) { return 1; }else if ((Board[0][0]==turn)&& (Board[0][1]==turn)&& (Board[0][2]==turn)) { return 1; }else if ((Board[1][0]==turn)&& (Board[1][1]==turn)&& (Board[1][2]==turn)) { return 1; }else if ((Board[2][0]==turn)&& (Board[2][1]==turn)&& (Board[2][2]==turn)) { return 1; }else if ((Board[0][0]==turn)&& (Board[1][1]==turn)&& (Board[2][2]==turn)) { return 1; }else if ((Board[0][2]==turn)&& (Board[1][1]==turn)&& (Board[2][0]==turn)) { return 1; }else{ return 0; } } _Bool Checkwin_ko(char Board[3][3],char Turn) { if ((Board[0][0]==Turn)&&(Board[1][0]==Turn)&&(Board[2][0]==Turn)) {return 1;} else if ((Board[0][0]==Turn)&&(Board[0][1]==Turn)&&(Board[0][2]==Turn)) {return 1;} else if ((Board[1][0]==Turn)&&(Board[1][1]==Turn)&&(Board[1][2]==Turn)) {return 1;} else if ((Board[2][0]==Turn)&&(Board[2][1]==Turn)&&(Board[2][2]==Turn)) {return 1;} else if ((Board[0][1]==Turn)&&(Board[1][1]==Turn)&&(Board[2][1]==Turn)) {return 1;} else if ((Board[0][2]==Turn)&&(Board[1][2]==Turn)&&(Board[2][2]==Turn)) {return 1;} else if ((Board[0][0]==Turn)&&(Board[1][1]==Turn)&&(Board[2][2]==Turn)) {return 1;} else if ((Board[0][2]==Turn)&&(Board[1][1]==Turn)&&(Board[2][0]==Turn)) {return 1;} } void printScreen(char game[3][3]) { printf(" _________________\n"); printf("|__%c__|__%c__|__%c__|\n",game[0][0],game[0][1],game[0][2]); printf("|__%c__|__%c__|__%c__|\n",game[1][0],game[1][1],game[1][2]); printf("|__%c__|__%c__|__%c__|\n",game[2][0],game[2][1],game[2][2]); return 0; } char nextturn(char XO){ if(XO=='X') { return 'O'; } else if(XO=='O') { return 'X'; } } _Bool checkEndGame (char p[3][3],char turn) { if (checkwin_k (p,turn) == 1) { return 1; } else { int i,j; for(i=0;i<3;i++) { for(j=0;j<3;j++) { if ((p[i][j]=='_')){ return 0; } } } return 1; } } void getPosition (char board[3][3],char turn) { int r,c; printf("Enter row,col \n"); scanf("%d",&r); scanf("%d",&c); if(board[r][c]=='_') { board[r][c]=turn; } else{ while(board[r][c]!='_'){ printf("Enter row,col again"); scanf("%d",&r); scanf("%d",&c); } board[r][c]=turn; } } int main() { printf("Hello Tic-Tac-Toe\n"); char board[3][3]; char turn='X'; int i,j; for(i=0;i<3;i++){ for(j=0;j<3;j++){ board[i][j]='_'; } } printScreen(board); printf("%c turns!!!\n",turn); getPosition(board,turn); printScreen(board); printf(" check %d\n",checkEndGame(board,turn)); while(checkEndGame(board,turn)==0){ turn = nextturn(turn); printf("%c turns!!!\n",turn); getPosition(board,turn); printScreen(board); } if(Checkwin_ko(board,turn)==1){ printf("%c Wins!!!\n"); }else{ printf("Game over\n"); } return 0; }