C语言贪吃蛇

#只讲逻辑不讲一些基础,基础大概过一遍就行#

project-one: 无 (gitee.com)仓库里面有原代码

一、基础工作

? ? ? ? 1、先将你的编译器换成32位环境,也就是x86,

? ? ? ? 如果是控制台主机窗口则管,若不是需要改为控制台主机窗口

打开运行窗口后点击那个,向下的箭头

C语言贪吃蛇

再点击设置

C语言贪吃蛇

默认终端应用程序改为控制台主机

C语言贪吃蛇

? ? ? ? 2、创建三个文件,两个.c文件,一个.h文件。下图供参考

C语言贪吃蛇

? ? ? ? 3、为了避免麻烦直接包含所需要用到的头文件

C语言贪吃蛇

4、在你的 .c 文件中包含 .h的头文件

C语言贪吃蛇

5、完成头文件里的预先设定

关于蛇结构体的成员的创建

C语言贪吃蛇

6、进入你的主函数里,我们需要先干的几件事,随机数生成(生成食物时会用到)、修改窗口大小(方便后续的绘图)、本地化、隐藏光标,游戏运行函数

C语言贪吃蛇

窗口大小

我的窗口大小差不多就是这么大,到绘制地图那里细讲大小的调整。

C语言贪吃蛇本地化的设置就需要头文件locale.h,可直接照抄影响不大

隐藏光标函数

????????名字是自己起的可更改,里面的函数就是系统自己的函数了,不能改名字,用到的头文件 windows.h,可以直接套用无需其他设计

C语言贪吃蛇

7、来到我的测试函数了

可以先不用管下面的代码,到时候你可按照自己的逻辑设计

C语言贪吃蛇

二、开始界面函数

C语言贪吃蛇

我调用了两个函数实现开始界面C语言贪吃蛇

1、欢迎函数

? ? ? ? 需要说的只有一个光标定位函数(在地图绘制那里可以找到),光标定位函数,指定光标的起始位置打印。C语言贪吃蛇

我这个写出来就是这样,有点歪了,你们可以微调,需要改什么注意光标的位置就行。

C语言贪吃蛇

这个俩个任意键继续是因为那两个暂停的代码。

C语言贪吃蛇

2、地图绘制

????????建议在excel表格中画出你整个整个窗口的大小,我这个因为一开始写的时候我就直接先画的游戏的地图,外加改了很多次,可做参考,

? ? ? ? 值得注意的是一个 纵坐标对应两个横坐标C语言贪吃蛇

? ? ? ? 黄色和绿色分别是地图方块,如下图,绿色自己就是 y坐标(纵坐标),橙色是x坐标,因为一个汉字占两个空间,

C语言贪吃蛇

光标定位函数是自己写的,直接用就完了。

C语言贪吃蛇

我这里一共 36 个方块一个方块两个 x 坐标, x 和 y 都是从 0 开始的

? ? ? ? 所以x坐标到 70 结束包含 70

? ? ? ? y坐标只看中间,为29个方块,一共是31个方块,最下面的 y坐标是30

C语言贪吃蛇

?三、初始化,及帮组信息打印

C语言贪吃蛇

界面展示C语言贪吃蛇

函数主体展示

C语言贪吃蛇

1、打印帮助信息

没什么好说,找到对应的位置打印出帮助信息,如果打印出来效果不对,请调整坐标,可能是超过窗口范围了。

C语言贪吃蛇

2、创建蛇身体

身体是身体的符号,我做了区分的

C语言贪吃蛇

先创建头,再创建蛇的身体,创建的时候连在一起,相当于是一个单链表,x坐标得是2的倍数就行。

C语言贪吃蛇

3、初始化食物

我的初始化食物函数,自带打印功能,所以在吃掉一个食物时可以直接调用

C语言贪吃蛇

4、信息初始化

方向设为左,状态正常,一个食物分数1分,总分数 0,睡眠时间200毫秒

C语言贪吃蛇

5、打印出蛇身

遍历加打印

C语言贪吃蛇

四、游戏运行逻辑

C语言贪吃蛇

按键判断函数宏,如果这个键被按过返回1否则为0, 这个在头文件里面C语言贪吃蛇

1、按键判断

C语言贪吃蛇

2、蛇每走一步我们需要干嘛,Snakemove();

C语言贪吃蛇

1、连接节点

C语言贪吃蛇

2、新节点判断

撞墙和撞自己修改状态就行。由end函数来审判

C语言贪吃蛇

五、结束操作

C语言贪吃蛇

C语言贪吃蛇

?末尾操作C语言贪吃蛇

更新书写规范

perror报错时不要自己添加行号,因为可能会随着代码的更改行号会变,可以加个函数名

C语言贪吃蛇

上一篇:ibm电脑开不了机怎么办(联想THINKPAD笔记本开不了机了)
下一篇:iphone各国版本区别(苹果手机港版.美版.欧版有什么区别)