[项目实战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

相关推荐
java叶新东老师3 分钟前
goland编写go语言导入自定义包出现: package xxx is not in GOROOT (/xxx/xxx) 的解决方案
开发语言·后端·golang
@蓝莓果粒茶14 分钟前
LeetCode第350题_两个数组的交集II
c++·python·学习·算法·leetcode·职场和发展·c#
设计师小聂!15 分钟前
力扣热题100----------53最大子数组和
java·数据结构·算法·leetcode
檀越剑指大厂30 分钟前
【Python系列】Flask 应用中的主动垃圾回收
开发语言·python·flask
檀越剑指大厂36 分钟前
【Python系列】使用 memory_profiler 诊断 Flask 应用内存问题
开发语言·python·flask
笠码39 分钟前
JVM Java虚拟机
java·开发语言·jvm·垃圾回收
橙小花1 小时前
C语言:指针、变量指针与指针变量、数组指针与指针数组
c语言·开发语言
YouQian7721 小时前
问题 C: 字符串匹配
c语言·数据结构·算法
yanxing.D1 小时前
408——数据结构(第二章 线性表)
数据结构·算法
Cyanto1 小时前
MyBatis-Plus高效开发实战
java·开发语言·数据库