返回顶部
首页 > 资讯 > 精选 >c++贪吃蛇代码怎么写
  • 412
分享到

c++贪吃蛇代码怎么写

c++ 2024-03-05 20:03:51 412人浏览 八月长安
摘要

以下是一个简单的c++贪吃蛇游戏代码示例: #include <iOStream> #include <coNIO

以下是一个简单的c++贪吃蛇游戏代码示例:

#include <iOStream>
#include <coNIO.h>
#include <windows.h>

using namespace std;

bool gameOver;
const int width = 20;
const int height = 20;
int x, y, fruitX, fruitY, score;
int tailX[100], tailY[100];
int nTail;
enum eDirection { STOP = 0, LEFT, RIGHT, UP, DOWN };
eDirection dir;

void Setup()
{
    gameOver = false;
    dir = STOP;
    x = width / 2;
    y = height / 2;
    fruitX = rand() % width;
    fruitY = rand() % height;
    score = 0;
}

void Draw()
{
    system("cls");
    for (int i = 0; i < width + 2; i++)
        cout << "#";
    cout << endl;

    for (int i = 0; i < height; i++)
    {
        for (int j = 0; j < width; j++)
        {
            if (j == 0)
                cout << "#";
            if (i == y && j == x)
                cout << "O";
            else if (i == fruitY && j == fruitX)
                cout << "F";
            else
            {
                bool print = false;
                for (int k = 0; k < nTail; k++)
                {
                    if (tailX[k] == j && tailY[k] == i)
                    {
                        cout << "o";
                        print = true;
                    }
                }
                if (!print)
                    cout << " ";
            }

            if (j == width - 1)
                cout << "#";
        }
        cout << endl;
    }

    for (int i = 0; i < width + 2; i++)
        cout << "#";
    cout << endl;
    cout << "Score: " << score << endl;
}

void Input()
{
    if (_kbhit())
    {
        switch (_getch())
        {
        case 'a':
            dir = LEFT;
            break;
        case 'd':
            dir = RIGHT;
            break;
        case 'w':
            dir = UP;
            break;
        case 's':
            dir = DOWN;
            break;
        case 'x':
            gameOver = true;
            break;
        }
    }
}

void Logic()
{
    int prevX = tailX[0];
    int prevY = tailY[0];
    int prev2X, prev2Y;
    tailX[0] = x;
    tailY[0] = y;
    for (int i = 1; i < nTail; i++)
    {
        prev2X = tailX[i];
        prev2Y = tailY[i];
        tailX[i] = prevX;
        tailY[i] = prevY;
        prevX = prev2X;
        prevY = prev2Y;
    }

    switch (dir)
    {
    case LEFT:
        x--;
        break;
    case RIGHT:
        x++;
        break;
    case UP:
        y--;
        break;
    case DOWN:
        y++;
        break;
    default:
        break;
    }

    if (x >= width)
        x = 0;
    else if (x < 0)
        x = width - 1;

    if (y >= height)
        y = 0;
    else if (y < 0)
        y = height - 1;

    for (int i = 0; i < nTail; i++)
    {
        if (tailX[i] == x && tailY[i] == y)
            gameOver = true;
    }

    if (x == fruitX && y == fruitY)
    {
        score += 10;
        fruitX = rand() % width;
        fruitY = rand() % height;
        nTail++;
    }
}

int main()
{
    Setup();
    while (!gameOver)
    {
        Draw();
        Input();
        Logic();
        Sleep(10);
    }

    return 0;
}

请注意,这只是一个简单的贪吃蛇游戏代码示例,可能存在一些功能性的不足和bug。您可以根据需要进一步完善和优化代码。

--结束END--

本文标题: c++贪吃蛇代码怎么写

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

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

