- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2009年9月9日实验报告
PAGE
PAGE 8
2009年9月9日星期三
计算机实习报告
姓名: 乔雅楠
班级: 2008211105(信通五班)
学号:小班序号:27
指导老师:徐雅静
题目:俄罗斯方块
邮箱:871091735@
俄罗斯方块实验报告
一.功能说明
1.1总体功能说明
实现了俄罗斯方块的随机显示,可以通过外界控制方块的运动状态(左、右移动,加速及翻转),并且不会出界,当满足消行条件时对不同情况的消行进行加分(一次消的越多,加分幅度越大),分值到一定程度自己升级,游戏输掉时重新开始。玩家可在游戏开始时自由选择级别,游戏途中自由选择退出。界面有背景音乐,玩家分数、身份的显示等。
1.2用户界面
欢迎界面
选择级别界面
游戏中,可以显示下一个方块
升级界面
游戏结束、玩家选择退出时,重新开始的界面
1.3使用方法
游戏在界面中直接显示使用方法(向左:→,向右:←,向下:↓,翻转:↑,暂停:空格键,退出:ESC键),玩家的身份即关卡。
二.程序设计说明
2.1 总体设计框架
开始
显示欢迎界面
选择关卡
关卡启动界面
按下启动按钮?
显示关卡游戏界面
按下暂停按钮? YES 显示画面
NO 再按一次恢复
需要升级? YES
NO 结束画面
按下退出按钮? YES
NO
游戏结束? YES
2.2 关键算法描述
appear()算法:[算法输入参数和输出参数,算法功能,使用什么存储结构,在主程序中起什么作用,可以使用框图或伪代码表示。
输入参数:a (rand()%7) 决定方块的形状
m(rand()%4) 决定方块的旋转;用于画俄罗斯方块;使用两个for循环嵌套。
record()函数算法:用for循环将停止方块位置记录为1.
check()函数算法: 检测是否可以移动:
输入参数:外界按键的asc码
假设可以移动,移动之后的位置与屏幕坐标是否有重合的1,有则不移动,没有则可以移动。
whethercancel()函数算法:检测是否消行:
for循环之后若满足屏幕坐标其中一行都为1,则消行,
并用for循环将屏幕坐标数组元素下传。
dscreen()函数算法:画屏幕:
for循环检测为1,则画方块,为0则画空白。
…..
2.3 程序设计的难点和关键点
一,用一个四维数组来设置方块的形状,状态,颜色。
二,在屏幕坐标上记录有方块的地方为1,方块再落下时为1的地方不可移动。
三,用一个中间参数使将要显示的方块和预示方块一致。
四,检测是否有按键输入时多次苏醒使按键灵敏。
2.4 调试的方法
调试中多利用断点来看哪一步出错,或改用其他形式检测。
2.5 程序性能评价
从运行效果上来看,这个程序通过设置常量来实现直接更改,免去在程序中更改的麻烦,并且响应特别快;但分数无法在升级之后总是归0,暂停时图形消失。
从程序设计上来看,使用了类,结构清晰,便于理解,可以允许外界更改框架坐标;
但有时循环过多,不得不另设参数来实现跳出循环,使不必要的参数出现。
三.心得体会
其实从刚刚开始的手足无措到一个个困难被解决掉,内心得到了极大的成就满足感,看着俄罗斯方块从开始随机出现,到可以旋转,到摞起来,消行,加分,升级……背景音乐
响起的时候,兴奋难以用语言描述,可以说,俄罗斯方块是在我的关注努力下慢慢成长起来的。
还有c++用类来描述使过程清晰了很多,比面向过程更容易理解。
附代码:
// xiaoqiao.cpp : 定义控制台应用程序的入口点。
// 今天完成.cpp : 定义控制台应用程序的入口点。
//
#includeiostream
#includecolorConsole.h
using namespace std;
#includectime
#includecstdlib
#includeconio.h
#includestdio.h
#pragma comment(lib,winmm.lib)
WORD wColors[7]={FOREGROUND_RED|FOREGROUND_BLUE|FOREGROUND_INT
您可能关注的文档
- 对分数的初步认识课件.ppt
- 对公内部评级系统操作手册.doc
- 对话上海贝尔阿尔卡特董事长袁欣.doc
- 对建筑垃圾和工程渣土运输许可证核发的申请表.doc
- 对口高职计算机专业考试试题.doc
- 对企业偿债能力分析的探讨.doc
- 对外汉语教学概论复习资料.doc
- 对外宣传工作管理规定.doc
- 对我国人均GDP的各影响因素的计量分析.doc
- 对影响铟萃取因素的探讨.doc
- 前台客服岗位职责(通用17篇).pdf
- 16.麻雀课件-2024-2025学年四年级上册语文统编版.pptx
- 月考检测(第1~4单元)(试题)-2023-2024学年二年级下册数学苏教版.docx
- 第1-4单元期中核心素养培优卷-2024-2025学年六年级上册数学北师大版.docx
- 《百分数(一)》(课件)-2024-2025学年六年级上册数学人教版.pptx
- 月考检测(第1~2单元)(试题)-2023-2024学年二年级下册数学苏教版.docx
- 月考检测(第1~2单元)(试题)-2023-2024学年三年级下册数学苏教版.docx
- 月考检测(第2~3单元)(试题)-2023-2024学年三年级下册数学苏教版.docx
- 19夜宿山寺 课件-2024-2025学年统编版二年级语文上册.pptx
- 期中(第1-4单元)(试题)-2024-2025学年六年级上册数学人教版 (1).docx
文档评论(0)