咱们不说废话,开始吧

#include<iostream>
using namespace std;const int N=10;
char Map[N][N];  // 地图
int n = 8;       // 棋盘大小
int cnt = 0;     // 步数void Initialize()  // 初始化地图
{for(int i=0;i<n;i++){for(int j=0;j<n;j++){Map[i][j]='*';  // 初始为'*'表示无棋}}
}void PrintMap()   // 输出地图
{cout<<"    ";for(int i=0;i<n;i++){cout<<i+1<<" ";   // 横坐标标号}cout<<endl;for(int i=0;i<n;i++){cout<<" "<<i+1<<" | ";   // 竖坐标标号for(int j=0;j<n;j++){cout<<Map[i][j]<<" ";  // 输出地图内容}cout<<endl;}cout<<endl;
}bool CheckWin(int x,int y,char ch)  // 判断是否赢了
{// 检查横行int cnt=1;for(int j=y+1;j<n;j++){if(Map[x][j]==ch)cnt++;elsebreak;}for(int j=y-1;j>=0;j--){if(Map[x][j]==ch)cnt++;elsebreak;}if(cnt>=5)return true;// 检查竖行cnt=1;for(int i=x+1;i<n;i++){if(Map[i][y]==ch)cnt++;elsebreak;}for(int i=x-1;i>=0;i--){if(Map[i][y]==ch)cnt++;elsebreak;}if(cnt>=5)return true;// 检查斜线cnt=1;for(int i=x+1,j=y+1;i<n&&j<n;i++,j++){if(Map[i][j]==ch)cnt++;elsebreak;}for(int i=x-1,j=y-1;i>=0&&j>=0;i--,j--){if(Map[i][j]==ch)cnt++;elsebreak;}if(cnt>=5)return true;// 检查反斜线cnt=1;for(int i=x-1,j=y+1;i>=0&&j<n;i--,j++){if(Map[i][j]==ch)cnt++;elsebreak;}for(int i=x+1,j=y-1;i<n&&j>=0;i++,j--){if(Map[i][j]==ch)cnt++;elsebreak;}if(cnt>=5)return true;return false;
}void PlayGame()   // 游戏主函数
{int x,y;char ch = 'X';   // 初始为'X'先手while(cnt < n*n)   // 最多下n*n步{cout<<ch<<"'s turn: ";cin>>x>>y;if(x<1||x>n||y<1||y>n)   // 坐标无效{cout<<"Invalid position!"<<endl;continue;}if(Map[x-1][y-1] != '*')   // 此处已有棋子{cout<<"This position is already taken!"<<endl;continue;}Map[x-1][y-1] = ch;    // 下棋cnt++;PrintMap();   // 显示地图if(CheckWin(x-1,y-1,ch))  // 判断是否赢了{cout<<ch<<" wins!"<<endl;return;}if(ch=='X')ch='O';    // 交换下棋方elsech='X';}cout<<"Tie game!"<<endl;    // 没有胜者
}int main()
{cout<<"=========================="<<endl;cout<<" Welcome to the game of Gobang"<<endl;cout<<"=========================="<<endl<<endl;Initialize();PrintMap();PlayGame();return 0;
}

c++游戏五子棋游戏相关推荐

  1. python五子棋游戏大作业_python-大作业之五子棋游戏(附代码)

    <python-大作业之五子棋游戏(附代码)>由会员分享,可在线阅读,更多相关<python-大作业之五子棋游戏(附代码)(6页珍藏版)>请在金锄头文库上搜索. 1.Pytho ...

  2. 编写五子棋的完整python代码_python制作简单五子棋游戏

    本文实例为大家分享了python五子棋游戏的具体代码,供大家参考,具体内容如下 #五子棋 '" 矩阵做棋盘 16*16 "+" 打印棋盘 for for 游戏是否结束 开 ...

  3. 基于python的游戏设计与实现-python五子棋游戏的设计与实现

    这个python的小案例是五子棋游戏的实现,在这个案例中,我们可以实现五子棋游戏的两个玩家在指定的位置落子,画出落子后的棋盘,并且根据函数判断出输赢的功能. 这个案例的思路如下所示: 首先,根据棋盘的 ...

  4. c语言五子棋开题报告,基于VC的五子棋游戏的设计与实现(附答辩记录)

    基于VC的五子棋游戏的设计与实现(附答辩记录)(包含选题审批表,任务书,开题报告,中期检查报告,毕业论文12300字,程序) 摘 要:以计算机技术和网络技术为核心的现代网络技术已在现实生活和生产中得以 ...

  5. c#五子棋实验报告_C#课设报告书—游戏五子棋

    · 五子棋 1 设计目的 五子棋游戏不仅能增强人们的抽象思维能力.逻辑推理能力.空间想象力,提高人们 的记忆力.心算能力等,而且深含哲理,有助于修身养性.五子棋既有现代休闲方式所特 有的特征" ...

  6. java五子棋悔棋代码_小猿圈前端编写JS五子棋游戏

    前段时间发的飞机大战的游戏很多小伙伴都私聊让再做个游戏,今天小猿圈web前端讲师为大家分享的是JS五子棋的游戏,想玩的小伙伴记得自己运行一下呦. JS五子棋游戏代码: 五子棋 canvas { dis ...

  7. 编写五子棋的完整python代码_python实现五子棋游戏(pygame版)

    本文实例为大家分享了python五子棋游戏的具体代码,供大家参考,具体内容如下 目录 简介 实现过程 结语 简介 使用python实现pygame版的五子棋游戏: 环境:Windows系统+pytho ...

  8. ege函数库_基于c++ ege图形库实现五子棋游戏

    本文分享的五子棋实例,制作基于ege图像库, 首先需要安装配置ege环境 就可以编写小游戏了. 用到的ege库函数不多 , 主要是基于c++的. 先看界面效果: 输入界面:(就是控制台) 游戏胜利界面 ...

  9. android sdl,Android下SDL2实现五子棋游戏

    本文实例介绍了Android下用SDL2实现一个简单的五子棋游戏,分享给大家供大家参考,具体内容如下 1. Five.c // Five.c // SDL2 五子棋 // gcc -mwindows ...

最新文章

  1. 使用sumlime text有感
  2. AJAX培训第二讲:使用AJAX框架(上)
  3. 如何正确配置Nginx+PHP
  4. 爬虫(一)jupyter环境安装
  5. oracle open for using的用法,oracle OPEN FOR [USING] 语句
  6. Newton Method in Maching Learning
  7. 命令行下Apache日志统计举例
  8. airpassengers数据集_12个Pandas amp;amp; Numpy函数:数据分析提速50%不是问题!
  9. php修改音频文件_用php实现mp3音频文件下载功能
  10. 运放参数SR(压摆率)、增益带宽积(GBW)
  11. 学生用计算机的感叹号在哪,感叹号怎么打电脑(感叹号的用法及举例)
  12. 督查督办工作基本程序
  13. 进程之管道Pipe,数据共享Manager,进程池Poo
  14. pwn unlink
  15. Facebook广告投放有哪些比较好的策略?
  16. ios: Undefined symbols
  17. 中国支付结算体系全貌
  18. How Does Linphone Toggle SIP Contact?
  19. r语言 c(-1 1),R语言学习.1-R安装及向量介绍
  20. jQuery - 获取兄弟元素

热门文章

  1. 互联网时代,我们都在裸泳!
  2. telnet客户端和服务器端安装
  3. Docker Swarm使用NFS作为共享存储
  4. 《第五人格》高端局技巧
  5. 從turtle海龜動畫 學習 Python - 高中彈性課程系列 6.1 內嵌正多邊形 類似禪繞圖
  6. 往国外发邮件,你知道什么邮箱比较正式吗?
  7. WinSetupFromUSB - 超简单制作多合一系统安装启动U盘的工具
  8. excel打印预览在哪里_在excel表格的打印预览界面调整页边距
  9. 【集成学习】Boosting策略典型算法原理
  10. 编 译 原 理 上机大作业<函数绘图语言解释器>