#include<stdio.h>
#include<conio.h>
char a[3][3]={'0','1','2','3','4','5','6','7','8'};
int checkwin();
void board();
int main()
{
int ch,player=1,i;
char make;
do
{
board();
player= (player % 2) ? 1 : 2;
printf(" player no. %d",player);
scanf("%d",&ch);
make= (player==1) ? 'X': 'O';
if(ch==1 && a[1][1]=='1')
{
a[1][1]=make;
}
else if(ch==2 && a[1][2]=='2')
{
a[1][2]=make;
}
else if(ch==3 && a[1][3]=='3')
{
a[1][3]=make;
}
else if(ch==4 && a[2][1]=='4')
{
a[2][1]=make;
}
else if(ch==5 && a[2][2]=='5')
{
a[2][2]=make;
}
else if(ch==6 && a[2][3]=='6')
{
a[2][3]=make;
}
else if(ch==7 && a[3][1]=='7')
{
a[3][1]=make;
}
else if(ch==8 && a[3][2]=='8')
{
a[3][2]=make;
}
else if(ch==9 && a[3][3]=='9')
{
a[3][3]=make;
}
else
{
printf("invalid choice");
player--;
getch();
}
i=checkwin();
player++;
}
while(i==-1);
board();
if(i==1)
printf("player %d win",--player);
else
printf("game over");
getch();
return 0;
}
int checkwin()
{
char a[3][3];
if(a[1][1]==a[1][2] && a[1][2]==a[1][3])
return 1;
else if(a[2][1]==a[2][2] && a[2][2]==a[2][3])
return 1;
else if(a[3][1]==a[3][2] && a[3][2]==a[3][3])
return 1;
else if(a[1][1]==a[2][1] && a[2][1]==a[3][1])
return 1;
else if(a[1][2]==a[2][2] && a[2][2]==a[3][2])
return 1;
else if(a[1][3]==a[2][3] && a[2][3]==a[3][3])
return 1;
else if(a[1][1]==a[2][2] && a[2][2]==a[3][3])
return 1;
else if(a[1][3]==a[2][2] && a[2][2]==a[3][1])
return 1;
else if(a[1][1]!=a[1][2] && a[1][2]!=a[1][3] &&
a[2][1]!=a[2][2] && a[2][2]!=a[2][3] &&
a[3][1]!=a[3][2] && a[3][2]!=a[3][3] &&
a[1][1]!=a[2][1] && a[2][1]!=a[3][1] &&
a[1][2]!=a[2][2] && a[2][2]!=a[3][2] &&
a[1][3]!=a[2][3] && a[2][3]!=a[3][3] &&
a[1][1]!=a[2][2] && a[2][2]!=a[3][3] &&
a[1][3]!=a[2][2] && a[2][2]!=a[3][1])
return 0;
else
return -1;
}
void board()
{
clrscr();
printf("TIC-TAC-TOE GAME\n\n\n");
printf("PLAYER 1 (X) ----- PLAYER 2 (O)\n\n\n");
printf(" | | \n");
printf(" %c | %c | %c \n",a[1][1],a[1][2],a[1][3]);
printf("____|____|____\n");
printf(" | | \n");
printf(" %c | %c | %c \n",a[2][1],a[2][2],a[2][3]);
printf("____|____|____\n");
printf(" | | \n");
printf(" %c | %c | %c \n",a[3][1],a[3][2],a[3][3]);
printf(" | | \n");
}
What I have tried:
i make tic toe game in 2 d array but error happen . sir please check what wrong happen .