服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C/C++ - 基于C++实现五子棋小游戏

基于C++实现五子棋小游戏

2022-11-22 14:23无乎648 C/C++

这篇文章主要为大家详细介绍了基于C++实现五子棋小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

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

基于C++实现五子棋小游戏

基于C++实现五子棋小游戏

 (这是一个颜色会变化的呦)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
#include <iostream>
using namespace std;
int b[20][20];
int n;
int m;
void qipan()
{
    system("cls");
    int k = 1;
    for (int k = 0;k < n;++k)
    {
        for (int j = 0;j < m;++j)
        {
            cout << " ---- ";
        }
        cout << endl;
        for (int i = 0;i < n;++i)
        {
            for (int j = 0;j < m;++j)
            {
                if (b[i][j] < 10 && b[i][j] >= 0) cout << "| " << 0 << b[i][j] << " |";
                else if (b[i][j] == -1) cout << "| " << "█" << " |";
                else if (b[i][j] == -2) cout << "|" << " ○ " << "|";
                else cout << "| " << b[i][j] << " |";
 
                k++;
            }
 
 
            cout << endl;
            for (int j = 0;j < m;++j)
            {
                cout << " ---- ";
            }
            cout << endl;
        }
    }
}
void success()
{
    long time;
    for (;;)
    {
        system("color a");
        for (time = 0; time < 99999999; time++);
        system("color b");
        for (time = 0; time < 99999999; time++);
        system("color c");
        for (time = 0; time < 99999999; time++);
        system("color d");
        for (time = 0; time < 99999999; time++);
        system("color e");
        for (time = 0; time < 99999999; time++);
        system("color f");
        for (time = 0; time < 99999999; time++);
        system("color 0");
        for (time = 0; time < 99999999; time++);
        system("color 1");
        for (time = 0; time < 99999999; time++);
        system("color 2");
        for (time = 0; time < 99999999; time++);
        system("color 3");
        for (time = 0; time < 99999999; time++);
        system("color 4");
        for (time = 0; time < 99999999; time++);
        system("color 5");
        for (time = 0; time < 99999999; time++);
        system("color 6");
        for (time = 0; time < 99999999; time++);
        system("color 7");
        for (time = 0; time < 99999999; time++);
        system("color 8");
        for (time = 0; time < 99999999; time++);
        system("color 9");
    }
}
int main()
{
    cout << "请选择你们想要的棋盘大小(棋盘的面积请不要大于100)" << endl;
    cout << "棋盘的长:(推荐长度为10)" << endl;
    cin >> m;
    cout << "棋盘的宽:(推荐长度为10)" << endl;
    cin >> n;
    for (int i = 0;i < n;++i)
    {
        for (int j = 0;j < m;++j)
        {
            b[i][j] = i * m + j;
        }
    }
    qipan();
    while (1)
    {
        int x;
        cout << "请玩家一输入:" << endl;
        cin >> x;
        if (x == 648)
        {
            cout << "玩家一使用系统外挂" << endl;
            cout << "游戏结束" << endl;
            cout << "玩家一获胜" << endl;
            success();
            return 0;
        }
        for (int i = 0;i < n;++i)
        {
            for (int j = 0;j < m;++j)
            {
                if (b[i][j] == x) b[i][j] = -1;
            }
        }
        for (int i = 0;i < n;++i)
        {
            for (int j = 0;j < m - 4;++j)
            {
                if ((b[i][j] == -1 && b[i][j + 1] == -1 && b[i][j + 2] == -1 && b[i][j + 3] == -1 && b[i][j + 4] == -1)
                    || (b[i][j] == -1 && b[i + 1][j] == -1 && b[i + 2][j] == -1 && b[i + 3][j] == -1 && b[i + 4][j] == -1)
                    || (b[i][j] == -1 && b[i + 1][j + 1] == -1 && b[i + 2][j + 2] == -1 && b[i + 3][j + 3] == -1 && b[i + 4][j + 4] == -1))
                {
                    cout << "游戏结束" << endl;
                    cout << "玩家一获胜" << endl;
                    success();
                    return 0;
                }
                else if (i >= 4 && (b[i][j] == -1 && b[i - 1][j + 1] == -1 && b[i - 2][j + 2] == -1 && b[i - 3][j + 3] == -1 && b[i - 4][j + 4] == -1))
                {
                    cout << "游戏结束" << endl;
                    cout << "玩家一获胜" << endl;
                    success();
                    return 0;
                }
            }
        }
        qipan();
        cout << "请玩家二输入:" << endl;
        cin >> x;
        if (x == 648)
        {
            cout << "玩家二使用系统外挂" << endl;
            cout << "游戏结束" << endl;
            cout << "玩家二获胜" << endl;
            success();
            return 0;
        }
        for (int i = 0;i < n;++i)
        {
            for (int j = 0;j < m;++j)
            {
                if (b[i][j] == x) b[i][j] = -2;
            }
        }
        qipan();
        for (int i = 0;i < n;++i)
        {
            for (int j = 0;j < m - 4;++j)
            {
                if ((b[i][j] == -2 && b[i][j + 1] == -2 && b[i][j + 2] == -2 && b[i][j + 3] == -2 && b[i][j + 4] == -2)
                    || (b[i][j] == -2 && b[i + 1][j] == -2 && b[i + 2][j] == -2 && b[i + 3][j] == -2 && b[i + 4][j] == -2)
                    || (b[i][j] == -2 && b[i + 1][j + 1] == -2 && b[i + 2][j + 2] == -2 && b[i + 3][j + 3] == -2 && b[i + 4][j + 4] == -2))
                {
                    cout << "游戏结束" << endl;
                    cout << "玩家二获胜" << endl;
                    success();
                    return 0;
                }
                else if (i >= 4 && (b[i][j] == -2 && b[i - 1][j + 1] == -2 && b[i - 2][j + 2] == -2 && b[i - 3][j + 3] == -2 && b[i - 4][j + 4] == -2))
                {
                    cout << "游戏结束" << endl;
                    cout << "玩家二获胜" << endl;
                    success();
                    return 0;
                }
            }
        }
 
 
    }
}

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

