c++课程设计:贪吃蛇小游戏

c++课程设计:贪吃蛇小游戏

ID:34054284

大小:243.00 KB

页数:9页

时间:2019-03-03

c++课程设计:贪吃蛇小游戏_第1页
c++课程设计:贪吃蛇小游戏_第2页
c++课程设计:贪吃蛇小游戏_第3页
c++课程设计:贪吃蛇小游戏_第4页
c++课程设计:贪吃蛇小游戏_第5页
资源描述:

《c++课程设计:贪吃蛇小游戏》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、课程设计报告课程名称:面向对象程序设计C++设计题目:贪吃蛇小游戏专业:计算机科学与技术姓名:学号:指导教师:李晓红2016年1月7日一、系统需求分析贪吃蛇游戏作为一款经典小游戏,版本多样,娱乐性也很高,适合在闲暇时放松心神。并且可在多个平台上实现,程序简单易懂,非常适合初学者学习制作。 1、语言的使用 现在的贪吃蛇游戏一般是用C语言实现的,用C语言编写贪吃蛇游戏比较简单易懂,当然也可以用其他语言来实现,比如Java、C++、C#等,这里我们用C++来实现。 2、用C++的优势 C++在一定程度上可以和C语言很好的结合,甚至

2、大多数C语言程序是在C++的集成开发环境中完成的。C++相对众多的面向对象的语言,具有相当高的性能。C++引入了面向对象的概念,使得开发人机交互类型的应用程序更为简单、快捷。很多优秀的程序框架包括Boost、Qt、MFC、OWL、WTL就是使用的C++。   人们一般认为,使用Java或C#的开发成本比C++低。但是,如果充分分析C++和这些语言的差别,会发现这句话的成立是有条件的。这个条件就是:软件规模和复杂度都比较小。如果不超过3万行有效代码(不包括生成器产生的代码),这句话基本上还能成立。否则,随着代码量和复杂度的增加

3、,C++的优势将会越来越明显。造成这种差别的就是C++的软件工程性。 相对于其他的语言,C++具有它自己的优势,主要体现在以下几个方面: (1)C++实现了面向对象程序设计。在高级语言当中,处理运行速度是最快的,大部分的游戏软件,系统都是由C++来编写的。 (2)C++语言非常灵活,功能非常强大。如果说C语言的优点是指针,那么C++的优点就是性能和类层次结构的设计。 (3)C++非常严谨、精确和数理化,标准定义很细致。 (4)C++语言的语法思路层次分明、相呼应;语法结构是显式的、明确的。当然,这只是C++的一部分优势,在运

4、用过程中,我们会逐渐发现C++语言之美。二、总体设计2.1设计思路⑴ 定义蛇和食物的全局变量,初始化贪吃蛇各项成员变量,包括图像的出现在屏幕的初始位置,长度,以及蛇的行走方向。食物类的定义包括出现的初始位置,以及食物是否被吃掉的判断。 ⑵ 用数组初始化长度为3的贪吃蛇,并且默认食物未出现 ⑶ 在CView类上运用MFC提供的Windows消息中WM_TIMER消息,运用OnTimer()函数让系统提供一个时钟节拍,更新游戏 。⑷ 具体游戏实现,包括蛇撞到自己和围墙都将使游戏结束,判断吃豆等,其中还包括根据蛇的长度来进行游戏难

5、度的改变。⑸ 具体键盘游戏操作运用到Windows消息响应中的WM_KEYDOWN,用OnKeyDown()来响应玩家的实际操作。2.2模块功能介绍游戏总共七个类,其中以下四个类为主要。1、主界面对话框类:主要负责主菜单及各个窗口类对象的创建和调用等处理。2、贪吃蛇窗口类:主要负责接收玩家键盘输入的移动蛇的位置。3、帮组对话框类:主要负责帮助提示的显示及其它显示功能。4、贪吃蛇视图类:主要负责显示贪吃蛇界面的展示。2.3模块结构图2.3.1游戏主界面设计贪吃蛇游戏主界面的设计,如下图1所示图1贪吃蛇游戏主界面2.3.2游戏主

6、菜单结构的设计图2游戏主菜单结构一、详细设计3.1游戏菜单的实现在贪吃蛇游戏中,通过如下几个步骤即可实现添加游戏的菜单。(1)在贪吃蛇游戏工程的资源中添加一个菜单资源(2)给每个菜单栏添加响应函数到CMainFrame类中。3.2游戏帮助对话框的实现贪吃蛇游戏中的帮助是使用一个对话框来实现的。其实现步骤如下。(1)添加一个对话框资源到工程中,并填写说明文字。(2)编写一个CAboutDlg对话框类,主要是加载IDD_ABOUTBOX对话框资源。通过资源中的文字说明对游戏操作方法进行描述。同时只包含单击“确定”按钮的响应函数。

7、CAboutDlg对话框类的实现,需要实现对话框类的构造函数、析构函数和“确定”按钮响应函数3.3新游戏处理模块的设计与实现新游戏处理模块主要负责游戏中的游戏初始化及开始游戏。其设计比较简单,只需要通过如下几步即可实现。(1)载入图片资源和配置文件中的数据。(2)把所有的游戏参数进行初始化。例如,当前消耗时间和状态等。(3)初始化表示蛇的长度区域的二维数组。(4)让地游戏区域图像失效,重新绘制新的图像。实现代码如下,3.4游戏规划模块的设计与实现游戏规则模块的实现,主要由游戏胜利和游戏结束判断函数组成。通过对游戏的结果进行判

8、断,实现贪吃蛇游戏的规则。1、游戏胜利的判断如果没有出现意外情况,蛇的长度一直增加,直到达到升级的长度,则说明游戏胜利。2、游戏结束的判断当玩家移动蛇的位置吃食物时,就对当前蛇的位置进行判断。如果撞到墙壁或是咬到自己,说明玩家不行。游戏以失败结束。而如果没有遇到上述情况,就对玩家蛇的长度进

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。