|
|
|
@ -54,6 +54,8 @@ void startgame() //
|
|
|
|
|
system("cls");
|
|
|
|
|
printf(" ~游戏结束~");//结束游戏
|
|
|
|
|
jifenban();////////调用另一个文件的计分板函数/////////
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -66,6 +68,8 @@ void startgame() //
|
|
|
|
|
printf(" ");
|
|
|
|
|
scanf("%d%d",&x,&y);
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
if(x>=0&&x<=18&&y>=0&&y<=18)
|
|
|
|
|
{
|
|
|
|
|
if(strcmp(p[x][y]," ")==0)//判断棋盘位置是否已有棋子
|
|
|
|
|
{
|
|
|
|
@ -74,6 +78,8 @@ void startgame() //
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
printf(" 您不能在此位置落子,请重新输入坐标:");//已有棋子则提示用户重新落子
|
|
|
|
|
}
|
|
|
|
|
else printf(" 输入的坐标超过了棋盘范围");
|
|
|
|
|
scanf("%d%d",&x,&y);
|
|
|
|
|
}
|
|
|
|
|
system("cls");
|
|
|
|
@ -99,13 +105,17 @@ void white() //
|
|
|
|
|
scanf("%d%d",&x,&y);
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
if(strcmp(p[x][y]," ")==0)//判断此位置是否有棋
|
|
|
|
|
if(x>=0&&x<=18&&y>=0&&y<=18)
|
|
|
|
|
{
|
|
|
|
|
strcpy(p[x][y],"○");//没有则下白棋
|
|
|
|
|
if(strcmp(p[x][y]," ")==0)//判断棋盘位置是否已有棋子
|
|
|
|
|
{
|
|
|
|
|
strcpy(p[x][y],"○");//没有则下黑棋
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
printf(" 您不能在此位置落子,请重新输入坐标:");//有棋则提示重新输入
|
|
|
|
|
printf(" 您不能在此位置落子,请重新输入坐标:");//已有棋子则提示用户重新落子
|
|
|
|
|
}
|
|
|
|
|
else printf(" 输入的坐标超过了棋盘范围");
|
|
|
|
|
scanf("%d%d",&x,&y);
|
|
|
|
|
}
|
|
|
|
|
system("cls");
|
|
|
|
@ -227,14 +237,14 @@ void white() //
|
|
|
|
|
else
|
|
|
|
|
winner=2;
|
|
|
|
|
strcpy(p[x][y],"赢");
|
|
|
|
|
i=1;
|
|
|
|
|
while(strcmp(color,p[x-i][y])==0&&x>=0&&x<19&&y>=0&&y<19&&count<5)
|
|
|
|
|
i=1;count=1;
|
|
|
|
|
while(strcmp(color,p[x-i][y])==0&&x>=0&&x<19&&y>=0&&y<19&&count<=5)
|
|
|
|
|
{
|
|
|
|
|
strcpy(p[x-i][y],"赢");
|
|
|
|
|
i++;count++;
|
|
|
|
|
}
|
|
|
|
|
i=1;
|
|
|
|
|
while(strcmp(color,p[x+i][y])==0&&x>=0&&x<19&&y>=0&&y<19&&count<5)
|
|
|
|
|
while(strcmp(color,p[x+i][y])==0&&x>=0&&x<19&&y>=0&&y<19&&count<=5)
|
|
|
|
|
{
|
|
|
|
|
strcpy(p[x+i][y],"赢");
|
|
|
|
|
i++;count++;
|
|
|
|
@ -254,14 +264,14 @@ void white() //
|
|
|
|
|
else
|
|
|
|
|
winner=2;
|
|
|
|
|
strcpy(p[x][y],"赢");
|
|
|
|
|
i=1;
|
|
|
|
|
while(strcmp(color,p[x+i][y])==0&&x>=0&&x<19&&y>=0&&y<19&&count<5)
|
|
|
|
|
i=1;count=1;
|
|
|
|
|
while(strcmp(color,p[x+i][y])==0&&x>=0&&x<19&&y>=0&&y<19&&count<=5)
|
|
|
|
|
{
|
|
|
|
|
strcpy(p[x+i][y],"赢");
|
|
|
|
|
i++;count++;
|
|
|
|
|
}
|
|
|
|
|
i=1;
|
|
|
|
|
while(strcmp(color,p[x-i][y])==0&&x>=0&&x<19&&y>=0&&y<19&&count<5)
|
|
|
|
|
while(strcmp(color,p[x-i][y])==0&&x>=0&&x<19&&y>=0&&y<19&&count<=5)
|
|
|
|
|
{
|
|
|
|
|
strcpy(p[x-i][y],"赢");
|
|
|
|
|
i++;count++;
|
|
|
|
@ -436,11 +446,11 @@ void white() //
|
|
|
|
|
printf(" 【雨 月 金 星 追 黑 玉,松 丘 新 宵 瑞 山 腥。】\n");
|
|
|
|
|
printf(" 【星 月 长 峡 恒 水 流,白 莲 垂 俏 云 浦 岚。】\n");
|
|
|
|
|
printf(" 【黑 玉 银 月 倚 明 星,斜 月 明 月 堪 称 朋。】\n");
|
|
|
|
|
printf(" 【二 十 六 局 先 弃 二,直 指 游 星 斜 彗 星。】\n");
|
|
|
|
|
printf(" 【二 十 六 局 先 弃 二,直 指 游 星 斜 彗 星。】\n\n");
|
|
|
|
|
printf(" ---这首诗,送给少侠。。。\n\n");/*一首关于五子棋的诗,送给游戏者。*/
|
|
|
|
|
printf(" 少侠,请来一局吧。\n\n");
|
|
|
|
|
printf(" 人人对战\n\n");
|
|
|
|
|
printf(" 少侠,请开始您的游戏:1.开始游戏 2.退出游戏 您的选择是:");/*让用户选择游戏的开始或者退出游戏*/
|
|
|
|
|
printf(" 少侠,请开始您的游戏:1.开始游戏 2.退出游戏\n\n 您的选择是:");/*让用户选择游戏的开始或者退出游戏*/
|
|
|
|
|
scanf("%s",&choice);
|
|
|
|
|
while(1){
|
|
|
|
|
if(choice=='1'||choice=='2')
|