五子棋实现代码
#include<stdio.h> #define M 9 #define N 9 void print(int a[M][N]) { int i,j; for(i=0;i<M;i++) { for(j=0;j<N;j++) printf(" %d",a[i][j]); printf("\n"); } } int check(int a[M][N]) { int i,j; for(i=0;i<M-5;i++) { for(j=0;j<N-5;j++) { if((a[i][j]==1)&&(a[i+1][j]==1)&&(a[i+2][j]==1)&&(a[i+3][j]==1)&&(a[i+4][j]==1)) { printf("player1 win\n"); return 0; break; } else if((a[i][j]==1)&&(a[i][j+1]==1)&&(a[i][j+2]==1)&&(a[i][j+3]==1)&&(a[i][j+4]==1)) { printf("player1 win\n"); return 0; break; } else if((a[i][j]==1)&&(a[i+1][j+1]==1)&&(a[i+2][j+2]==1)&&(a[i+3][j+3]==1)&&(a[i+4][j+4]==1)) { printf("player1 win\n"); return 0; break; } else if((a[M-i][j]==1)&&(a[M-i-1][j+1]==1)&&(a[M-i-2][j+2]==1)&&(a[M-i-3][j+3]==1)&&(a[M-i-4][j+4]==1)) { printf("player1 win\n"); return 0; break; } if((a[i][j]==2)&&(a[i+1][j]==2)&&(a[i+2][j]==2)&&(a[i+3][j]==2)&&(a[i+4][j]==2)) { printf("player2 win\n"); return 0; break; } else if((a[i][j]==2)&&(a[i][j+1]==2)&&(a[i][j+2]==2)&&(a[i][j+3]==2)&&(a[i][j+4]==2)) { printf("player2 win\n"); return 0; break; } else if((a[i][j]==2)&&(a[i+1][j+1]==2)&&(a[i+2][j+2]==2)&&(a[i+3][j+3]==2)&&(a[i+4][j+4]==2)) { printf("player2 win\n"); return 0; break; } else if((a[M-i][j]==2)&&(a[M-i-1][j+1]==2)&&(a[M-i-2][j+2]==2)&&(a[M-i-3][j+3]==2)&&(a[M-i-4][j+4]==2)) { printf("player2 win\n"); return 0; break; } } } return 1; } int main() { int a[M][N]={0},b[M][N]={0}; print(a); int i,j; int count=1,num=0; while(count) { num++; if(num%2==1) { printf("player1 input:"); scanf("%d",&i); scanf("%d",&j); a[i-1][j-1]=1; print(a); count=check(a); for(i=0;i<M;i++) for(j=0;j<N;j++) b[i][j]=a[i][j]; } else if(num%2==0) { printf("player2 input:"); scanf("%d",&i); scanf("%d",&j); b[i-1][j-1]=2; print(b); count=check(b); for(i=0;i<M;i++) for(j=0;j<N;j++) a[i][j]=b[i][j]; } } return 0; }
在redhat上运行
相关推荐
主要功能是实现两人之间的对弈,在画好的棋盘上,两个玩家轮流选择自己的落子坐标,然后由五子棋系统自动识别判断游戏的进展,知道一方的五子连成一条线或者棋盘已经无法落子时游戏结束。 选定五子棋的棋盘大小为19...
通过C语言实现简单的五子棋双人对战源码,代码量小,结构简单,适合C语言刚入门者学习
简单五子棋,容易看懂,小白也能学。。
c语言实现的简单双人五子棋,和局自动退出。linux下编译通过,进行了五子连珠和平局的简单测试。
在VS2013平台上利用C语言实现了一个简单的五子棋游戏,其中利用了easyX插件的图形库,需安装easyX插件。
C语言实现五子棋游戏的编写,运用了MFC知识,这是我们C语言课程设计,代码简单易懂并且有可视化界面,很美观。键盘实现棋子的移动。
C语言开发的五子棋,界面豪华,代码简单,便于深入学习C语言的学习和做C语言期末大作业的参考。
解压缩后得到main.c和golang.c。 将main.c和golang.c移动到Linux目录下,然后使用 gcc main.c golang.c -o golang 即可编译成功, ./golang 即可运行程序。
这个是一个用c语言实现的五子棋,人机对战模式,因为其他的模式都很简单,所以不再去实现,难点就在于电脑怎么下。什么时候电脑要阻挡玩家,什么时候按自己思路下载
本文实例为大家分享了C语言实现简易五子棋的具体代码,供大家参考,具体内容如下 #define _CRT_SECURE_NO_WARNINGS #include #include #include #define ROW 5 #define COL 5 char g_broad[ROW][COL]; void menu();...
C语言编写的简易五子棋程序,内附简易操作规则,适合初学者学习和使用。学习C语言程序代码能够在VC 6.0或者更高版本的运行环境下运行。
C语言实现基于EasyX的简单五子棋游戏
主要为大家详细介绍了C语言实现简单五子棋小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
大二写的数据结构课设,使用c语言写的一个简单的人机五子棋对弈
简单五子棋C语言课设.docx
编写的一个简单的单机五子棋游戏,有注释的
这里设计和实现了一个人机对下的五子棋程序,采用了博弈树的方法,应用了剪枝和最大最小树原理进行搜索发现最好的下子位置。介绍五子棋程序的数据结构、评分规则、胜负判断方法和搜索算法过程。
C语言写的五子棋 直接编译运行 功能比较简单
这个小游戏使用C语言开发,旨在提供一个简单而有趣的五子棋对战体验。 游戏规则: 两名玩家轮流在棋盘上下棋,一方执黑子,另一方执白子。 玩家可以选择在空白位置放置自己的棋子。 目标是先在水平、垂直或对角线...
基于C语言的五子棋代码实现,vs2022,玩家和电脑pk。可应用于课程设计,期末大作业等,语言简单明了。