优秀的毕业设计论文网
计算机 JAVA 电子信息 单片机 机械机电 模具 土木工程 建筑结构 论文
热门搜索词:网络 ASP.NET 汽车 电气 数控 PLC

黑白棋游戏的设计与实现(VC++)(新品)

以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
  
资料介绍:

目录黑白棋11、绪论41当前的发展背景42.系统需求分析42.1需求分析42.1.1开发平台42.1.2 socket52.1.3 MFC简述52.2 项目目标62.3 可行性分析62.3.1经济可行性62.3.2技术可行性62.6.3操作可行性73 系统设计73.1 功能模块设计73.1.1 封装显示数字模块73.1.2 封装网络连接模块73.1.3 设置对话框83.1.4 英雄榜83.1.5 ip输入框83.2 多线程83.3 游戏流程图103.4 程序使用流程图104 详细设计114.1三种模式114.1.1 与计算机对弈114.1.2 与人对弈114.1.3 局域网对弈114.2游戏说明124.3 落子(并翻转棋子)124.4 判断是否结束155 系统测试运行215.1系统测试基本原则215.2 系统测试的步骤226 总结22致 谢23 [版权所有:http://think58.com]

8*8的棋盘,用一个二维数组来存贮kernel[8][8]其中0表示没有棋子,1表示白色棋子,2表示黑色棋子。 think58.com

[资料来源:www.THINK58.com]

4.1三种模式4.1.1 与计算机对弈本模块在于计算机对弈方面只实现了简单的功能,采用的随机算法加简单的分析,因此力气比较差。 本文来自think58 [资料来源:http://think58.com]

4.1.2 与人对弈由于与人对弈是要实现在同一台计算机上同一个程序上实现两个人对弈,因此设计原理比较简单,功能也比较单一。

内容来自think58 [资料来源:http://THINK58.com]

[资料来源:THINK58.com]

4.1.3 局域网对弈局域网对弈催复杂,也是本程序的重点,主要实现基于以下几个方面1、进程同步的实现,由于对弈双方在不同的计算机上执行程序,为了使程序正确的执行,需要保证双峰的程序使用保持同步。2、网络的链接和进程间的通讯。要实现网上对弈,首先要保证两个进程在网上的链接,本程序采用基于WinSocket(wsock32.lib和mpr.lib)类的网络连接和通讯3、数据格式的英译和交换。本程序预定义了一个1024字节的缓冲区和4个控制信号(CMD_SKIP,CMD_OVER,CMD_RESIGN,CMD_CLICK)。数据的格式是一次传10个字节,其中前三个分别表示信号量、x坐标、y坐标,后7个是校验字节 think58 [版权所有:http://think58.com]

4.2游戏说明(1) 游戏流程:启动游戏后,直接进入棋盘界面,在这里,可以选择与计算机对弈、两人在同一台计算机上对弈和在网络上与人对弈,还可以选择执黑和执白,在选定之后,就可以开始游戏了,当开始下棋时,有一个计时器和一个计数器分别对下棋用时和双方棋子数进行记录,以作为判定输赢的依据。我们的判断标准为:若双方都未超时,棋子多者为胜;若有一方超时,直接判定此方为负,每局时限为5分钟。

[来源:http://think58.com]

(2) 游戏规则:吃子:以方格为直线或者斜线的方向,以一方对照棋子和即将落下棋子之间(此两子之间必须没有空格且全部为对方棋子)的所有对方棋子被吃掉,被吃掉的对方棋子变为自己一方的棋子。 下子:必须在可以吃子的位置处并且该位置为空格时可以落下己方的棋子,如果不能下子,棋子无法显示在棋盘上,同时有声音提示。 停走:任何一方无法下子时屏幕上面会自动出现对话框,提示某方不能下子,让对方下子。 赢棋:若一方超时,则自动判负,屏幕上面会自动出现对话框提示;当双方都无法下子时屏幕上面也会自动出现对话框,提示本次游戏结束,并且根据计数器记录的双方棋子数判定棋子数多的一方取得本次游戏的胜利。

copyright think58

[资料来源:www.THINK58.com]

[资料来源:http://think58.com]

think58 [版权所有:http://think58.com]