61.1结构化程序的结构 条件1 条件2 语句1 语句2 条件3 语句3 语句4 图6.4 else if结构
6.1.1 结构化程序的结构 条件1 条件2 条件3 语 句 1 语 句 2 语 句 3 语 句 4 图6.4 elseif结构
61.1结构化程序的结构 ②在许多情况下,在程序的循环过程中当满足 某种条件时,需要立即从循环中转移出来,这 时从程序结构上看,可能会出现两个出口的情 况。但这种结构对程序的清晰度并没有多大影 响,相反还可以提高程序的执行效率,缩短程 序执行时间。所以在实际应用中,允许使用这 种结构来控制程序的执行。不少高级语言中都 设有从循环中转移出来的语句。例如C语言中 的 break语句
6.1.1 结构化程序的结构 ②在许多情况下,在程序的循环过程中当满足 某种条件时,需要立即从循环中转移出来,这 时从程序结构上看,可能会出现两个出口的情 况。但这种结构对程序的清晰度并没有多大影 响,相反还可以提高程序的执行效率,缩短程 序执行时间。所以在实际应用中,允许使用这 种结构来控制程序的执行。不少高级语言中都 设有从循环中转移出来的语句。例如C语言中 的break语句
61.1结构化程序的结构 ③无条件转移语句—goto语句,公认为是对程 序清晰性影响最大的语句。对goto语句不加 限制地使用,会造成整个程序杂乱无章,甚至 使程序无法理解或难以进行维护。目前一致认 为,对于初学者要禁止使用goto语句,对比 较有经验的程序员可以有限制地使用goto语 句来提高程序效率,例如将goto语句的转移 范围限制在同一程序结构内部
6.1.1 结构化程序的结构 ③无条件转移语句—goto语句,公认为是对程 序清晰性影响最大的语句。对goto语句不加 限制地使用,会造成整个程序杂乱无章,甚至 使程序无法理解或难以进行维护。目前一致认 为,对于初学者要禁止使用goto语句,对比 较有经验的程序员可以有限制地使用goto语 句来提高程序效率,例如将goto语句的转移 范围限制在同一程序结构内部
612自顶向下、逐步求精 所谓自顶向下、逐步求精,就是指在程序设计初 期,首先要对程序的功能有一个全面的理解,继 而将其分解为若干个子功能,再分析每一个子功 能,并继续分解直至不需再分解为止,然后对每 个子功能进行相应的算法设计,最终实现每 个子功能所需的程序结构及方法。 这种方法有助于程序员全面理解程序应完成的功 能,通过子功能的分解可以使程序员掌握整个程 序的结构,了解各个子功能及上、下级程序之间 的数据接口
6.1.2 自顶向下、逐步求精 所谓自顶向下、逐步求精,就是指在程序设计初 期,首先要对程序的功能有一个全面的理解,继 而将其分解为若干个子功能,再分析每一个子功 能,并继续分解直至不需再分解为止,然后对每 一个子功能进行相应的算法设计,最终实现每一 个子功能所需的程序结构及方法。 这种方法有助于程序员全面理解程序应完成的功 能,通过子功能的分解可以使程序员掌握整个程 序的结构,了解各个子功能及上、下级程序之间 的数据接口
612自顶向下、逐步求精 对于一些初学者,往往养成一种不良习惯,即在 对问题没有完全理解的情况下就着手编写语言程 序,往往事倍功半,甚至程序写到最后才发现整 体结构不正确。只能全部推翻重来,造成人力 财力上的浪费。这种失败的例子屡见不鲜。对于 个成熟的程序员来说,在对要解决的问题有了 全面理解后,应先使用程序设计的表达工具(如 程序流程图、PAD图、NS图、伪代码等)对问 题进行描述,最后再使用具体的计算机语言把问 题表达出来,调试成功后在计算机上运行
6.1.2 自顶向下、逐步求精 对于一些初学者,往往养成一种不良习惯,即在 对问题没有完全理解的情况下就着手编写语言程 序,往往事倍功半,甚至程序写到最后才发现整 体结构不正确。只能全部推翻重来,造成人力、 财力上的浪费。这种失败的例子屡见不鲜。对于 一个成熟的程序员来说,在对要解决的问题有了 全面理解后,应先使用程序设计的表达工具(如 程序流程图、PAD图、N-S图、伪代码等)对问 题进行描述,最后再使用具体的计算机语言把问 题表达出来,调试成功后在计算机上运行