- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 详细设计 详细设计的目标: 得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。 对目标系统的精确描述: 详细的算法 数据表示和数据结构 实施的功能和使用的数据之间的关系 第6章 详细设计 详细设计的任务: 逻辑上正确地实现每个模块的功能。 设计出的处理过程应该尽可能简明易懂。(更重要) 面向过程的详细设计是基于结构化的程序设计技术,结构化程序设计技术是面向过程的详细设计的逻辑基础。 结构化程序设计技术是实现上述任务的关键技术。 第6章 详细设计 6.1 结构程序设计 6.3 过程设计的工具 6.4 面向数据结构的设计方法 6.5 程序复杂程度的定量度量 6.2 人机界面设计 6.6 小结 习题 6.1 结构程序设计 E.W.Dijkstra在60年代中期提出结构程序设计的概念 结构化程序设计技术:采用自顶向下逐步求精的设计方法和单入口单出口的控制结构,并且只包含顺序、选择和循环三种结构。 C.Bohm和G.Jacopini在数学上证明了只用“顺序”、“选择”和“循环”这三种基本的控制结构可以实现任何单入口和单出口的程序 6.1 3种基本的控制结构 经典的结构程序设计:只允许使用顺序、IF-THEN-ELSE型分支和DO-WHILE型循环这3种基本控制结构; 扩展的结构程序设计:除了上述3种基本控制结构之外,还允许使用DO-CASE型多分支结构和DO-UNTIL型循环结构; 修正的结构程序设计:除上述结构以外,还允许使用LEAVE(或BREAK)结构。 结构程序设计是尽可能少用GO TO语句的程序设计方法。仅在检测出错误时才使用GO TO语句,而且总是使用前向GO TO语句。 图6.2 其他常用的控制结构 6.3 过程设计的工具 6.3.1 程序流程图 程序流程图(程序框图):描述过程设计的方法,也是用得最混乱的一种方法。 优点:对控制流程的描绘很直观,便于初学者掌握。 缺点: (1) 不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。 (2) 用箭头代表控制流,程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制。 (3) 不易表示数据结构。 使用对策:只用结构程序设计允许的五种图示结构 6.3.2 盒图(N-S图) 一种不允许违背结构程序设计精神的图形工具。又称为N-S图。它有下述特点: (1) 功能域(作用域)明确,可以从盒图上一眼就看出来。 (2) 不可能任意转移控制。 (3) 很容易确定局部和全程数据的作用域。 (4) 很容易表现嵌套关系,也可以表示模块的层次结构。 看图6.4 盒图没有箭头,因此不允许随意转移控制。 图6.4 盒图的基本符号 6.3.3 PAD图 PAD是问题分析图(problem analysis diagram) 。 它用二维树形结构的图来表示程序的控制流。 图6.5给出PAD图的基本符号。 图6.5 PAD图的基本符号 PAD图的主要优点如下: (1) 使用PAD符号设计的程序必然是结构化程序。(2) PAD图所描绘的程序结构十分清晰。 最左面的竖线是程序的主线,即第一层结构。 随着程序层次的增加,PAD图逐渐向右延伸。 每增加一个层次,图形向右扩展一条竖线。图中竖线的总条数就是程序的层次数。 (3) PAD图表现的程序逻辑,易读、易懂、易记。 程序从图中最左竖线上端的结点开始执行,自上而下,从左向右顺序执行,遍历所有结点。 (4) 容易将PAD图转换成高级语言源程序,这种转换可用软件工具自动完成。 (5) 即可表示程序逻辑,也可描绘数据结构。 (6) 支持自顶向下、逐步求精方法的使用。 开始时可以定义一个抽象的程序,随着设计的深入,使用def符号逐步增加细节,直至完成详细设计,如图6.6所示。 图6.6 使用PAD图提供的定义功能 来逐步求精的例子 6.3.4 判定表 适于表示复杂的条件组合与应做的动作之间的对应关系。 一张判定表由以下四部分组成: (1)左上部列出所有条件。 (2)左下部是所有可能的动作。 (3)右上部是表示各种条件组合的一个矩阵。 (4)右下部是和每种条件组合相对应的动作。 判定表右半部的每一列实际上就是一个规则,规定了与特定的条件组合相对应的动作。 示例: 假设某大学要从学生中挑选男子篮球队队员, 基本条件是: 各门课程的平均分在70分以上, 身高
您可能关注的文档
- 蛲虫-培训课件.ppt
- 欧盟能源相关产品 ErP 指令框 省略 调用相变蓄冷材料生态效能提升研究 彭莉.pdf
- 凝胶化条件对定型相变材料热性能的影响 何丽红.pdf
- 欧培德合作伙伴1 开幕词-2016年市场活动介绍-2015年经典活动回顾介绍 from 李岩.pdf
- 欧培德合作伙伴2 销售支持部功能介绍 from 张阿利.pdf
- 欧培德合作伙伴3 产品推荐书理念-思路 from 张磊.pdf
- 欧培德合作伙伴4 教育培训方案新模块介绍 from Sonja Konrad.pdf
- 欧培德合作伙伴5 Biodex 产品新特点介绍 from Bill Galway.pdf
- 欧培德合作伙伴6 NovoTec 新产品介绍 from Eibo Schwitters.pdf
- 欧培德合作伙伴7 BTE RS 卖点总结 from 金绍辉.pdf
文档评论(0)