原文链接:https://blog.csdn.net/WUHU648/article/details/108139362

延伸 · 阅读

精彩推荐
  • C/C++C++中Socket网络编程实例详解

    C++中Socket网络编程实例详解

    这篇文章主要介绍了C++中Socket网络编程实例详解的相关资料,需要的朋友可以参考下...

    C++教程网5052021-05-07
  • C/C++C++ 中virtual 虚函数用法深入了解

    C++ 中virtual 虚函数用法深入了解

    这篇文章主要介绍了C++ 中virtual 虚函数用法深入了解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们...

    静悟生慧4702021-09-16
  • C/C++C语言之复杂链表的复制详解

    C语言之复杂链表的复制详解

    这篇文章主要为大家详细介绍了C语言之复杂链表的复制,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    iotdog6362021-05-21
  • C/C++C语言详解实现链式二叉树的遍历与相关接口

    C语言详解实现链式二叉树的遍历与相关接口

    二叉树的链式存储结构是指,用链表来表示一棵二叉树,即用链来指示元素的逻辑关系。通常的方法是链表中每个结点由三个域组成,数据域和左右指针域...

    CodeWinter8512022-11-15
  • C/C++C语言编程函数指针入门精讲教程

    C语言编程函数指针入门精讲教程

    大家在C语言的学习中一定会接触指针这样一个东西,而指针也是新手路上一定要消灭的boss,如果以后还要学习Java的同学更是要注重指针的学习,希望能够...

    高邮吴少4032022-02-13
  • C/C++C语言入门篇--变量[定义,初始化赋值,外部声明]

    C语言入门篇--变量[定义,初始化赋值,外部声明]

    本篇文章是c语言基础篇,本文对初识c语言的变量、变量的定义、初始化与赋值、变量的分类、含义、外部声明做了简要的描述,帮助大家快速入门c语言的...

    yycure6372021-12-22
  • C/C++c++11中regex正则表达式示例简述

    c++11中regex正则表达式示例简述

    这篇文章主要给大家介绍了关于c++11中regex正则表达式的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用c++11具有一定的参考学习价值,...

    p__n11922021-08-05
  • C/C++C++ decltype类型说明符

    C++ decltype类型说明符

    在C++中,decltype作为操作符,用于查询表达式的数据类型。decltype在C++11标准制定时引入,主要是为泛型编程而设计,以解决泛型编程中,由于有些类型由模...

    C++教程网12462021-03-27