网站大量收购独家精品文档,联系QQ:2885784924

C语言课程设计--贪吃蛇游戏.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

rtf文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机

查看。

C语言课程设计报告

题目:贪吃蛇游戏

专业:业:级:班级:号:学号:名:姓名:指导老师:指导老

师:绩:成绩:设计日期:设计日期:

《C语言课程设计》报告1语言课程设计》题目:题目:贪吃蛇游戏13一

、选题背景4二、设计思路四、程序流程图5五、原程序清单5六、程序运行结

果1112七、设计总结14八、教师评语

一、选题背景

C语言实际上已经成为了中级语言的事实上的标准,如果你从事嵌入式开发、芯

片设计等,C语言是必须懂的基础;在高级语言上,C语言的简练和精确也具备特殊的

优势;VC的强大在Windows平台上其它语言更是难与之相匹敌,在

,C语言也是最终要的语言,Linux的内核也主要是以C语言写的。当然C语言也有缺

点:就是难,容易出错,因为它的数据类型需要精确,而导致不够深入理解的程序员

常容易犯错。通过本学期对C语言的学习,掌握了C语言的基本语法,能编一些小程序

。通过这次实习,结合C++语言,编写了著名的贪吃蛇游戏,目的提高自己的编程水

平。

二、设计思路

程序关键在于表示蛇的图形及蛇的移动。用一个小矩形快表示蛇的一节身体,

身体每长一节,增加一个矩形块,蛇头用俩节表示。移动时必须从蛇头开始,所以蛇

不能向相反的方向移动,如果不按任意键,蛇自行在当前方向上前移,但按下有效方

向键后,蛇头朝着该方向移动,一步移动一节身体,所以按下有效方向键后,先确定

蛇头的位置,而后蛇的身体随蛇头移动,图形的实现是从蛇头新位置开始画出蛇,这

时,由于未清屏的原因,原来的蛇的位置和新蛇的位置差一个单位,所以看起来蛇多

一节身体,所以将蛇的最后一节用背景色覆盖。食物的出现与消失也是画矩形块和覆

盖矩形块。为了便于理解,定义两个结构体:食物与蛇

三、主要问题的解决方法和关键技术

.通过随机函数产生随机数,控制游戏过程食物的出现;.定义键盘操作,控制游

戏过程蛇的移动方向;.画出边界,并判断游戏是否结束;.统计游戏过程蛇吃的食

物数量,计算并输出游戏成绩。

四、程序流程图

五、原程序清单

#include<windows.h>#include<ctime>

clude<queue>usingnamespacestd;#ifndefSN

mp{

friendclassCsnake;intrSign;//横坐标int

//friendboolisDead(constCmp&cmp);Cmp(in

p(){}voidsetPoint(intr,intl){rSign=r

&m)const{returnCmp(rSign-m.rSign,

Cmp&m)const{returnCmp(rSign+m.rSign,

xSize=5;//初始蛇身长度classCsnake{Cmpfirst

ondSign;//蛇颈坐标CmplastSign;//蛇尾坐标Cmpnext

ow;//列数intline;//行数intcount;//蛇身长度vec

akeMap;//整个游戏界面queue<Cmp>snakeBody;//蛇身

ns()const;chargetSymbol(constCmp&c)const

turnsnakeMap[c.lSign][c.rSign];}Csnake(int

(n<20)line=20+2;elseif(n>30)line=30+2;else

}boolisDead(constCmp&cmp){return(

page1

ap[竖坐标][横坐标]for(inti=0;i

)到(line-2,row-2)对点矩型之间

坐标l=(rand()%(line-2))+1;//竖坐标//如果随机产生的坐标

/否则重新产生坐标if(snakeM

文档评论(0)

189****6678 + 关注
实名认证
内容提供者

硕士导师

1亿VIP精品文档

相关文档