[项目实战2]贪吃蛇游戏

目录

贪吃蛇游戏::

一、游戏效果及功能实现:

1.规则

​​​​​​​ ​​​​​​​ ​​​​​​​ 2.基本功能实现

​​​​​​​ ​​​​​​​ ​​​​​​​ 3.技术要点

​​​​​​​ ​​​​​​​ ​​​​​​​ 4.实现思路

​​​​​​​ ​​​​​​​ ​​​​​​​ 5.游戏效果呈现

[二、Win32 API介绍](#二、Win32 API介绍)

​​​​​​​ ​​​​​​​ ​​​​​​​ 1.WindowsAPI函数简单介绍

​​​​​​​ ​​​​​​​ ​​​​​​​ 2.控制台程序(Console)

​​​​​​​ ​​​​​​​ ​​​​​​​ cmd命令窗口打开方式

​​​​​​​ ​​​​​​​ ​​​​​​​ 控制cmd控制台的长度宽度命令

​​​​​​​ ​​​​​​​ ​​​​​​​ title命令

​​​​​​​ ​​​​​​​ ​​​​​​​ 3.vs中的控制台窗口

​​​​​​​ ​​​​​​​ ​​​​​​​ 4.设置控制台相关属性

​​​​​​​ ​​​​​​​ ​​​​​​​ system函数执行系统命令5.控制台屏幕上的坐标COORD

​​​​​​​ ​​​​​​​ ​​​​​​​ 5.GetStdHandle函数

​​​​​​​ ​​​​​​​ ​​​​​​​ 6.GetConsoleCursorInfo函数(检测光标大小和可见性)

​​​​​​​ ​​​​​​​ ​​​​​​​ CONSOLE_CURSOR_INFO

​​​​​​​ ​​​​​​​ ​​​​​​​ 7.SetConsoleCursorInfo(设置光标大小和可见性)

​​​​​​​ ​​​​​​​ ​​​​​​​ 8.SetConsoleCurPosition(设置光标坐标位置)

​​​​​​​ ​​​​​​​ ​​​​​​​ 9.GetAsyncKeyState(获取键盘虚拟键值)

​​​​​​​ ​​​​​​​ ​​​​​​​ 检测键盘输入的内容:"虚拟键代码"

三、贪吃蛇游戏设计与分析

​​​​​​​ ​​​​​​​ ​​​​​​​ 1.地图/界面

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 本地化

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 类项

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ setlocale函数

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 打印宽字符

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 地图坐标

​​​​​​​ ​​​​​​​ ​​​​​​​ 2.蛇身与食物

​​​​​​​ ​​​​​​​ ​​​​​​​ 3数据结构设计

四、具体代码实现

​​​​​​​ ​​​​​​​ ​​​​​​​ 1.文件管理

​​​​​​​ ​​​​​​​ ​​​​​​​ 2.头文件的声明准备

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ define预处理

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 蛇的状态、游戏状态的枚举类型声明

​​​​​​​ ​​​​​​​ ​​​​​​​ 3.控制台的定位

​​​​​​​ ​​​​​​​ ​​​​​​​ 4.隐藏光标

​​​​​​​ ​​​​​​​ ​​​​​​​ 5.游戏界面初始化

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​欢迎界面

​​​​​​​ ​​​​​​​ ​​​​​​​ 游戏说明界面

​​​​​​​ ​​​​​​​ ​​​​​​​ 游戏准备界面

​​​​​​​ ​​​​​​​ ​​​​​​​ 6.蛇的初始化

​​​​​​​ ​​​​​​​ ​​​​​​​ 7.食物的生成

​​​​​​​ ​​​​​​​ ​​​​​​​ 8.游戏的初始化

​​​​​​​ ​​​​​​​ ​​​​​​​ 9.蛇的移动

​​​​​​​ ​​​​​​​ ​​​​​​​ 蛇头出现

​​​​​​​ ​​​​​​​ ​​​​​​​ 10.吃食物

​​​​​​​ ​​​​​​​ ​​​​​​​ 判定食物

​​​​​​​ ​​​​​​​ ​​​​​​​ 蛇移动、吃食物变长的逻辑

​​​​​​​ ​​​​​​​ ​​​​​​​ 11.死亡判定

​​​​​​​ ​​​​​​​ ​​​​​​​ 撞墙死亡

​​​​​​​ ​​​​​​​ ​​​​​​​ 撞到自身死亡

​​​​​​​ ​​​​​​​ ​​​​​​​ 12.键盘操控相关

​​​​​​​ ​​​​​​​ ​​​​​​​ 加速减速

​​​​​​​ ​​​​​​​ ​​​​​​​ 空格暂停

​​​​​​​ ​​​​​​​ ​​​​​​​ 13.GameStart函数

​​​​​​​ ​​​​​​​ ​​​​​​​ 14.GameRun函数

​​​​​​​ ​​​​​​​ ​​​​​​​ 15.GameEnd函数

五、贪吃蛇源代码展示:

​​​​​​​ ​​​​​​​ snake.h

​​​​​​​ ​​​​​​​ snake.c

​​​​​​​ ​​​​​​​ ​​​​​​​test.c


贪吃蛇游戏::

一、游戏效果及功能实现:

1.规则

2.基本功能实现

3.技术要点

4.实现思路

5.游戏效果呈现

二、Win32 API介绍

1.WindowsAPI函数简单介绍

2.控制台程序(Console)

cmd命令窗口打开方式

控制cmd控制台的长度宽度命令

title命令

3.vs中的控制台窗口

4.设置控制台相关属性

system函数执行系统命令

5.控制台屏幕上的坐标COORD

6.GetStdHandle函数

7.GetConsoleCursorInfo函数(检测光标大小和可见性)

CONSOLE_CURSOR_INFO

8.SetConsoleCursorInfo(设置光标大小和可见性)

9.SetConsoleCurPosition(设置光标坐标位置)

10.GetAsyncKeyState(获取键盘虚拟键值)

检测键盘输入的内容:"虚拟键代码"

三、贪吃蛇游戏设计与分析

1.地图/界面

<locale.h>本地化

类项

setlocale函数

打印宽字符

地图坐标

2.蛇身与食物

3数据结构设计

四、具体代码实现

1.文件管理

2.头文件的声明准备

define预处理

蛇的状态、游戏状态的枚举类型声明

3.控制台的定位

4.隐藏光标

5.游戏界面初始化

欢迎界面

游戏说明界面

游戏准备界面

6.蛇的初始化

7.食物的生成

8.游戏的初始化

9.蛇的移动

蛇头出现

10.吃食物

判定食物

蛇移动、吃食物变长的逻辑

11.死亡判定

撞墙死亡

撞到自身死亡

12.键盘操控相关

加速减速

空格暂停

13.GameStart函数

14.GameRun函数

15.GameEnd函数

五、贪吃蛇源代码展示:

Snake.h

Snake.c

Test.c

相关推荐
Sammyyyyy36 分钟前
2025年,Javascript后端应该用 Bun、Node.js 还是 Deno?
开发语言·javascript·node.js
指针满天飞37 分钟前
Collections.synchronizedList是如何将List变为线程安全的
java·数据结构·list
洋曼巴-young1 小时前
240. 搜索二维矩阵 II
数据结构·算法·矩阵
汉汉汉汉汉1 小时前
C++11新特性详解:从列表初始化到线程库
c++
William一直在路上1 小时前
Python数据类型转换详解:从基础到实践
开发语言·python
看到我,请让我去学习2 小时前
Qt— 布局综合项目(Splitter,Stacked,Dock)
开发语言·qt
GUET_一路向前2 小时前
【C语言防御性编程】if条件常量在前,变量在后
c语言·开发语言·if-else·防御性编程
曳渔2 小时前
UDP/TCP套接字编程简单实战指南
java·开发语言·网络·网络协议·tcp/ip·udp
楼田莉子2 小时前
C++算法题目分享:二叉搜索树相关的习题
数据结构·c++·学习·算法·leetcode·面试
三千道应用题2 小时前
WPF&C#超市管理系统(6)订单详情、顾客注册、商品销售排行查询和库存提示、LiveChat报表
开发语言·c#·wpf