- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c语言贪吃蛇详细步骤.pptx
C语言贪吃蛇步骤和方法
1.显示界面
把背景框画出来
2. 按自己的风格设计(追求代码的灵活性)
显示界面的实现方法
方法 1:把数组所有元素初始化为0,把边界的元素初始化为1,把方块画到元素值为1的边界上
方法 2 :直接定义一个字符数组,把背景框画出来(推荐(printf输出比较少,解决闪烁问题))
2.播放音乐
头文件:windows.h,MMSystem.h,
#pragmacomment(lib,winmm.lib)
//在库里寻找winmm这个库,用于播放音乐
播放音乐的函数及其用法
播放音乐的函数:playsound(LPCSTR pszsound,HOMODULE HMOD ,DWORD FDWSOUND)参数pszSound是要播放声音的文件名,只支持WAV等格式的文件,
参数hmod是应用程序的实例句柄,一般传递NULL就可以,
参数fdwSound是标志的组合掩码,可选值有SND_FILENAME、SND_ASYNC、SND_SYNC等。
3.停止音乐播放
选择一个标记做为停止的信号(按键消息(可以使用_getch函数,接收当前你按键盘上的键的信息))
停止播放音乐的函数:playsound(NULL,NULL,NULL)
4. 设置蛇的位置,长度和方向把蛇画出来
定义一个数组专门记录蛇的坐标,把背景数组看作是坐标系,x为行,y为列,使用随机函数rand设置x和y的坐标,作为蛇头的坐标,然后根据蛇的长度设置蛇身的坐标,再把所记录的坐标在背景数组里面找出来并通过复制字符串函数把方块复制到背景数组。
注意:复制方块的时候一定要用strncpy,而不能用strcpy,因为用strcpy复制的话,方块后面的\n’结束符号也会复制过去
注意事项
注意事项:
1.设置随机数的位置一定要在数组的范围里面,不要越界
2.一个方块占两个字符,所以方向如果是左或者右的话,蛇头后面的方块要+2或者-2
3.因为一个方块占了两个字符,所以随机数产生的列的值要*2
strncpy函数的用法
strncpy(char *dest, char *src, int n);
第一个参数:数组的地址
第二个参数:复制的字符串
第三个参数:复制字符的个数(方块占两个字符)
5.蛇的移动
步骤
1.销毁当前蛇
2.确定好蛇移动的方向,东西方向移动列+2(方块占两个字符),南北方向移动行+1
3.找出蛇移动后的坐标
4.重新画蛇
销毁蛇的方法
找出当前蛇位置的坐标,用strncpy函数将数组里面对应的坐标的方块换成空格 (注意:一个方块等于两个空格)
6.判断蛇是否死亡
判定条件
1.判断蛇头是否碰到边界
2.判断蛇头是否碰到自己
只需要判断蛇头下一个位置是不是方块就可以了(可以加多一点判断条件)
7.随机产生食物
方法:
用rand函数和种种子的方法随机产生一个坐标,把食物用strcnpy函数复制食物的符号到背景里面
注意事项
注意:
1.不要越界(产生食物的坐标要在背景框内)
2.解决字符集编译不了的问题:右键项目属性——常规——字符集——使用多字节字符集
种种子的函数和用法
种种子:srand((unsigned int)time()NULL)
利用时间差作为种种子的频率
包含头文件time.h
8.判断是否再产生食物
方法
判断蛇是否死亡和食物是否被吃掉就可以了(判断食物是否被吃掉——只需判断蛇头的坐标是否和食物的坐标重合就可以了)
9.蛇吃食物后变长
方法
1.设置两个全局变量记录食物的坐标(x,y)
2.判断蛇头坐标是否与食物坐标一致,是的话,蛇的长度+1(相当于记录蛇坐标的元素多一个)
3. 判断蛇吃食物的方向,在相反的方向建立新的节点
10.记录分数
步骤
1.每吃一个食物记录一次分数,建立全局变量
2. 在窗口显示分数
在窗口显示分数函数的用法
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),rd);
第一个参数:窗口的句柄
第二个参数:距离句柄(0,0)的相对位置,要设置rd.x,rd.y的值,是COORD类型
您可能关注的文档
- (初评)茶叶感官审评的基本概念(梁).pptx
- (学生)第一章:概论(经管系列).ppt
- (学生)第三章利息公式与等值计算(经管系列).ppt
- (学生)第二章:静态分析法(经管系列).ppt
- (学生)第八章可行性研究(经管系列)2008.9.ppt
- (学生)第六章盈亏分析1(经管系列)2008.9.ppt
- (系列五)-2017届高考一轮-图文转换-课件.ppt
- +++4.微观经济学第三章供求曲线与弹性.ppt
- -人物描写系列作文指导.ppt
- -茶发现和利用的历史.ppt
- 高考是生物一轮复习 核酸.pptx
- 第13课 现代战争与不同文化的碰撞和交流(课件)高二历史下册课件(选择性必修3).pptx
- 《英语》(新标准)小学修订版三年级下册Unit 1分层教学设计.docx
- 《英语》(新标准)小学修订版三年级下册Unit 6分层教学设计.docx
- 《英语》(新标准)小学修订版三年级下册Unit 2分层教学设计.docx
- 《英语》(新标准)小学修订版三年级下册Unit 3分层教学设计.docx
- 《英语》(新标准)小学修订版三年级下册Unit 5分层教学设计.docx
- 2.3.3 真菌(第二课时)七年级生物上册课件(人教版2024).pptx
- 《英语》(新标准)小学修订版三年级下册Unit 4分层教学设计.docx
- 6.3价值的创造和实现 高中政治课件.pptx
最近下载
- 新修订2022版《义务教育物理课程标准》的解读与梳理(初中物理新课程标准培训课件).pptx VIP
- (高清版)B-T 41261-2022 过程工业报警系统管理.pdf VIP
- 智慧树知道网课《中国木雕艺术》课后章节测试满分答案.pdf VIP
- 人生拍卖会课件-.pptx VIP
- 敦煌的艺术 知到智慧树网课答案.pdf VIP
- 大型电解槽槽壳制作施工技术.doc VIP
- 智慧树知道网课《中国木雕艺术》课后章节测试满分答案.pdf VIP
- 最新部编版二年级语文上册12-坐井观天省公开课获奖课件市赛课比赛一等奖课件.pptx VIP
- 《马克思主义基本原理》练习题及答案.docx VIP
- 机械化氨水澄清槽的操作规程.pptx
原创力文档


文档评论(0)