#define N 20
/*建立棋盘*/
creat(char g[N][N])
{
FILE *fp;
int i,j;
fp=fopen ("game.txt","w");
for (i=0;it)
{
t=n;
x=i;
y=j;
flag=1;
}
n=0;
x2=i;y2=j;
if (g[x2][y2]==o||g[x2][y2]==x)
while (g[x2][y2]==g[++x2][y2])
{
n++;
}
if (g[x2][y2]== ||g[x2][y2]==1)
if (n>t)
{
t=n;
x=i;
y=j;
flag=2;
}
n=0;
x3=i;
y3=j;
if (g[x3][y3]==o||g[x3][y3]==x)
while (g[x3][y3]==g[x3][++y3])
{
n++;
}
if (g[x3][y3]== ||g[x3][y3]==1)
if (n>t)
{
t=n;
x=i;y=j;
flag=3;
}
n=0;
x4=i;
y4=j;
if (g[x4][y4]==x||g[x4][y4]==o)
while (g[x4][y4]==g[++x4][--y4])
{
n++;
// if (y4<=1)
break;
}
if (g[x4][y4]== ||g[x4][y4]==1)
if (n>t)
{
t=n;
x=i;
y=j;
flag=4;
}
n=0;
x5=i;
y5=j;
if (g[x5][y5]==o||g[x5][y5]==x)
while (g[x5][y5]==g[--x5][y5])
{
n++;
}
if (g[x5][y5]== ||g[x5][y5]==1)
if (n>t)
{
t=n;
x=i;
y=j;
flag=5;
}
n=0;
x6=i;
y6=j;
if (g[x6][y6]==o||g[x6][y6]==x)
while (g[x6][y6]==g[x6][--y6])
{
n++;
}
if (g[x6][y6]== ||g[x6][y6]==1)
if (n>t)
{
t=n;
x=i;
y=j;
flag=6;
}
n=0;
x7=i;
y7=j;
if (g[x7][y7]==o||g[x7][y7]==x)
while (g[x7][y7]==g[--x1][--y1])
{
n++;
}
if (g[x7][y7]== ||g[x7][y7]==1)
if (n>t)
{
t=n;
x=i;
y=j;
flag=7;
}
n=0;
x8=i;
y8=j;
if (g[x8][y8]==o||g[x8][y8]==x)
while (g[x8][y8]==g[--x8][++y8])
{
n++;
}
if (g[x8][y8]== ||g[x8][y8]==1)
if (n>t)
{
t=n;
x=i;
y=j;
flag=8;
}
}
switch (flag)
{
case 1:{while (g[++x][++y]!= &&g[x][y]!=1);if (g[x][y]==1){g[x][y]=o;while (g[++x][++y]!= );g[x][y]=1;}else g[x][y]=o;break;}
case 2:{while (g[++x][y]!= &&g[x][y]!=1);if (g[x][y]==1){g[x][y]=o;while (g[++x][y]!= );g[x][y]=1;}else g[x][y]=o;break;}
case 3:{while (g[x][++y]!= &&g[x][y]!=1);if (g[x][y]==1){g[x][y]=o;while (g[x][++y]!= );g[x][y]=1;}else g[x][y]=o;break;}
case 4:{while (g[++x][--y]!= &&g[x][y]!=1);if (g[x][y]==1){g[x][y]=o;while (g[++x][--y]!= );g[x][y]=1;}else g[x][y]=o;break;}
case 5:{while (g[--x][y]!= &&g[x][y]!=1);if (g[x][y]==1){g[x][y]=o;while (g[--x][y]!= );g[x][y]=1;}else g[x][y]=o;break;}
case 6:{while (g[x][--y]!= &&g[x][y]!=1);if (g[x][y]==1){g[x][y]=o;while (g[x][--y]!= );g[x][y]=1;}else g[x][y]=o;break;}
case 7:{while (g[--x][--y]!= &&g[x][y]!=1);if (g[x][y]==1){g[x][y]=o;while (g[--x][--y]!= );g[x][y]=1;}else g[x][y]=o;break;}
case 8:{while (g[--x][++y]!= &&g[x][y]!=1);if (g[x][y]==1){g[x][y]=o;while (g[--x][++y]!= );g[x][y]=1;}else g[x][y]=o;break;}
/*
case 1:while (g[++x][++y]!= );g[x][y]=o;break;
case 2:while (g[++x][y]!= );g[x][y]=o;break;
case 3:while (g[x][++y]!= );g[x][y]=o;break;
case 4:while (g[++x][--y]!= );g[x][y]=o;break;
case 5:while (g[--x][y]!= );g[x][y]=o;break;
case 6:while (g[x][--y]!= );g[x][y]=o;break;
case 7:while (g[--x][--y]!= );g[x][y]=o;break;
case 8:while (g[--x][++y]!= );g[x][y]=o;break;
*/ }
save (g);
renew (g);
return ;
}
//判断胜利方和胜利
judge(char g[N][N])
{
int i,j,n,t,x,y,x1,y1,x2,y2,x3,y3,x4,y4,x5,y5,x6,y6,x7,y7,x8,y8,flag;
int f[2];
getg(g);
for (i=0;it)
{
t=n;
x=i;
y=j;
}
n=0;
x2=i;
y2=j;
if (g[x2][y2]==o||g[x2][y2]==x)
while (g[x2][y2]==g[++x2][y2])
{
n++;
}
if (g[x2][y2]== ||g[x2][y2]==1)
if (n>t)
{
t=n;
x=i;
y=j;
}
n=0;
x3=i;
y3=j;
if (g[x3][y3]==o||g[x3][y3]==x)
while (g[x3][y3]==g[x3][++y3])
{
n++;
}
if (g[x3][y3]== ||g[x3][y3]==1)
if (n>t)
{
t=n;
x=i;y=j;
}
n=0;
x4=i;
y4=j;
if (g[x4][y4]==x||g[x4][y4]==o)
while (g[x4][y4]==g[++x4][--y4])
{
n++;
// if (y4<=1)
break;
}
if (g[x4][y4]== ||g[x4][y4]==1)
if (n>t)
{
t=n;
x=i;
y=j;
}
n=0;
x5=i;
y5=j;
if (g[x5][y5]==o||g[x5][y5]==x)
while (g[x5][y5]==g[--x5][y5])
{
n++;
}
if (g[x5][y5]== ||g[x5][y5]==1)
if (n>t)
{
t=n;
x=i;
y=j;
}
n=0;
x6=i;
y6=j;
if (g[x6][y6]==o||g[x6][y6]==x)
while (g[x6][y6]==g[x6][--y6])
{
n++;
}
if (g[x6][y6]== ||g[x6][y6]==1)
if (n>t)
{
t=n;
x=i;
y=j;
}
n=0;
x7=i;
y7=j;
if (g[x7][y7]==o||g[x7][y7]==x)
while (g[x7][y7]==g[--x1][--y1])
{
n++;
}
if (g[x7][y7]== ||g[x7][y7]==1)
if (n>t)
{
t=n;
x=i;
y=j;
}
n=0;
x8=i;
y8=j;
if (g[x8][y8]==o||g[x8][y8]==x)
while (g[x8][y8]==g[--x8][++y8])
{
n++;
}
if (g[x8][y8]== ||g[x8][y8]==1)
if (n>t)
{
t=n;