iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++实现简易的五子棋游戏
  • 176
分享到

C++实现简易的五子棋游戏

2024-04-02 19:04:59 176人浏览 泡泡鱼
摘要

本文实例为大家分享了c++实现简易五子棋游戏的具体代码,供大家参考,具体内容如下 //用c++实现五子棋 #include <iOStream> #include <

本文实例为大家分享了c++实现简易五子棋游戏的具体代码,供大家参考,具体内容如下

//用c++实现五子棋
#include <iOStream>
#include <cstdlib>
#include "getch.h"

using namespace std;

enum Role{RED=99,BLUE};

class Gobang
{
    char board[15][15];
    int key_x,key_y;
    Role role;
public:
    Gobang(int key_x=7,int key_y=7,Role role=RED):key_x(key_x),key_y(key_y),role(role) {}

    void start(void)
    {
        for(;;)
        {
            show_board();

            get_key();

            if(check_key())
            {
                show_board();
                printf("%d\n",role);
                cout << "恭喜" << (role==RED?"红方":"蓝方") << "胜利!" << endl;
                break;
            }
            
            change_role();
        }
    }

    // 显示棋盘
    void show_board(void)
    {
        system("clear");
        printf("  ");
        for(int i=0; i<15; i++)
        {
            printf(" %c",'A'+i);
        }
        printf("\n");

        for(int x=0; x<15; x++)
        {
            printf("%2d",x+1);
            for(int y=0; y<15; y++)
            {
                if(RED==board[x][y])
                {
                    printf("\33[31m");
                    printf(" @");
                    printf("\33[0m");
                }
                else if(BLUE == board[x][y])
                {
                    printf("\33[34m");
                    printf(" #");
                    printf("\33[0m");
                }
                else
                {
                    printf(" *");
                }
            }
            printf("\n");
        }
    }


    // 获取棋子
    void get_key(void)
    {
        for(;;)
        {
            // 设置光标的位置
            printf("\33[%d;%dH",key_x+2,(key_y+2)*2);
            switch(getch())
            {
                case 183: key_x>0 && key_x--; break;
                case 184: key_x<15 && key_x++; break;
                case 185: key_y<15 && key_y++; break;
                case 186: key_y>0 && key_y--; break;
                case 10:if(RED!=board[key_x][key_y] && BLUE!=board[key_x][key_y])
                {
                    board[key_x][key_y] = role;
                    return;
                }
            }
        }
    }

    size_t count_key(int off_x,int off_y)
    {
        size_t count = 0;
        for(int x=key_x+off_x,y=key_y+off_y; 
            x>=0 && x<15 && y>=0 && y<15 && board[x][y] == board[key_x][key_y]; x+=off_x,y+=off_y)
        {
            count++;
        }
        return count;
    }

    // 检查是否有5子产生
    bool check_key(void)
    {
        if(4 <= count_key(0,-1)+count_key(0,1)) return true;
        if(4 <= count_key(-1,0)+count_key(1,0)) return true;
        if(4 <= count_key(-1,-1)+count_key(1,1)) return true;
        if(4 <= count_key(-1,1)+count_key(1,-1)) return true;
        return false;
    }

    // 切换角色
    void change_role(void)
    {
        role = (RED==role?BLUE:RED);
    }
};

int main() 
{
    Gobang b;
    b.start();
}

效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: C++实现简易的五子棋游戏

