网站大量收购闲置独家精品文档,联系QQ:2885784924
  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
添XO 游戏

目 录 1 题目内容及设计要求 1 2 总体设计 1 2.1 总体功能框图 1 2.2 类的设计说明 2 2.3 主要算法流程图 2 3 程序清单及注释 4 4 运行结果与分析 13 5 总结 14 6 参考文献 15 题目内容及设计要求 填XO游戏程序 内容及要求: 游戏规则和胜利条件: 选择难度1:(1)两个斜对角之一都为X或O,则玩家胜。(2)一横行都为X或O则玩家胜。(3)一竖行都为X或O则玩家胜。 选择难度2:两个斜对角之一都为X或O,则玩家胜。 选择难度3:两个斜对角都为X或O,则玩家胜。 棋盘共有5行5列: 输入必须为一个两位整数,如11,代表棋盘的第一行第一列,输完后按回车键; 玩者下一步X或O,计算机也自动下一步X或O。 2 总体设计 2.1 总体功能框图 总体功能框图如下。 图 2-1 填XO游戏程序的总体功能框 2.2 类的设计说明 2.2.1 Class类的说明如下: 图2-2 类chass的说明图 board[6][6] 为一个char类型的二维数组。 Chess() 为构造函数,默认初始建立一个空的棋盘。 void point(int isx , int isy , char cxoo ) 把数组中对应位置修改为‘o’或‘x’。 int checkpoint(int isx , int isy ) 检查数组对应位置是否被填满。 void drawchess() 清屏后重新绘制棋盘。 void drawit(int jj) 不清屏重新绘制棋盘 。 int check(chess ab , int nandu) 判断胜利与否。 2.2. 2 其余部分: int getrandint(int min , int max) 随机获得一个数。 int main () 主函数。 主要算法流程图 2.3. 1 主要算法流程图如下: 图2-3 主要算法流程图 程序清单及注释 #includeiostream #includecstdlib using namespace std; class chess { char cboard[6][6]; public: chess() { for(int i = 1 ; i6 ; i++) { for(int j =1 ; j6 ; j++) { cboard[i][j]= ; } } } void point(int isx , int isy , char cxoo ) { int px,py; char name; px=isx ; py=isy ; name=cxoo; cboard[px][py]=name; } int checkpoint(int isx , int isy ) { int px,py; px=isx ; py=isy ; if(cboard[px][py]==o||cboard[px][py]==x) { return 1; } else { return 0; } } void drawchess() { system(cls); for(int i=1 ; i6; i++) { for(int j=1 ; j6 ; j++) { coutcboard[i][j]| ; } coutendl; } } void drawit(int jj) { for(int i=1 ; i6; i++) { for(int j=1 ; j

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档