一字棋游戏"/>
基于C++实现的一字棋游戏
一字棋游戏设计实现
一、需求和规格说明
一字棋游戏设计实现
设计实现一字棋游戏程序,人为一方,计算机为一方,人下时字符 * 将放在所指定的位置,而计算机下时字符 @ 将放在某一空格位置。行、列、或两对角线有连续三个相同字符一方为胜方,也有平局情况。要求能动态演示。
二、设计
2.1 设计思想
将3*3棋盘看做是二维数组,人和电脑下棋位置分别定义不同的数值,利用横向,纵向,对角线,反对角线位置的数值之和判断是否达成胜利条件,判断棋盘是否已下满。根据棋盘上已有的棋子状态判断哪一个位置下棋赢的可能性大,哪一个位置要阻止人赢棋,根据判断结果编写电脑下棋位置。
2.2 程序框图
主函数
人下棋函数
判断下棋位置重要性函数
电脑下棋函数
判断胜利函数
成员类别 | 类型 | 成员名 | 描述 |
---|---|---|---|
属性 | const int | X | 常量 |
属性 | const int | Y | 常量 |
方法 | bool | Win() | 判断谁赢了 |
方法 | bool | Full() | 判断棋盘是否充满 |
属性 | int | Store [ ][ ] | 数组 |
属性 | int | Chessboard[][] | 棋盘数组 |
属性 | bool | choose | 判断人机先后顺序 |
方法 | void | map() | 初始化棋盘 |
方法 | void | Showmap() | 打印棋盘 |
方法 | void | Humanplay() | 人下棋; |
方法 | void | Pcplay() | 电脑下棋 |
2.3 用户手册
程序运行时提示用户选择下棋先后顺序,按照坐标位置选择下棋顺序,选择位置不正确会提示用户。
2.4 调试及测试
针对下棋先后顺序对人和电脑下棋程序先后进行调整,同时保证棋盘下满。无人胜出时输出平局。
2.5 运行实例
更多推荐
基于C++实现的一字棋游戏
发布评论