猜你喜欢
  • c++贪吃蛇代码怎么写
    以下是一个简单的C++贪吃蛇游戏代码示例: #include <iostream> #include <conio...
    99+
    2024-03-05
    c++
  • C语言实现贪吃蛇代码怎么写
    这是一个简单的C语言贪吃蛇游戏的代码示例: #include <stdio.h> #include <conio....
    99+
    2024-03-01
    C语言
  • python贪吃蛇游戏代码怎么写
    下面是一个简单的Python贪吃蛇游戏的代码示例:```pythonimport pygameimport random# 游戏窗口...
    99+
    2023-08-14
    python
  • python 贪吃蛇代码
    import pygame from pygame.locals import * from sys import exit from pygame.color import THECOLORS import random imp...
    99+
    2023-01-31
    贪吃蛇 代码 python
  • Python贪吃蛇游戏编写代码
    最近在学Python,想做点什么来练练手,命令行的贪吃蛇一般是C的练手项目,但是一时之间找不到别的,就先做个贪吃蛇来练练简单的语法。 由于Python监听键盘很麻烦,没有C语言的kbhit(),所以这条贪吃...
    99+
    2022-06-04
    贪吃蛇 代码 游戏
  • Java实现贪吃蛇游戏代码怎么写
    以下是一个简单的Java实现贪吃蛇游戏的代码示例:```javaimport java.awt.*;import java.awt....
    99+
    2023-08-09
    Java
  • Python代码之贪吃蛇
    Python贪吃蛇游戏的最简单代码: import pygame, sysfrom pygame.locals import *pygame.init()fpsClock = pygame.time.Clock()WINDOW = pyga...
    99+
    2023-10-21
    python
  • python贪吃蛇源代码
    import pygame, sys, random from pygame.locals import * pygame.init() mainClock = pygame.time.Clock() WINDOWWIDTH = 40...
    99+
    2023-01-31
    源代码 贪吃蛇 python
  • C语言实现贪吃蛇游戏代码
    目录一、实现效果二、部分代码解释总结一、实现效果 键位:使用wasd四个键位来控制方向,按q键退出(注意在终用英文输入法实现键控) 规则:蛇每吃一个豆会得10分,同时身体边长、移速加...
    99+
    2024-04-02
  • JavaScript贪吃蛇的实现代码
    本文实例为大家分享了JavaScript实现贪吃蛇的具体代码,供大家参考,具体内容如下 首先我们要确定贪吃蛇应有的功能 1.通过键盘的上下左右控制蛇的移动方向 2.边界判定,即蛇头超...
    99+
    2024-04-02
  • 怎么用最少的JS代码写出贪吃蛇游戏
    这篇文章给大家分享的是有关怎么用最少的JS代码写出贪吃蛇游戏的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。效果图:完整脚本代码:<!doctype html>...
    99+
    2024-04-02
  • 怎么用Python写贪吃蛇游戏
    怎么用Python写贪吃蛇游戏,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。前几天,有人提到贪吃蛇,一下子就勾起了我的兴趣,毕竟在那个Nokia称霸的年代,这款游戏可是经典...
    99+
    2023-06-02
  • shell实现贪吃蛇的示例代码
    目录前言背景环境源码前言这是几年前刚接触shell,用bash shell写的一个贪吃蛇。刚才看见了,试了一下之前写的代码,在MAC os上效果不在理想,放到linux服务器,看起来运行着还行。给大家再分享一下。下面是我当...
    99+
    2023-05-12
    shell 贪吃蛇
  • 怎么用C++实现贪吃蛇游戏
    这篇文章给大家分享的是有关怎么用C++实现贪吃蛇游戏的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1976年,Gremlin平台推出了一款经典街机游戏Blockade。游戏中,两名玩家分别控制一个角色在屏幕上移动...
    99+
    2023-06-25
  • QT实现贪吃蛇游戏代码详解
    目录一、新建一个Qt项目二、添加要用到的头文件三、写类声明信息四、对类函数的实现构造函数界面刷新随机奖励的生成移动绘图按键事件判断蛇身是否相撞五、结束一、新建一个Qt项目 新建Qt ...
    99+
    2024-04-02
  • 怎么用C#实现贪吃蛇小游戏
    本文小编为大家详细介绍“怎么用C#实现贪吃蛇小游戏”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么用C#实现贪吃蛇小游戏”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。界面界面比较简单,一个按钮和一个积分器组成...
    99+
    2023-06-29
  • C#实现贪吃蛇小游戏
    本文实例为大家分享了C#实现贪吃蛇小游戏的具体代码,供大家参考,具体内容如下 之前一直想写一个贪吃蛇小游戏,上个周末终于有时间做了一个,现在和大家分享。 界面 界面比较简单,一个按钮...
    99+
    2024-04-02
  • C语言实现双人贪吃蛇游戏实例代码
    贪吃蛇双人小游戏,每局游戏两分钟,死亡则直接失败,若时间结束,则分高者获胜。   上源代码: ​ #include <stdio.h> #include <...
    99+
    2024-04-02
  • 基于AndroidFlutter编写贪吃蛇游戏
    目录前言开发步骤:1.定义蛇和豆子2.让蛇动起来3.使用陀螺仪来控制蛇4.让蛇吃掉豆子5.吃掉豆子随机生成一个豆子前言 放假期间,小T打算回顾一下经典,想用Flutter做一下小游戏...
    99+
    2024-04-02
  • golang 手写贪吃蛇示例实现
    目录背景需求构思逻辑构思代码结构小结 背景 题主现在是php程序员, 学了一周的golang, 深刻的感受到了其特性的优雅及功能的强大, 为了增强熟练度, 决定来写个贪吃蛇来践行下....
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作