文档详情

C语言五子棋游戏源代码.doc

发布:2018-05-29约7.81千字共17页下载文档
文本预览下载声明
#include stdio.h #include bios.h #include ctype.h #include conio.h #include dos.h #define CROSSRU 0xbf /*右上角点*/ #define CROSSLU 0xda /*左上角点*/ #define CROSSLD 0xc0 /*左下角点*/ #define CROSSRD 0xd9 /*右下角点*/ #define CROSSL 0xc3 /*左边*/ #define CROSSR 0xb4 /*右边*/ #define CROSSU 0xc2 /*上边*/ #define CROSSD 0xc1 /*下边*/ #define CROSS 0xc5 /*十字交叉点*/ /*定义棋盘左上角点在屏幕上的位置*/ #define MAPXOFT 5 #define MAPYOFT 2 /*定义1号玩家的操作键键码*/ #define PLAY1UP 0x1157/*上移--W*/ #define PLAY1DOWN 0x1f53/*下移--S*/ #define PLAY1LEFT 0x1e41/*左移--A*/ #define PLAY1RIGHT 0x2044/*右移--D*/ #define PLAY1DO 0x3920/*落子--空格键*/ /*定义2号玩家的操作键键码*/ #define PLAY2UP 0x4800/*上移--方向键up*/ #define PLAY2DOWN 0x5000/*下移--方向键down*/ #define PLAY2LEFT 0x4b00/*左移--方向键left*/ #define PLAY2RIGHT 0x4d00/*右移--方向键right*/ #define PLAY2DO 0x1c0d/*落子--回车键Enter*/ /*若想在游戏中途退出, 可按 Esc 键*/ #define ESCAPE 0x011b /*定义棋盘上交叉点的状态, 即该点有无棋子 */ /*若有棋子, 还应能指出是哪个玩家的棋子 */ #define CHESSNULL 0 /*没有棋子*/ #define CHESS1 O/*一号玩家的棋子*/ #define CHESS2 X/*二号玩家的棋子*/ /*定义按键类别*/ #define KEYEX99v 0/*退出键*/ #define KEYFALLCHESS 1/*落子键*/ #define KEYMOVECURSOR 2/*光标移动键*/ #define KEYINVALID 3/*无效键*/ /*定义符号常量: 真, 假 --- 真为1, 假为0 */ #define TRUE 1 #define FALSE 0 /**********************************************************/ /* 定义数据结构 */ /*棋盘交叉点坐标的数据结构*/ struct point { int x,y; }; 或者下面这个: #include graphics.h #include stdlib.h #include stdio.h #include conio.h #define N 15 #define B 7 #define STOP -10000 #define OK 1 #define NO 0 #define UP 328 #define DOWN 336 #define LEFT 331 #define RIGHT 333 int a[N+1][N+1]; int zx,zy; int write=1,biaoji=0; struct zn{ long sum; int y; int x; }w[N+1][N+1],max,max1; void cbar(int i,int x,int y,int r); void map(int a[][]); int getkey(); int key(); void zuobiao(int x,int y,int i); int tu(int a[][],int write); int wtu(int a[][],int write); int zhineng(int a[][]); int zh5(int y,int x,int a[][]); long zzh5(int b[][],int i); main() { int i,j; int gdriver=DETECT; int gmode; initgraph(gdriver,gmode,); zx=(N+1)/2; zy=(N+1)/2; for(i=1;i=N;i++) for(j=1;j=N;j+
显示全部
相似文档