第一范文网 - 专业文章范例文档资料分享平台

c++课程设计-五子棋游戏 - 图文

来源:用户分享 时间:2025/5/19 18:16:51 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

五子棋游戏 1.设计目的 (1)加深对面向对象程序基本的理解和掌握。 (2)熟练掌握基本流程图的绘制。 (3)能够在调试程序中快速发现并排除程序中的错误。 (4)提高面向对象程序语言解决实际中的问题的能力。 进一步培养结构化程序设计的思想,加深对高级系统语言基本语言要素和控制结构的理解,针对C++语言中的重点和难点内容进行训练,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。 此课程设计着眼于知识的运用,把平常学的知识运用到课程实践中来,本身就是考察我们知识运用能力。要求熟悉运用一些编程软件,对我们所学的理论知识进一步的深化。 2.功能描述 (1)输出棋盘界面 (2)玩家轮流下棋 (3)判断键盘输入的坐标位置 (4)判断是否在同一位置下棋 (5)判断赢家 (6)结束游戏 由两个玩家分别下棋,按任意键开始游戏,显示棋盘,用户通过输入横纵坐标的位置下棋,当某一个玩家五子相连,则赢。 界面要求:初始状态——显示棋盘,并显示两个玩家的操作键及初始玩家名称;游戏进行状态——动态显示棋盘,不同玩家的棋子用不同符号显示,屏幕上显示当前玩家号,结束时显示赢家名称。

3.总体设计 3.1系统流程图 五子棋对弈系统流程图如下: 判断位置是否有棋 找另一位置 白方下子 开始 否 白方下子 是 判断白方是否胜出 否 跳出白棋获胜 判断是否重现开局 否 判断位置是否有棋否 找另一位置 游戏结束 黑方下子 黑方下子 跳出黑棋获胜 是 判断黑方是否胜出 图 1程序总体图

游戏开始 白(黑)方下子 某方在水平方向是否大于4 否 是 白(黑)方获胜 是 某方在垂直方向 是否大于4 否 白(黑)方获胜 进入选择是否重新开局框 白(黑)方获胜 是 某方在正对角线方向是否大于4 否 某方在反对角线方向是否大于4 否 黑(白)方下子 图2算法流程图 是 白(黑)方获胜 3.2详细设计 3.2.1 本系统的主要结构和类结构 (1)五子棋功能实现的主要结构函数 void getpointxy(); //白棋出子函数 void getpointmn(); //黑棋出子函数 void showqipan(); //实现20行20列正方形界面输出 void print(); //输出下一棋盘界面及计数 bool IsxyWin(); //白棋获胜 bool IsmnWin(); //黑棋获胜 void menu();//显示开始菜单界面 (2)五子棋类的结构 class five

{ int x,y,m,n,num_xy,num_mn; char qipan[20][20]; //定义20行20列的数组 public: five(int X = 0,int Y =0,int M = 0,int N = 0,int Num_xy = 0,int Num_mn = 0) //构造函数初始化 { x = X; y = Y; m = M; n = N; num_xy = Num_xy; num_mn = Num_mn; for(int i = 0 ; i < 20 ; i ++) //输出20行20列的棋盘界面 { for(int j = 0 ;j < 20 ; j ++) qipan[i][j] = '.'; } } 3.2.2功能模块 (1)图形显示模块:程序开始运行时,显示给出的一个界面任意键继续,包括对数据成员的赋值和成员函数的初始化还有通过for循环实现对20行20列坐标的定义。源代码如下: class five { int x,y,m,n,num_xy,num_mn; char qipan[20][20]; //定义20行20列的数组 public: five(int X = 0,int Y =0,int M = 0,int N = 0,int Num_xy = 0,int Num_mn = 0) //构造函数初始化 { x = X; y = Y; m = M; n = N; num_xy = Num_xy; num_mn = Num_mn; for(int i = 0 ; i < 20 ; i ++) //输出20行20列的棋盘界面 { for(int j = 0 ;j < 20 ; j ++) qipan[i][j] = '.'; } } void getpointxy(); //白棋出子及计数 void getpointmn(); //黑棋出子及计数 void showqipan(); //实现20行20列正方形界面输出 void print(); //输出下一棋盘界面 bool IsxyWin(); //白棋获胜

搜索更多关于: c++课程设计-五子棋游戏 - 图文 的文档
c++课程设计-五子棋游戏 - 图文.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c5fb3y9wjp79vfqx3d4pq7px008twst015cr_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top