c语言知识俄罗斯方块实验报告

(22页)

'c语言知识俄罗斯方块实验报告'
-+ C语言之游戏俄罗斯方块课程设计报告 专业: [] 学生姓名: [] 指导教师: [] 完成时间: 目录一、需求分析 2二、概要设计 2三、详细设计 4四、调试分析 8五、用户手册 9六、测试数据 9七、附录 10 一、需求分析格式:黑体,四号字,英文用times new roman,以下的标题格式均采用该格式。行距为多倍行距,设置值为1.731. 该程序是完成一个简易的俄罗斯方块的任务,其要完成几个重要的功能:界面,方块下落,旋转,判断是否还能下落,左右移动,分数,速度设置,清楚满的每行,下个方块的预览等;2. 可用#include <graphics.h>的头文件来实用几个函数来控制并完成游戏的界面;3. 可用7个二维5*5数组去实现下落方块的全部类型,再用随机函数使其随机下落;4. 用#include <conio.h>的头文件去使用按键的控制,以保证用户能够合理操作;并用#include <stdlib.h>的头文件来使用rand函数来随机出示七种方块;完成正常的显示和下个方块的预览;5. 用 #include <bios.h>来运用时针去控制时间;6. 程序执行过程:然后加上几个基本的头文件来执行函数,首先设置按键操作,用:w,a,d,s控制,然后进行界面的初始化设置,启动,时针参数设置,开始新游戏,开始随机下落方块,显示下一个方块,再行旋转,移动,清除,加分,速度参数,最后判断是否已满,停止游戏,打出分数,结束的画面设置,游戏终止...二、概要设计格式:黑体、四号字,同标题一该程序中的函数设置总体主要功能大致如下1.找到合适的方块盒子(7种)使其一一下落 box[MAX_C][5][5] = { /*MAX_C(7)种预定义的盒子*/ 这样用类似的7个5*5二维数组来实现每个盒子方块的形状,自此就引荐两个作为介绍, { {0,0,0,0,0}, {0,0,0,0,0}, {0,0,1,0,0}, {0,1,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {1,1,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} },如此中用1代表显示的格子,0代表空。2. 设置时间指针,实现旋转,移动,消去,显示加分,改变速度分别用下面函数表示 int setTimer(Timer *t, unsigned int intv, BOOL en); /*设置时钟t,参数分别为时钟指针,时间间隔,是否活动*/ void rotateBox(int box1[5][5], int box2[5][5]) /*旋转box1输出到box2*/int move(int dir) /*实现移动,返回成功与否*/ void clear() /*清除掉满行*/ void prscore() /*打印现在的分数*/void spe()/*显示速度的改变*/ 益智游戏 俄罗斯方块3.外部函数功能如下图判断最后,游戏结束的操作;用prscore()和界面设置完成界面设置void initMap函数和void render绘图函数分数的改变与速度设置;用prscore()与spe()来完成判断是否能继续下落;用int test()函数来完成;方块的旋转和移动下落;用rorate()move()与drop()来实现随机显示方块,并建立下一个;用rand() 与void rebuidNext 开始界面4.建立整个函数的流程图如下: 时间指针设定 随机出示方块, 并显示下个方块实现方块的旋转,移动判断是否到底 N Y 加分,速度设置 Y判断是否已满 N 打印分数,结束处理 游戏结束 流程简介:玩家定义游戏开始,游戏显示开始界面,时针已经设定好,然后随机出示方块,玩家进行方块的旋转,左右移动,和下落控制,然后在旁边的表格中出示另一个表格显示下一个即将下落的方块,然后判断是否到达底部,若到,继续出示方块,若没,则可继续变换,下落到低端后在进行判断,是否可以消除该行,再进行分数的变换,速度的调整,然后判断是否已经满,若未满,则继续出示下一个方块,若满,则结束游戏,打印分数,出示结束界面,游戏终止。三、详细设计格式同标题二1.设置七种方块:这个用int box[MAX_C][5][5] = /*MAX_C(7)种预定义的盒子*/ 来实现;即七个5*5的盒子数组,方块实体用1表示,0表示空;七种如下所示,细心就会发现{ {0,0,0,0,0}, {0,0,0,0,0}, {1,1,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,0,1,0,0}, {0,1,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,1,1,0,0}, {0,0,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,0,1,1,0}, {0,1,1,0,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,1,1,0,0}, {0,0,1,0,0}, {0,0,1,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,0,1,1,0}, {0,0,1,0,0}, {0,0,1,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,0,1,1,0}, {0,0,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} } }; 这样七种盒子的方块就被清楚的展现在你们面前。用来保证方块不会出来2. 我们要进行按键的设置#define KEY_UP 'w' /*定义上下左右按按键*/ #define KEY_DOWN 's' #define KEY_LEFT 'a' #define KEY
关 键 词:
语言 知识 俄罗斯方块 实验 报告
 天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:c语言知识俄罗斯方块实验报告
链接地址: https://www.wenku365.com/p-43428478.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给天天文库发消息,QQ:1290478887 - 联系我们

本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有【成交的100%(原创)】。本站是网络服务平台方,若您的权利被侵害,侵权客服QQ:1290478887 欢迎举报。

1290478887@qq.com 2017-2027 https://www.wenku365.com 网站版权所有

粤ICP备19057495号 

收起
展开