返回顶部
首页 > 资讯 > 精选 >C语言实现贪吃蛇代码怎么写
  • 460
分享到

C语言实现贪吃蛇代码怎么写

C语言 2024-03-01 22:03:57 460人浏览 薄情痞子
摘要

这是一个简单的C语言贪吃蛇游戏的代码示例: #include <stdio.h> #include <coNIO.

这是一个简单的C语言贪吃蛇游戏的代码示例:

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

#define WIDTH 20
#define HEIGHT 20

int snakeX[100], snakeY[100];
int snakeLength = 1;
int fruitX, fruitY;
int score = 0;
int gameover = 0;
char direction = 'r';

void setup() {
    snakeX[0] = WIDTH / 2;
    snakeY[0] = HEIGHT / 2;

    fruitX = rand() % WIDTH;
    fruitY = rand() % HEIGHT;
}

void draw() {
    system("cls");

    for (int i = 0; i < WIDTH + 2; i++)
        printf("#");
    printf("\n");

    for (int i = 0; i < HEIGHT; i++) {
        for (int j = 0; j < WIDTH; j++) {
            if (j == 0)
                printf("#");

            if (i == snakeY[0] && j == snakeX[0])
                printf("O");
            else if (i == fruitY && j == fruitX)
                printf("F");
            else {
                int printSnake = 0;
                for (int k = 1; k < snakeLength; k++) {
                    if (i == snakeY[k] && j == snakeX[k]) {
                        printf("o");
                        printSnake = 1;
                    }
                }
                if (!printSnake)
                    printf(" ");
            }

            if (j == WIDTH - 1)
                printf("#");
        }
        printf("\n");
    }

    for (int i = 0; i < WIDTH + 2; i++)
        printf("#");
    printf("\n");

    printf("Score: %d", score);
}

void input() {
    if (_kbhit()) {
        switch (_getch()) {
        case 'a':
            direction = 'l';
            break;
        case 'd':
            direction = 'r';
            break;
        case 'w':
            direction = 'u';
            break;
        case 's':
            direction = 'd';
            break;
        case 'x':
            gameover = 1;
            break;
        }
    }
}

void logic() {
    int prevX = snakeX[0];
    int prevY = snakeY[0];
    int prev2X, prev2Y;
    snakeX[0] = snakeX[0] + 1;
    snakeY[0] = snakeY[0] + 1;
    for (int i = 1; i < snakeLength; i++) {
        prev2X = snakeX[i];
        prev2Y = snakeY[i];
        snakeX[i] = prevX;
        snakeY[i] = prevY;
        prevX = prev2X;
        prevY = prev2Y;
    }

    switch (direction) {
    case 'l':
        snakeX[0]--;
        break;
    case 'r':
        snakeX[0]++;
        break;
    case 'u':
        snakeY[0]--;
        break;
    case 'd':
        snakeY[0]++;
        break;
    }

    if (snakeX[0] == fruitX && snakeY[0] == fruitY) {
        score += 10;
        snakeLength++;
        fruitX = rand() % WIDTH;
        fruitY = rand() % HEIGHT;
    }

    if (snakeX[0] >= WIDTH || snakeX[0] < 0 || snakeY[0] >= HEIGHT || snakeY[0] < 0)
        gameover = 1;

    for (int i = 1; i < snakeLength; i++) {
        if (snakeX[0] == snakeX[i] && snakeY[0] == snakeY[i])
            gameover = 1;
    }
}

int main() {
    setup();
    while (!gameover) {
        draw();
        input();
        logic();
        Sleep(100);
    }

    return 0;
}

请注意,这只是一个简单版本的贪吃蛇游戏,可能还需要进一步优化和完善。您可以根据自己的需求进行修改和扩展。

--结束END--

本文标题: C语言实现贪吃蛇代码怎么写

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

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

