C语言编程小游戏毕业答辩论文李俊佶.doc

上传人:桔**** 文档编号:560215335 上传时间:2023-06-09 格式:DOC 页数:19 大小:860KB
返回 下载 相关 举报
C语言编程小游戏毕业答辩论文李俊佶.doc_第1页
第1页 / 共19页
C语言编程小游戏毕业答辩论文李俊佶.doc_第2页
第2页 / 共19页
C语言编程小游戏毕业答辩论文李俊佶.doc_第3页
第3页 / 共19页
C语言编程小游戏毕业答辩论文李俊佶.doc_第4页
第4页 / 共19页
C语言编程小游戏毕业答辩论文李俊佶.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《C语言编程小游戏毕业答辩论文李俊佶.doc》由会员分享,可在线阅读,更多相关《C语言编程小游戏毕业答辩论文李俊佶.doc(19页珍藏版)》请在金锄头文库上搜索。

1、C语言编程小游戏毕业答辩论文李俊佶密 级 公 开 本科生毕业(学位)论文基于C语言的小游戏设计李俊佶(2009061322)指导教师姓名:叶晶晶职 称:单 位:物理与电子科学系专 业 名 称:电子信息工程论文提交日期:2012年 月 日 论文答辩日期:2012年 月 日学位授予单位:黔南民族师范学院答辩委员会主席:论 文 评 阅 人:20 年 月 日基于C语言的小游戏设计-十字消方块李俊佶(2009061322)(黔南民族师范学院物理与电子科学系,贵州,都匀,558000)摘要:本文研究的主要内容是在具备C语言知识的前提下,如何应用C语言编写一个完整的小游戏,以达到让自身所学知识得到充分运用和

2、发挥的目的。在此,通过使用C语言编写了一个名为“十字消方块”的新颖小游戏,完整的展现了一个小游戏项目开发的全过程。编程过程中每一个编程技巧的运用都是对编程者逻辑思维能力和综合应用能力的考验。关键词:C语言;小游戏;十字消方块;项目开发;WIN-TCBased on the C language little game design-Cross away squareLi jun-ji(2009061322)(Physicaland electronic Science, Qiannan Normal College for Nationalities, Duyun 558000, Guizho

3、u)Anstract:This paper studies the main content is the C language knowledge with the premise of how to use C language to write a complete litter game,in order to achieve their owm knowledge for the purpose of fully use .Here ,througn the use of C language to write a called”cross away square”nocel lit

4、ter game,complete showed a small game project development process.In the process of programming every programming use the skills of programming is logical thinking anility and comprehensive application anility test.Keywords:C; game; cross away square; development; WIN-TC1引 言游戏的设计与开发可以利用多种方法,java、C/C

5、+、Flash、 VB等语言都可开发出不同类型的游戏软件。这些方法都有其优点,通常根据具体情况进行选择。在众多语言和方法中,C语言兼具一般高级语言和低级语言优点,编写游戏程序具有非常鲜明特点。使用C语言编写游戏程序,可以接触到更为底层的编程知识,对于学习计算机语言有很大好处。C语言是Combined Language(组合语言)的中英混合简称。是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设

6、计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力。本着研究学习的心态,以C语言编写一个小游戏程序,深入到图形编程和文件应用的实际操作中,达到务实基础,挑战自我的目的。下面,我将一步步的带领大家看到“十字消方块”游戏开发的全过程。2.前期准备及需求分析2.1 游戏介绍“十字消方块”的灵感来自我闲暇时在3366小游戏网站内见到的一款竞技类小游戏。顾名思义,这款小游戏是以方向键控制游戏标准放到合适位置,在十字线区域能连接到两个或者两个以上纹理相同的方块就能消除得分。玩家在时间的限制下需要迅速找到可以消除的方块并准确消除,若

7、错误将扣除时间。看似简单,却有一定的难度。常玩这一类小游戏可以锻炼人的观察力、反应力和手眼协调能力,开发大脑潜能。十字消方块趣味性强,老少皆宜,且同类游戏在各小游戏网站都很有人气,相信它同样能得到大家的喜爱。2.2编程语言C语言C语言兼有高级语言与低级语言的优点,具有强大的编程运算能力。首先,C是一种结构化语言,程序层次清晰,便于使用、维护以及调试;第二,C语言运算符和数据结构丰富,能用来实现各种复杂数据结构的运算;第三,程序书写形式自由、灵活方便,允许程序编写者有较大的发挥空间;第四,引入了指针概念,使程序效率更高;第五,C语言程序执行效率高,一般只比汇编程序生成的目标代码效率低1020%;

8、另外,C语言还具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。总而言之,用C语言来编写一个小游戏绰绰有余,绝对可以让编程者想要的任何游戏功能实现。2.3 编译环境Win-TcWIN-TC是一个TC2 WINDOWS平台开发工具,由 TC256专题站与 唯C世界联合发布。该软件使用TC2为内核,提供WINDOWS平台的开发界面,因此也就支持WINDOWS平台下的功能,例如剪切、复制、粘贴和查找替换等。而且在功能上也有它的独特特色例如语法加亮、C内嵌汇编、自定义扩展库的支持等。2.3 .1使用 Win-Tc的理由由于“十字消方块” 是用纯C语言编写, vc+有它自己的图形

