文档介绍:推箱子游戏楷体,3号字,加粗一、实训任务与目的本实训要求学生对“推箱子游戏”进行分析、设计及编程实现。本实训对实训项目已经作了较为详细的分析及相关知识讲解,通过实训,促使学生专业技能得到综合训练,让学生了解软件开发基本技术和工作过程。同时,本实训中将会让学生了解图形界面设计基本技术。通过本系统的开发,同学门要了解软件开发的整个过程,掌握软件开发的基本方法,提前培养同学们从事软件行业应具备的基本素质和能力,为以后的学习作一个铺垫。系统开发步骤软件开发一般有以下步骤:1. 问题定义2. 可行性研究3. 需求分析(需求分析阶段)4. 总体设计5. 详细设计6. 编码及单元测试7. 综合测试8. 软件维护(安装调试阶段)其中1、2、3步可以整合为调研分析阶段,4、5、6、7步可以整合为项目实施阶段。根据实际本次软件项目实训的实际情况,我们着重进行系统设计和编码实施。该阶段主要工作有:,包括整个系统分哪些部分,各部分之间有什么联系以及已确定的需求对这些组成部分如何分配等方面。——数据的基本结构、存储技术,定义数据处理流程。,说明模块之间的调用关系与接口(参数)。,按照统一的要求和编码规范,用C语言编码实现,同时负责每个模块的独立调试。。软件测试一般有专业的测试人员,同时通过发布使用试用版(体验版)等方式让用户体验、测试。在多次测试改进后,才正式发布。三、系统功能需求描述经典的推箱子是一个来自日本的古老游戏,目的是在训练人的逻辑思考能力。在一个狭小的仓库中,要求把木箱从开始位置推放到指定的位置。在仓库有障碍物,稍不小心就会出现箱子无法移动或者通道被堵住的情况,而且箱子只能推,不能拉,所以需要巧妙的利用有限的空间和通道,合理安排移动的次序和位置,才能顺利的完成任务。本游戏一共4关,由易到难,每一关都有初化、按键处理、重置及退出功能。(1)初始化包括屏幕初始化和每一关卡的初始化,屏幕被初始化宽80像素,高25像素。(2)按键处理包括移动小人和移动箱子,通过移动上下左右键来控制小人的移动,从而推动箱子,以把箱子推到指定的目的地为过关。(3)每一关都可以重置,按空格键可以重置当前关。(4)按Esc键可以在任何时候退出游戏。四、技术要求定义二维数组charstatus[20][20],用于记录屏幕一各点的状态。其中,“0”表示什么都没有,“b”表示箱子,“w”表示目的地,“i”表示箱子在目的地。首先将屏幕20*20范围内的状态初始化为0,然后根据具体情况,在画箱子时,将箱子所在点的状态改为“b”;在画墙壁时,将墙壁所在点的状态改为“w”;在画目的地时,将目的地所在点的状态改为“m”;当箱子被推到目的地时,箱子所在点的状态改为“i”,如果每一关中所有目的地的状态都为“i”,则说明该关已完成。定义字符指针charfar*printScreen=(charfar*)0xB8000000,用于在屏幕上输出字符。彩色显示器的字符缓冲区首地址为0xB8000000,每一个字符占2个字节(第一个字节为ASCII值,第二个字节为颜色值),字符模式下屏幕宽80像素,高25像素,一屏可以写80*25个字符。定