猜你喜欢
  • C语言实现贪吃蛇代码怎么写
    这是一个简单的C语言贪吃蛇游戏的代码示例: #include <stdio.h> #include <conio....
    99+
    2024-03-01
    C语言
  • c++贪吃蛇代码怎么写
    以下是一个简单的C++贪吃蛇游戏代码示例: #include <iostream> #include <conio...
    99+
    2024-03-05
    c++
  • C语言实现贪吃蛇游戏代码
    目录一、实现效果二、部分代码解释总结一、实现效果 键位:使用wasd四个键位来控制方向,按q键退出(注意在终用英文输入法实现键控) 规则:蛇每吃一个豆会得10分,同时身体边长、移速加...
    99+
    2024-04-02
  • C语言如何实现贪吃蛇
    本篇内容主要讲解“C语言如何实现贪吃蛇”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言如何实现贪吃蛇”吧!一、游戏说明1.1游戏按键说明按方向键上下左右,可以实现蛇移动方向的改变。短时间长按...
    99+
    2023-06-21
  • C语言实现双人贪吃蛇游戏实例代码
    贪吃蛇双人小游戏,每局游戏两分钟,死亡则直接失败,若时间结束,则分高者获胜。   上源代码: ​ #include <stdio.h> #include <...
    99+
    2024-04-02
  • Java实现贪吃蛇游戏代码怎么写
    以下是一个简单的Java实现贪吃蛇游戏的代码示例:```javaimport java.awt.*;import java.awt....
    99+
    2023-08-09
    Java
  • C语言Easyx实现贪吃蛇详解
    目录一、头文件包含二、创建蛇与食物的结构体三、游戏的初始化四、游戏的绘画事件五、蛇的移动事件六、输入方向******这个方面没什么好解释的大家看代码应该可以看懂。七、生成食物八、吃食...
    99+
    2024-04-02
  • C语言基于EasyX实现贪吃蛇
    本文实例为大家分享了C语言基于EasyX实现贪吃蛇的具体代码,供大家参考,具体内容如下 成品展示: 实现思路: 贪吃蛇的实现思路并不复杂,由于我们需要将数据展示在图形窗口上,因此就...
    99+
    2024-04-02
  • C语言实现贪吃蛇小黑窗
    本文实例为大家分享了C语言实现贪吃蛇小黑窗的具体代码,供大家参考,具体内容如下 思路: 1.利用整型二维数组保存显示数据,小蛇每移动一次清屏并便利数组做到动态效果。每次移动(清屏)的...
    99+
    2024-04-02
  • C语言实现简易贪吃蛇游戏的示例代码
    目录前言一、构造小蛇二、小蛇的移动三、控制小蛇移动四、判断游戏失败五、吃食物增加长度六、完整代码前言 实现一个经典的小游戏——贪吃蛇,如图所示。读者可以先自己...
    99+
    2022-11-13
    C语言贪吃蛇游戏 C语言贪吃蛇 C语言 游戏
  • python贪吃蛇游戏代码怎么写
    下面是一个简单的Python贪吃蛇游戏的代码示例:```pythonimport pygameimport random# 游戏窗口...
    99+
    2023-08-14
    python
  • 用C语言实现贪吃蛇小游戏
    本文实例为大家分享了C语言实现贪吃蛇小游戏的具体代码,供大家参考,具体内容如下 实现功能 蛇最开始三节,向右移动。用户可以通过按上下左右来控制蛇的移动,食物随机产生,蛇吃到食物后蛇的...
    99+
    2024-04-02
  • 用纯C语言实现贪吃蛇游戏
    本文实例为大家分享了C语言实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 在读大学生一枚,五一期间用四天时间写一个小游戏。 本贪吃蛇游戏代码共计531行,开发环境是VS,游戏分为...
    99+
    2024-04-02
  • C语言实现贪吃蛇游戏演示
    本文实例为大家分享了C语言实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 IDE用的是 VS2019 先看效果   代码全览 game.h #pragma once...
    99+
    2024-04-02
  • JavaScript贪吃蛇的实现代码
    本文实例为大家分享了JavaScript实现贪吃蛇的具体代码,供大家参考,具体内容如下 首先我们要确定贪吃蛇应有的功能 1.通过键盘的上下左右控制蛇的移动方向 2.边界判定,即蛇头超...
    99+
    2024-04-02
  • C语言实现简单的贪吃蛇游戏的示例代码
    目录运行效果代码一个简单的贪吃蛇游戏本来代码就不多,在保证可读性的情况下,很容易就控制在100以内了。 运行效果 代码 #include <Windows.h> #in...
    99+
    2023-01-12
    C语言实现贪吃蛇游戏 C语言贪吃蛇游戏 C语言贪吃蛇
  • Linux下怎么用C语言实现贪吃蛇游戏
    这篇文章主要介绍“Linux下怎么用C语言实现贪吃蛇游戏”,在日常操作中,相信很多人在Linux下怎么用C语言实现贪吃蛇游戏问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Li...
    99+
    2024-04-02
  • Linux下C语言实现贪吃蛇小游戏
    本文实例为大家分享了C语言实现贪吃蛇小游戏的具体代码,供大家参考,具体内容如下 此次贪吃蛇小游戏的目的是使得我在Linux底下使用vi进行编写的 心得: 1.自己对linux中如何使用vi更加熟悉 如::wq yy ...
    99+
    2022-06-03
    Linux C语言 贪吃蛇
  • C语言链表实现贪吃蛇小游戏
    本文实例为大家分享了C语言链表实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 项目名称: 贪吃蛇小游戏 运行环境: Linux 编程语言: C语言 主要语法: 链表,指针,函数 ...
    99+
    2024-04-02
  • C语言实现简单的贪吃蛇游戏
    本文实例为大家分享了C语言实现简单贪吃蛇游戏的具体代码,供大家参考,具体内容如下 用指针数组来表示蛇,p[0]表示蛇头 控制方向:w,s,a,d-->上下左右  j,...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作