初始设定:
1、下棋输入1,退出输入0
2、玩家用*棋子,电脑用#棋子
3、棋盘的行列数相同,棋子均下在”空格”内
4、判断输赢的规则:只要有n个同类棋子在棋盘中形成一行,一列,一斜线,
则判定函数输出1,否则输出0.
判定函数功能:先判断第一行中是否有一串棋子满足赢的条件,如果满足,返回1,否则返回0,
然后再逐渐判断第二行,第三行,...
for ( i = 0; i < SIZE; i++)
{
for (j = 0; j < SIZE; j++)
{
if (((arr[i][j] == qi) && (arr[i][j - 1] != qi))
|| ((arr[i][j] == qi) && (j == 0)))
{
flag1 = traverseArr1(i, j, qi, arr);
if (flag1 >= numInaRow)
{
return 1;
}
}
}
}
int traverseArr1(int i, int j, char qi, char arr[SIZE][SIZE])
{
int flag = 0;
while (j < SIZE)
{
if (arr[i][j] == qi)
{
if ((j < SIZE - 1) && (arr[i][j] == arr[i][j + 1]))
{
while ((j < SIZE - 1) && (arr[i][j] == arr[i][j + 1]))
{
flag++;
j++;
}
if (flag >= numInaRow)
{
return flag;
}
else
{
flag = 0;
}
}
else
{
return 0;
}
}
}
}