文档详情

C语言五子棋编程.doc

发布:2018-07-03约3.97千字共7页下载文档
文本预览下载声明
综合大作业 编写一个五子棋游戏程序一般来说,我们开发一个软件时要经过以下步骤:确定软件的功能;定义核心数据结构;对整个软件进行功能模块划分;编写程序实现各功能模块;对源程序进行编译、调试,形成软件产品。1、确定软件的功能:编写一个五子棋游戏程序,开发这个五子棋的程序只要能提供一个能下五子棋的棋盘就可以了,两个玩家可以在这个棋盘上交替行棋,当某玩家已经走成五子相连的局面时,程序应能判定他赢棋。2、定义核心数据结构3、对整个软件进行功能模块划分 4、编写程序实现各功能模块1)定义核心数据结构:/**********************************************************//* 棋盘交叉点坐标的数据结构 */struct point{ int x,y;};/**********************************************************//* 定义全局变量 */int gPlayOrder; /* 指示当前行棋方 */struct point gCursor; /* 光标在棋盘上的位置 */char gChessBoard[19][19]; /* 用于记录棋盘上各点的状态*//**********************************************************//* 定义符号常量 *//*定义画棋盘所需的制表符*/#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 KEYEXIT 0 /*退出键*/#define KEYFALLCHESS 1 /*落子键*/#define KEYMOVECURSOR 2 /*光标移动键*/#define KEYINVALID 3 /*无效键*//*定义符号常量: 真, 假 --- 真为1, 假为0 */#define TRUE 1#define FALSE 02)初始化/************************
显示全部
相似文档