C语言编写最炫贪吃蛇

本文展示了使用C语言编写的贪吃蛇游戏,包括游戏首页、提示页面和实际游戏界面的截图。用户在首页任意按键可触发提示,源码已提供,并在GitHub上有项目链接。
摘要由CSDN通过智能技术生成

贪吃蛇,游戏规则就不介绍了。

直接上图,给大家看程序的运行效果:

这个是游戏首页!

这个是游戏提示页,如果用户在首页不知道如何操作,随便点击一个按键就会有提示页面出现!

以下是游戏界面截图

下面上菜了(源码中有些字符串看起来可能没有对齐,不用理,直接复制粘贴,然后编译执行!)

#include<stdio.h>
#include<string.h>
#include<windows.h>
#include<time.h>
#include<conio.h>
#include"stdlib.h"
/*
上 224 72
下 224 80
左 224 75
右 224 77
*/
const WORD FORE_BLUE   = FOREGROUND_BLUE;           //蓝色文本属性
const WORD FORE_GREEN  = FOREGROUND_GREEN;          //绿色文本属性
const WORD FORE_RED    = FOREGROUND_RED;            //红色文本属性
const WORD FORE_PURPLE = FORE_BLUE | FORE_RED;      //紫色文本属性
const WORD FORE_CYAN   = FORE_BLUE | FORE_GREEN;    //青色文本属性
const WORD FORE_YELLOW = FORE_RED | FORE_GREEN;     //黄色文本属性
const WORD FORE_GRAY   = FOREGROUND_INTENSITY;      //灰色文本属性

const WORD BACK_BLUE   = BACKGROUND_BLUE;           //蓝色背景属性
const WORD BACK_GREEN  = BACKGROUND_GREEN;          //绿色背景属性
const WORD BACK_RED    = BACKGROUND_RED;            //绿色背景属性
const WORD BACK_PURPLE = BACK_BLUE | BACK_RED;      //紫色背景属性
const WORD BACK_CYAN   = BACK_BLUE | BACK_GREEN;    //青色背景属性
const WORD BACK_YELLOW = BACK_RED | BACK_GREEN;     //黄色背景属性
const WORD BACK_GRAY   = BACKGROUND_INTENSITY;      //灰色背景属性
HANDLE handle_out = GetStdHandle(STD_OUTPUT_HANDLE);    //获得标准输出设备句柄
CONSOLE_SCREEN_BUFFER_INFO csbi;                        //定义窗口缓冲区信息结构体
// 蛇的身体节点
struct BodyNode {
	int typeFlag; // 类型,用于区分头、身体、尾部
	int x; // 所处地图上的x坐标
	int y; // 所处地图上的y坐标
	BodyNode *next; // 下一个节点
	BodyNode *last; // 上一个节点 
};
// 头节点
BodyNode* head;
// 尾巴 
BodyNode* tail; 
// 蛇的移动方向(1:上、2:右、3:下、4:左、5:静止状态)
int direction = 5; 
// 游戏状态(1:运行中、0:死亡、暂停) 
int gameStatus = 1; 
// 程序状态(1:正常运行、0:结束)
int power = 1; 
// 控制着是否创建食物
bool createFoodFlag = false;
// 当前的小蛇的长度(包括头)
int snakeLength = 3;
int snakeSpeed = 300;
const int GAME_MAP_HEIGHT = 25;
const int GAME_MAP_WIDTH =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值