本文链接: https://www.lsjlt.com/news/147950.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C++实现简易的五子棋游戏
    本文实例为大家分享了C++实现简易五子棋游戏的具体代码,供大家参考,具体内容如下 //用c++实现五子棋 #include <iostream> #include <...
    99+
    2024-04-02
  • C++实现简易的五子棋小游戏
    本文实例为大家分享了C++实现简易五子棋小游戏的具体代码,供大家参考,具体内容如下 游戏界面: 这是一个简易的五子棋游戏,由c语言编写,每次循环输入两个位置的坐标,通过其奇偶性判...
    99+
    2024-04-02
  • C++应用实现简易五子棋游戏
    本文实例为大家分享了C++实现简易五子棋游戏位的具体代码,供大家参考,具体内容如下 在实现五子棋小游戏时,首先应该分为棋盘和玩家,我们先定义两个类:chessboard、player...
    99+
    2024-04-02
  • Python实现简易五子棋游戏
    本文实例为大家分享了Python实现五子棋游戏的具体代码,供大家参考,具体内容如下 class CheckerBoard():     '''棋盘类'''     def __ini...
    99+
    2024-04-02
  • java实现简易的五子棋游戏
    本文实例为大家分享了java实现简易五子棋游戏的具体代码,供大家参考,具体内容如下 先上效果图 一、问题分析 1、五子棋游戏分析: 五子棋作为较为普遍且简易的娱乐游戏,受到众多人的...
    99+
    2024-04-02
  • C语言实现简易五子棋小游戏
    本文实例为大家分享了C语言实现简单五子棋小游戏的具体代码,供大家参考,具体内容如下 效果图如下: 设计思路: 棋盘设计为15×15格,初始状态光标在棋盘的中央,白棋先走...
    99+
    2024-04-02
  • Java实现简易五子棋小游戏
    本文实例为大家分享了Java实现简易五子棋小游戏的具体代码,供大家参考,具体内容如下 五子棋是一个简单小游戏,首先我们先想想五子棋都有什么东西,棋子,棋盘; 首先我们可以定义一个棋子...
    99+
    2024-04-02
  • java如何实现简易的五子棋游戏
    这篇文章给大家分享的是有关java如何实现简易的五子棋游戏的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。本文实例为大家分享了java实现简易五子棋游戏的具体代码,供大家参考,具体内容如下先上效果图一、问题分析1、...
    99+
    2023-06-15
  • Java怎么实现简易五子棋小游戏
    这篇文章主要介绍“Java怎么实现简易五子棋小游戏”,在日常操作中,相信很多人在Java怎么实现简易五子棋小游戏问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java怎么实现简易五子棋小游戏”的疑惑有所帮助!...
    99+
    2023-06-30
  • 如何用Python实现简易五子棋游戏
    这篇文章主要介绍了如何用Python实现简易五子棋游戏的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何用Python实现简易五子棋游戏文章都会有所收获,下面我们一起来看看吧。具体代码如下class ...
    99+
    2023-06-30
  • Python3利用Qt5实现简易的五子棋游戏
    要写出一个五子棋游戏,我们最先要解决的,就是如何下子,如何判断已经五子连珠,而不是如何绘制画面,因此我们先确定棋盘 五子棋采用15*15的棋盘,因此,我们可以使用二维列表来创建一个棋...
    99+
    2024-04-02
  • C语言实现简单五子棋游戏
    在生活中五子棋是一个十分普遍的一款游戏,今天让我们一起来实现这款游戏。 1.初始化棋盘 char ret; //数据存储在一个二维数组中,玩家下去*,电脑下去#. char ...
    99+
    2024-04-02
  • python实现简易五子棋游戏(控制台版)
    本文实例为大家分享了python实现简易五子棋游戏的具体代码,供大家参考,具体内容如下 运行效果:  完整代码+注释:  finish = False # 游戏...
    99+
    2024-04-02
  • C语言实现简单的五子棋游戏
    本文实例为大家分享了c语言实现简单五子棋游戏的具体代码,供大家参考,具体内容如下 环境vs2017 一、游戏设计思想 1.该代码设置为 玩家1(*) vs 玩家2(O) 2.选择玩游...
    99+
    2024-04-02
  • C语言实现简易三子棋游戏
    利用数组来创建一个三子棋小游戏的步骤如下: 1、建立一个可以容纳九个元素的3*3棋盘。并初始化,使所有位置都为三。 2、打印棋盘,使其尽可能美观。 3、玩家通过输入坐标(row,co...
    99+
    2024-04-02
  • C++实现五子棋小游戏
    本文实例为大家分享了C++实现五子棋小游戏的具体代码,供大家参考,具体内容如下 思路:先用用system(“color 70”)改变控制台的背景色为灰白色,前...
    99+
    2024-04-02
  • jQuery实现简单五子棋游戏
    本文实例为大家分享了jQuery实现五子棋游戏的具体代码,供大家参考,具体内容如下 五子棋小游戏实现的基本思路: 以15*15标准面板为棋盘布局,黑白棋子交替下棋。每落下一枚棋子就判...
    99+
    2024-04-02
  • QT实现简单五子棋游戏
    本文实例为大家分享了QT实现简单五子棋游戏的具体代码,供大家参考,具体内容如下 FIR.pro #----------------------------------------...
    99+
    2024-04-02
  • pygame实现简单五子棋游戏
    本文实例为大家分享了pygame实现简单五子棋游戏的具体代码,供大家参考,具体内容如下 看代码: ①Gomuku2.py: import sys import random impo...
    99+
    2024-04-02
  • java实现简单的五子棋游戏
    目录一、主要界面二、功能概况三、代码部分四、部分效果展示本文实例为大家分享了java实现简单五子棋游戏的具体代码,供大家参考,具体内容如下 一、主要界面 1、登录界面;2、游戏选择界...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作