- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《软件工程导论》实验报告
学院:
班级:
姓名:
学号:
[ 实验目的 ]
初步了解结构化分析、设计方法的原理、步骤以及各阶段的文档,练习撰写简要的需求文档、设计文档。
[ 实验内容 ]
贪吃蛇程序:贪吃蛇游戏是一个深受人们喜爱的游戏,一条蛇在密闭的围墙内,在围墙内随机出现一个食物,通过按键盘上的四个光标键控制蛇向上下左右四个方向移动,蛇头撞到食物则表示食物被蛇吃掉,这时蛇的身体长一节,同时计1分,接着又出现食物,等待被蛇吃掉,如果蛇在移动过程中,撞到墙壁或身体交叉蛇头撞到自己的身体,游戏结束。根据编写贪吃蛇的游戏规则,我们利用c语言来进行编辑具体步骤,从而使游戏能够运行,根据编写贪吃蛇程序,掌握软件工程思想及要领,进一步巩固编程思想和掌握画图函数底层,依据项目可行性研究的结果,进行需求分析和设计,编写简要的需求规格说明书,绘制程序流程图。
[ 实验原理和步骤 ]
当前的建模方法主要有传统的结构化分析、设计方法(SA/D)和面向对象分析、设计方法(OOA/D)两种。
分析阶段:
结构化分析(SA)是一种建模技术 ,它通过一定方法帮助开发人员定义系统需要什么功能,系统需要存储和使用哪些数据,以及为完成这些功能,系统需要什么样的输入和输出以及如何把这些功能结合在一起来完成任务。
设计阶段:
分总体设计和详细设计两阶段。总体设计阶段的任务主要是确定系统由哪些模块组成,以及这些模块之间的相互关系;详细设计阶段的任务主要是设计每个模块的处理过程。常用的结构化设计(SD)方法有面向数据流分析(DFA)的设计方法和面向数据的设计方法。DFA设计技术实施的通用步骤:(1)复查并精化DFD;(2)确定DFD类型;(3)把DFD映射到系统模块结构,设计出模块结构的上层;(4)基于DFD逐步分解高层模块,设计出下层模块〈初步结构〉;(5)根据模块独立性原理,精化模块结构,得到更为合理的软件结构;(6)模块接口描述;(7)修改和补充数据词典;(8)制定测试计划。
详细设计阶段的任务主要是确定每个模块的处理过程,包括(1)确定每个模块的算法。(2)确定每一个模块的数据组织。(3)为每个模块设计一组测试用例。(4)编写详细设计说明书。详细设计阶段采用的方法是结构化程序设计(SP),与SA,SD方法衔接。目标是给出可以直接用以编码的程序逻辑结构,强调清晰第一。
设计思路:
这个程序的关键点是表示蛇的图形以及蛇的移动。用一个小矩形块表示蛇的一节身体,身体每长一节,增加一个矩形块,蛇头用两节表示。移动时必须从蛇头开始,所以蛇不能向相反方向移动,也就是蛇尾不能改作蛇头。如果不按任何键,蛇自行在当前方向上前移,当游戏者按了有效的方向键后,蛇头朝着指定的方向移动,一步移动一节身体,所以当按了有效的方向键后,先确定蛇头的位置,然后蛇身体随着蛇头移动,图形的实现是从蛇头的新位置开始画出蛇,这时,由于没有清屏的原因,原来蛇的位置和新蛇的位置差一个单位,所以看起来蛇会多一节身体,所以将蛇的最后一节用背景色覆盖。食物的出现和消失也是画矩形块和覆盖矩形块。为了便于理解,定义了两个结构体:食物和蛇。
[ 需求规格说明书 ]
主要功能陈述:这是一款适合各年龄阶层小游戏,它可以使人们休息时的一种放松方式也可以是孩子们的娱乐游戏;另外对于一些对于有一定的C语言基础的,可以一边在玩的时候,感受在其中的编程思想并且自己进行尝试。
IPO图:
输入 处理 输出分数状况界面相应游戏中执行相应的操作游戏玩法操作游戏系统操作是否进入游戏输入密码1判断密码正确2判断操作正确性3进行操作执行判断4分数统计5游戏界面构建6游戏刷屏
输入 处理 输出
分数状况
界面相应
游戏中执行相应的操作
游戏玩法操作
游戏系统操作
是否进入游戏
输入密码
1判断密码正确
2判断操作正确性
3进行操作执行判断
4分数统计
5游戏界面构建
6游戏刷屏
数据字典:先进行蛇与食物的定义,再制定游戏中蛇的光标处理方法,初始化蛇的位置坐标,接着创建整个游戏的活动界面从而确定游戏的整体的框架。初始化游戏的计分系统,设置初始化分数,再增加分数统计系统确立分数处理的方法。接着编写游戏的规则,蛇的走动方法与吃到食物增长的处理以及游戏中碰壁或碰到自身的处理,最后进行对游戏失败的处理以及游戏的清屏处理。
[ 详细设计说明书 ]
模块的文字描述:
main()主函数:这是程序的大体流程,首先定义使用到的常数、全局变量及函数原型说明,然后初始化图形系统,调用函数画出开始画面,调用函数,即玩游戏的具体过程与分数的增加,游戏结束后调用关闭图形系统清理屏幕,结束
您可能关注的文档
- We-love-animals-教学课件(Period-6).ppt
- Why-do-you-like-pandas-section-b-2a-2c-教案.doc
- will和be-going-to的区别.doc
- Where-did-you-go--ppt课件.ppt
- WinCC中MSFlexGrid控件编程程序.doc
- WinCC-脚本调试与诊断方法.docx
- wincc脚本-按钮二次确认并生成消息记录.doc
- Windows-2008R2-安装Sybase-15-高可用性群集.docx
- WOFOST模型参数整理.doc
- windows-server-2016无域配置故障转移群集帮助文档.docx
文档评论(0)