9、编译库,在游戏中用到的和这两个头文件在vc+中并不存在,故此该游戏的程序不能在vc+中编译完成。然而Turbo C 2.0是基于MS-DOS的,存在诸如不支持鼠标操作、字体大小不能调整、文本复制步骤繁琐、必须另外启动UCDOS等中文环境才能支持中文输入输出等缺点,而这些缺陷于开发活动有着不少的影响。故此,相对来说WIN-TC无疑是最适合作为该游戏开发的编译软件。2.3 .2Win-Tc的使用1在网络上下载WIN-TC编译软件,安装在电脑中后打开。可看到如下运行画面: 图1:WINTC运行画面2.点击文件,找到后缀为.c的游戏程序文件,点击选取后打开。3.在软件运行画面的右上角,找到如下图所示的

10、两个按钮,依次点击,确定,可运行游戏程序。观察结果。 图2:软件中的编译与执行按钮4.注意:当程序使用了头文件中库函数时,就需要bgi文件才能正常显示,wintc中有提供,但是如果在图形界面初始化时没有注明其路径时,必须将bgi文件与工程文件放在同一目录下。2.4游戏需求分析1.项目描述要求用C语言开发一个游戏 “十字消方块”。游戏规则为: 按方向键移动光标至一个无方块位置,以该光标位置看,在一个十字形区域中,若离光标位置最近的四个方块至少有其二相等,则可按SPACE键进行连线消除得分,一次性消除的方块越多得分越多。若按键后不能消除为错误操作,将扣除游戏时间。时间结束,游戏结束。2.界面(1)

11、start界面该界面用画图的方式对游戏方法及其规则进行了说明,按任意键后开始游戏。(2)游戏界面程序用一个初始化函数来初始化游戏界面,棋盘为15行,15列,共有112块方块。上方为进度条,下方为游戏提示信息。(3)游戏结束界面用户成功完成游戏或时间结束后,在界面正中显示“your sroce:xxxx”。(xxxx为游戏得分)另外,用户在游戏过程中按ESC显示“gameover!”退出游戏。3.功能(1)游戏操作按方向键移动光标至合适位置,按SPACE键进行连线消除得分。(2)游戏结束共有3种结束方式:时间结束:当时间进度条走完时,游戏结束,并显示得分。方块结束:在所有方块均不能消除时,游戏结

12、束,并显示得分。强行结束:按ESC结束程序,并显示“gameover!”后退出。(3)进度条显示当前剩余时间自动获取系统时间,更新进度条时,设置为某个百分比,用背景色进行填充,以达到减少时间的目的。4环境(1)硬件环境:处理器,内存,磁盘,显示器(2)软件环境:必须使用 wintc或turbo c软件编译游戏3编程实现3.1重要的文件、函数和变量说明3.1.1文件graphics.h文件是tc中的图形库,游戏界面中的图形绘制都是利用这个头文件中所包含的函数来完成的。3.1.2函数介绍1.bioskey函数该函数是bios.h头文件中接口函数,函数的功能是在游戏过程中提取键值。2.initgra

13、ph函数和closegraph函数initgraph函数的功能是初始化图形系统。声明这个函数是使用graphics.h文件中画图函数的必要条件。而closegraph 函数的功能是关闭图形系统3. outtextxy函数该函数的功能是在屏幕上指定的位置输出一串字符。游戏中可见的提示信息均由这个函数来实现。 4.setcolor函数该函数的功能是设置当前画笔的颜色,游戏界面绘制的图形输出的文字字符的颜色都是用这个函数来控制。它的参数color为不同值时表示不同的颜色,如下表所示: 表1:color参数说明参数说明参数说明0BLACK 黑1BLUE 兰2GREEN 绿3CYAN 青4RED 红5M

14、AGENTA 洋红6BROWN 棕7LIGHTGRAY 淡灰8DARKGRAY 深灰9LIGHTBLUE 淡兰10LIGHTGREEN 淡绿11LIGHTCYAN 淡青12LIGHTRED 淡红13LIGHTMAGENTA 淡洋红14YELLOW 黄15WHITE 白 5. srand函数与random函数random函数是随机数发生器,功能是产生一个规定数以内的随机数。它能帮助我在游戏中绘制出随机的游戏方块,实现游戏关卡的多样化。而srand函数是随机数发生器的初始化函数6. gettime 该函数的功能是取得系统时间,由此设置出了游戏的时间系统。 7.getch函数该函数的功能是从控制台无回显示地取一个字符。游戏程序需要在结尾加上这个函数,才能观看到运行结果。3.1.3重要变量说明1.枚举类型变量KEYCODES它枚举了游戏所用到按键的物理地址,是游戏者与游戏之间联系的关键。 enum KEYCODES K_ESC =0x011b,K_UP =0x4800,K_LEFT =0x4b00, K_DOWN =0x5000, K_RIGHT

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号