贪吃蛇C程序课程设计报告
更新时间:2024-07-12 14:43:01 阅读量: 综合文库 文档下载
河北大学电子信息工程学院2006级C程序设计课程设计报告
贪吃蛇游戏课程程序设计报告
课程名称:C语言课程设计 学院: 班级: 姓名: 学号: 指导老师: 完成时间:
第 1 页 共 6 页
河北大学电子信息工程学院2006级C程序设计课程设计报告
贪吃蛇
一 课题分析
1.1 设计要求 我们小组设计的是贪吃蛇游戏,它是一个比较经典的小游戏,但是要真正做出来必须得有一定运用C程序的经验和技巧,掌握C语言编程和程序调试地 基本技能;要不断的翻阅有关资料,利用C语言进行基本的软件设计;熟悉C语言级C语言开发工具是必须的,但组员之间的默契合作很重要,大家应该有明确的分工,使该项任务有计划的完成。
1.1 本程序涉及的知识点
数组,图形函数,if、for、while等语句,变量的定义,转义字符的使用,输入、输出语句
1.2 实现功能
这是一个看似简单但程序复杂的游戏,其规则是:一条蛇(明亮条纹)在封闭围墙里,围墙里随机出现一个食物(亮点),通过键盘的上下左右按键控制蛇的移动方向,蛇头撞到食物,则食物被吃掉,随着被吃掉亮点的个数增加蛇本身的长度也不断增长,同时蛇每吃到一个食物就记10分,接着又会出现食物,通过人对键盘的控制来吃食物,如果蛇在移动中撞到墙或身体交叉蛇头撞到自己身体游戏结束,游戏结束的同时,界面上会出现GAME OVER的字样,还会显示游戏者所得分数。该游戏虽然简单,但我们相信它在很大成度上可以锻炼人的反应能力。
第 2 页 共 6 页
河北大学电子信息工程学院2006级C程序设计课程设计报告
二 整体设计
2.1框架设计 贪吃蛇游戏设计分为开始、运行、结束三个流程,但其内部制作过程却很复杂: 1、开始部分
由于该游戏是在图形模式下运行的,所以第一步是初始化图形模式,接着有开始的界面。 2、运行部分
该部分包括的函数比较多,模块比较多,因为它分很多步,第一步,出现食物;第二步,蛇不停的运动;第三步,检查蛇是咬到自己或撞到墙壁;然后第四步分两步进行即第三步的继续。 3、结束部分
游戏结束时,显示“GAME OVER”背景图像.
开始 游戏的标题画面
第 3 页 共 6 页
为运行部分初始化 运行部分 NO 撞墙或咬自己 继续游戏 YES 游戏结束 河北大学电子信息工程学院2006级C程序设计课程设计报告
2.2 功能设计
表1 贪吃蛇游戏功能表
功 能 描 蛇身左转 蛇身右转 蛇身上移 蛇身下移 述 具体功能 按键盘上“ ” 按键盘上“ ” 按键盘上“↑” 按键盘上“↓” 备注
三 详细设计
3.1 组员分工 小组三人确立学习任务,定调制项目,一起去图书馆查阅资料,并由组员张丹记录所查阅的书籍及具体资料。
组长**负责安排每位组员的具体分工及程序的大体调制,指定本项作业的具体实施计划,安排时间使组员有机会共同作业。
组员**主要负责记录日常调制程序时所出现的问题,参与程序细节调制,讨论问题所在,并及时整理学习笔记。
组员**主要负责程序的具体调制及设计报告的编写,并及时做每次共同学习时各项任务实施的记录,以便于写设计报告。
3.2 源程序设计
#define N 200 stuct Food {
第 4 页 共 6 页
河北大学电子信息工程学院2006级C程序设计课程设计报告
int x ; /*食物的横坐标*/ int y ; /*食物的纵坐标*/
int yes ; /*判断是否要出现食物的变量*/ }food /*食物的结构体*/ struct Snake {
intx[N]; /*蛇的横坐标*/ inty[N]; /*蛇的纵坐标*/ intnode; /*蛇的节数*/ intdirection; /*蛇的移动方向*/ intlife; /*蛇生命,0活着,1死亡*/ }snake; 注意事项:
1)主函数main():初始化图形系统,调用DrawK()画出开始画面,调用函数Gameplay(),即玩游戏过程,游戏结束后调用Close()关闭图形系统,结束程序。 2)画界面函数DrawK();
3)游戏具体过程函数Gameplay();
4)游戏结束函数Gameplay(),游戏结束,清除屏幕,输出分数,显示游戏结束信息。 5)PrScore(),输出分数。
6)Close()函数图形结束。在显示游戏结束信息的画面时,按任意键关闭图形系统,结束程序。
四 总结
经过小组成员几周的努力,终于完成了贪吃蛇这个经典小游戏的制作,在这段期间我们又重新温习了C语言的课程,通过自己动手,动脑,去图书馆查阅资料,我们感觉到了C语言的趣味性,能够通过三个人的讨论,综合知识来完成这项作业或者说时任务,我们都感到了强烈的自豪与骄傲。设计完成后,我们三个人找了时间坐在一起开始我们的最后总结,每个人都做了简单汇报。
第 5 页 共 6 页
河北大学电子信息工程学院2006级C程序设计课程设计报告
编程是一件很枯燥很无聊的事情,还必须强破自己坚持下去,按照老师所说的模块化思想,分部分的进行编写。而且编程是一件高精度、模范化的事情,稍有疏乎都会影响全局,也可能因为某一处的小的错误而导致整个程序的无法运行。所以认真仔细就是非常重要的了。开始的时候真的感觉编程是一件很无聊的事情,不过当一个程序运行成功的时候那种喜悦是无法言语的,那种成就感是无法比拟的。
通过这次课程设计,使我们小组成员对C语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;再有对C语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对C语言中经常出现的错误也不了解,通过实践的学习,我们认识到学好计算机要重视实践操作,不仅仅是学习C语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。
完成设计后,我们都觉得收获不少,首先是自己首次应用所学知识做出了这个小游戏,以前从未做过这样大(这是对我而言,在专业人仕看来是小菜一碟)的程序,多少心里有点甜美的感觉;而收获更大的是让我们学到了怎样和他人合作完成一件任务,以及在完成的过程中如何沟通。完成设计是在一定时间内完成的,在完成这个设计时,我们做得显然有一些紧迫,我想是没合理安排好时间和开始态度不正确所致,做完后我觉得合理安排时间是非常重要的否则可能时间已到而还无法完成或完成得仓促,应合理安排时间给各个环节。在课程设计过程中,收获知识,提高能力的同时,我们也都学到了很多人生的哲理,懂得怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪。因此在以后的生活和学习的过程中,我们一定会把课程设计的精神带到生活中,不畏艰难,勇往直前!
参考文献(标题顶格、四号黑体,与上空2行;正文五号宋体,顶格)
[1] 老师提供的模板。
[2] 谭浩强. 《C语言程序设计》. 第四版. 清华大学出版社 [3] 吴文虎. 《程序设计基础》. 2003年版. 清华大学出版社 [4] 网络资源
第 6 页 共 6 页
河北大学电子信息工程学院2006级C程序设计课程设计报告
编程是一件很枯燥很无聊的事情,还必须强破自己坚持下去,按照老师所说的模块化思想,分部分的进行编写。而且编程是一件高精度、模范化的事情,稍有疏乎都会影响全局,也可能因为某一处的小的错误而导致整个程序的无法运行。所以认真仔细就是非常重要的了。开始的时候真的感觉编程是一件很无聊的事情,不过当一个程序运行成功的时候那种喜悦是无法言语的,那种成就感是无法比拟的。
通过这次课程设计,使我们小组成员对C语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;再有对C语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对C语言中经常出现的错误也不了解,通过实践的学习,我们认识到学好计算机要重视实践操作,不仅仅是学习C语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。
完成设计后,我们都觉得收获不少,首先是自己首次应用所学知识做出了这个小游戏,以前从未做过这样大(这是对我而言,在专业人仕看来是小菜一碟)的程序,多少心里有点甜美的感觉;而收获更大的是让我们学到了怎样和他人合作完成一件任务,以及在完成的过程中如何沟通。完成设计是在一定时间内完成的,在完成这个设计时,我们做得显然有一些紧迫,我想是没合理安排好时间和开始态度不正确所致,做完后我觉得合理安排时间是非常重要的否则可能时间已到而还无法完成或完成得仓促,应合理安排时间给各个环节。在课程设计过程中,收获知识,提高能力的同时,我们也都学到了很多人生的哲理,懂得怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪。因此在以后的生活和学习的过程中,我们一定会把课程设计的精神带到生活中,不畏艰难,勇往直前!
参考文献(标题顶格、四号黑体,与上空2行;正文五号宋体,顶格)
[1] 老师提供的模板。
[2] 谭浩强. 《C语言程序设计》. 第四版. 清华大学出版社 [3] 吴文虎. 《程序设计基础》. 2003年版. 清华大学出版社 [4] 网络资源
第 6 页 共 6 页
正在阅读:
贪吃蛇C程序课程设计报告07-12
参加2017全国两会人大代表名单02-08
2022年全国各大高校自主招生简章07-31
幼儿园户外活动反思6篇03-28
战略管理教程0886测试题库04-29
日出日落作文200字07-09
思想道德修养 多选题06-13
常见焊接接头缺陷分析08-25
国家文物局(90)文物字第248号06-12
观音感应灵课05-26
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 贪吃
- 课程
- 程序
- 报告
- 设计
- 三年级导学案3
- 志愿者演讲稿范文
- 铅酸蓄电池安全技术说明书(SDS)
- 汽车开关发电机项目可行性研究报告 - 图文
- 塔吊基础方案 - 图文
- 北京国家会计学院会计硕士考研参考书有哪本
- 《计算机辅助制造》上机指导-5-4
- 税收业务大比武-纳税服务试题集(含答案)
- 2012级专升本毕业论文
- 14.7.1--现场临时设施方案作业指导书
- 2018-校长年度考核个人工作总结-范文模板 (2页)
- 导游资格证考试导游实务模拟试题及答案-单选7
- 体育中心钢结构施工组织设计 - 图文
- 开题报告 - 图文
- DV摄影与影视媒体制作
- JSP试题及答案
- 模电课程设计 - 图文
- 浅析网络流行语的来源 、特征和发展)
- 2018年毕节市小升初数学模拟试题(共8套)详细答案
- 和平区2014~2015学年度第二学期八年级物理学科期中质量调查试卷