6第六章编码电子教案.pptVIP

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
6第六章编码电子教案

第6章 编码和编程语言 学习目标 了解编码的目的 掌握编码的风格 了解编码语言的发展 掌握编码语言的选择 第6章 编码和编程语言 教学内容 6.1 编码的目的 6.2 编码的风格 6.3 编码语言 本章小结 6.1 编码的目的 编码的目的,是使用选定的程序设计语言,把模块的 过程性描述翻译为用该语言书写的源程序。 编码 模块的过程性描述―――→源程序 (不可执行的) (可执行的) 编码产生的源程序,应该正确可靠,简明清晰,而且具 有较高的效率。但是,清晰和效率却常有矛盾。对于大多 数模块来讲,应该把简明清晰放在第一位,如果个别模块 要求特别高的效率,就应把具体要求告诉程序员,以便作 特殊的处理。 6.1 编码的目的 设计是编码的前导。实践表明,编码中出现的问题主 要是由设计中存在的问题引起的。但这并不是说,编码 阶段无足轻重。恰恰相反,程序员应该向优秀的译员一 样,在编码“翻译”时简明清晰、高质量地将系统设计付诸 实施。 顺便指出,除了在编码阶段要产生源程序外,在测试 阶段也需要编写一些测试程序,用于对软件的测试。但 这部分代码用过就可以废弃,不需要在程序质量上多费 功夫。在演化模型软件开发中产生的原型代码,也有一 部分或全部都是用过就废弃的代码。 6.2 编码的风格 主要教学内容: 6.2.1 结构化程序设计 6.2.2 编码风格 6.2 编码的风格 6.2.1 结构化程序设计 程序编码是把软件的详细设计变换成用某一种程序设计 语言编写的可实现的源程序,结构化程序设计是在编写程 序时首先必须考虑的问题。 结构化程序设计技术主要包括两个方面: 在编写程序时,强调使用几种基本控制结构。尽可能避免使用会使程序质量受到影响的GOTO语句。 在程序设计过程中,尽量采用自顶向下和逐步细化的原则,由粗到细,一步步展开。 6.2 编码的风格 1. 结构化程序设计的原则 使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑。 选用的控制结构只准许有一个入口和一个出口。 程序语句组成容易识别的块(block),每块只有一个入口和一个出口。 复杂结构应该用基本控制结构进行组合嵌套来实现。 语言中没有的控制结构,可用一段等价的程序段模拟,但要求该程序段在整个系统中应前后一致。 严格控制GOTO语句。 6.2 编码的风格 例6.1 图6.1是使用FORTRAN IV语言编写的一个打印A,B,C三数中最小者的程序的流程图。其中出现了6个GOTO语句,程序可读性很差。 6.2 编码的风格 如果使用在FORTRAN IV中没有,而FORTRAN 77中才提供的if-then- else结构化构造,则上述程序段可改写成如下形式,这种程序结构清 晰,可读性好。 if ( A .LT. B .AND. A .LT. C ) then write (6,* ) A else if ( A .GE. B .AND. B .LT. C ) then write ( 6,* ) B else write ( 6,* ) C endif endif 6.2 编码的风格 例6.2 用GOTO语句实现提前退出循环的情况 下面一段程序是用Pascal书写的一个多出口循环程序()。其正常循环结束条件是C1=false。但一旦在执行中C2或C3有一个条件得到满足,就会提前退出循环。 while c1 do begin … if c2 then goto 20; … if c3 then goto 30; end; 20: {code for c2 exit} goto 40; 30: {code for c3 exit} 40: ? 6.2 编码的风格 这一程序段有3个出口,明显违反了单出口的要求。可通过增加 布尔变量将其修改为单出口结构。每次循环将这些标志检查一遍, 以便决定要不要退出循环。修改后的程序段如下。 exit1:=false; exit2:=false; while (C1) and (not exit1) and (not exit2) do begin … if c2 then exit1:=true; … if c3 then exit2:=true; … end; if (exi

文档评论(0)

wuyoujun92 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档