MFC课程设计报告贪吃蛇_第1页
MFC课程设计报告贪吃蛇_第2页
MFC课程设计报告贪吃蛇_第3页
MFC课程设计报告贪吃蛇_第4页
MFC课程设计报告贪吃蛇_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MFC课程设计报告MFC实现贪食蛇小游戏1.需求分析,系统功能贪吃蛇游戏需求分析贪吃蛇游戏作为一款经典小游戏,版本多样,娱乐性也很高,适合在闲暇时放松心神。并且可在多个平台上实现,程序简单易懂,非常适合MFC初学者学习制作。贪吃蛇游戏功能介绍一条蛇在密闭的围墙内,在围墙内随机出现一个食物,通过按键盘上的四个方向键控制蛇向上接着又出现食物,等待被蛇吃掉,如果蛇在移动过程中,撞到墙壁或身体交叉蛇头撞到自己的身体游戏结束。并且可以在游戏开始前自由选择游戏难度,游戏过程中可暂停游戏,并有积分系统,且积分每满一定值,蛇的运行速度会逐步增加。2.分工情况为在设计过程中实现小组成员能力最大化,进行了以下分工

2、:1、张施展:负责前期系统需求分析,系统结构设计,图标设计,界面美化调整工作,以及课程设计报告的撰写。2、张清扬:负责主要程序的编写工作,菜单的设计及代码编写工作。3、资料收集,程序调试共同进行。3.程序及系统结构设计贪吃蛇程序设计思路1、方案讨论贪吃蛇游戏作为一款经典的休闲类小游戏,深受同学喜爱,因此我们将贪吃蛇作为此次MFC课程设计题目。在最初的方案中,我们倾向于单文档(SDI)的形式设计,但最初尝试都因缺少一些文件等情况而失败。考虑到windows中自带小游戏大多采用对话框形式,为能更好的与同学们的使用习惯相一致,最终决定使用对话框(Dialogue)的形式。2、数据结构在数据结构的选取

3、,我们选择了链表,链表具有用多少空间就开多少空间的优点,使程序执行更稳定,高效。游戏控制模块框游戏控制模块开始游戏退出游戏函数成员voidInitSnake()设置初始时蛇和果子的位置,及蛇头和一节蛇身的运动voidMoveSnake()控制蛇的运动状态voidAddSnake()蛇获得食物,长度增加voidDrawSnake()确定以及画出蛇身,蛇头大小VoidUnDrawSnake()蛇每向前运动一节需要重绘蛇及除去蛇的运动轨迹voidDrawFood()随机在指定区域出现果子intGameOver()当蛇撞到墙壁或自己游戏结束贪吃蛇程序整体间调用关系4.软件测试报告游戏初始界面菜单栏记分牌操作说明运动区域游戏运行界面游戏结束界面出现的问题1、问题:蛇运动区域与边框不匹配,造成蛇运动出边框或未到达边框而游戏结束。原因:相关数据不匹配。解决:重新对程序中的矩形框绘制函数数据进行修改,并修改蛇运动边界的判断条件2、问题:食物出现在边框外,造成游戏无法进行。原因:控制事物出现的随机函数出现问题,随机坐标超出蛇运动区域。解决:重新计算边界条件,修改随机函数rand()%x中的x值。3、问题:记分牌有时会出现记分错误。原因:尚不明确。参考书籍:C+程序设计实践教程第2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论