1、 信息工程学院 C C 语言程序设计语言程序设计 课程设计报告课程设计报告 题题 目:目: 俄罗斯方块俄罗斯方块 专专 业:业: 计算机科学与技术计算机科学与技术 班班 级:级: 姓姓 名:名: 学学 号:号: 指导教师:指导教师: 时时 间:间:2013 年 6 月 17 日至 2013 年 6 月 28 日 I 摘 要 俄罗斯方块(Tetris, 俄文:)是一款风靡全球的电 视掌上游戏机游戏, 它由俄罗斯人阿列克谢帕基特诺夫发明, 故 得此名。俄罗斯方块的基本规则是移动、旋转和摆放游戏自动输 出的各种方块,使之排列成完整的一行或多行并且消除得分。由 于上手简单、老少皆宜,从而家喻户晓,风靡
2、世界。 原本是前苏联科学家阿列克谢帕基特诺夫所开发的教育用 软件,之后开始提供授权给各个游戏公司,造成各平台上软件大 量发行的现象。 由于俄罗斯方块具有的数学性、动态性与知名度,也经常拿 来作为游戏程序设计的练习题材。 俄罗斯方块曾经造成的轰动与造成的经济价值可以说是游戏 史上的一件大事,它看似简单但却变化无穷,令人上瘾。相信大 多数用户都还记得为它痴迷得茶不思饭不想的那个俄罗斯方块时 代。 俄罗斯方块上手极其简单,但是要熟练地掌握其中的操作与 摆放技巧,难度却不低。作为家喻户晓老少皆宜的大众游戏,其 普及程度可以说是史上任何一款游戏都无法相比的。 关键字:经典 俄罗斯方块 游戏 1 目录目录
3、 摘要摘要 错误错误!未定义书签。未定义书签。 目录目录.1 第一章第一章 课程设计的目的课程设计的目的.2 第二章第二章 设计方案的论证设计方案的论证3-4 第三章第三章 设计实现过程设计实现过程 5 第四章第四章 调试运行及结果分析调试运行及结果分析.6-7 第五章第五章 测试及问题探讨测试及问题探讨.8 第六章第六章 课设总结及体会课设总结及体会.9 第七章第七章 致谢致谢 10 第八章第八章 参考文献参考文献 . 11 第九章第九章 附录附录 . 12-36 2 第一章第一章 课程设计目的课程设计目的 俄罗斯方块家喻户晓,他能动态进行显示和判断方块位置, 能对程序的综合设计有更深入的了
4、解,同时对程序的综合开发, 创新了思路,增长了开发经验。 俄罗斯流传范围较广, 游戏体验也比较丰富, 这对开发来说 增加了开发信心,俄罗斯游戏考验人的反应应变能力,对其开发 能深入了解开发者思想,体会开发者心得。对于这样经典的创造 于在创造都是非常好的学习机会。对程序设计初学者能更好的整 合综合开发能力, 对过去所学的零散的知识汇总。 对开发者耐心, 细心程度都有很大提升。 在开发的过程中也能对以往玩过的各个版本的俄罗斯方块 能取长补短,这是开发其它小程序很难获得的。 3 第二章 设计方案的论证 该程序采用数组与图形显示相结合的办法, 数组用来进行方 块位置判断,图形部分则根据数组所包含的数据
5、进行显示,使程 序生动,更具有可玩性。 判断函数 利用该函数可以判断是否满足消除和分数判断要求 4 主函数 主函数里面负责图形驱动初始化、 分数、 及随机函数和清除函 数和显示函数和键盘缓冲区清除和全局显示函数初始化化 5 第三章 设计实现过程 设计首先对游戏 UI 进行的草图的绘制,设计出游戏 UI 的大 小和方位。 通过合理的设置游戏 UI 界面, 会给游戏体验着带来更 加愉悦的游戏体验,并留下深刻的印象。UI 初步绘制完成之后就 是结构化程序比较重要的一步了,那就是算法的合理选择,一个 程序的好坏不能单单对其 UI 的评价, 而是算法是否合理, 程序资 源调配时否达到最优化的程度等。 本
6、程序采用数组与 UI 界面相结 合的方法进行游戏规则判断。由于采用 TC 编译平台。不能提供 丰富的预定义函数。所以所有函数除部分头文件均由后期编写。 这样一来相比使用方便的 VC+编译平台, 更具有实际操作能力。 更具有意义。但同时要牺牲开发效率。UI 后期游戏中的绘制是根 据数组中值的不断变化而绘制。UI 和算法均设计完毕后。便进入 了最后的调试阶段。在调试阶段,通过对程序的调试,发现了很 多严重的问题,经过不计其数的修改,最后程序还是比较接近预 期设计效果。 由于设计能力有限 部分游戏功能没有得以体现这是 设计者表示比较遗憾的。在以后的学习中会不断完善,谢谢。 6 第四章 调试运行及结果分析 游戏加载界面