正在加载图片...
有危机就会有革命。1968年, E W Dijkstra首先提出“gobo语句是有害的”,向传统的程 序设计方法提出了挑战,从而引起了人们对程序设计方法讨论的普遍重视,许多著名的计算 机科学家都参加了这场论战3。结构化程序设计方法正是在这种背景下产生的 结构化程序设计的基本观点是,随着计算机硬件性能的不断提高,程序设计的目标不应 再集中于如何充分发挥硬件的效率方面。新的程序设计方法应以能设计出结构清晰、可读性 强、易于分工合作编写和调试的程序为其基本目标 结构化程序设计认为,好的程序具有层次化的结构,应该采用“逐步求精”的方法,只 使用顺序、分支和循环等基本程序结构通过组合嵌套来编写(见2.2:“‘自顶向下,逐步求精 的程序设计方法”)。 与此同时,关于程序设计和软件生产的其他研究也在不断深入例如数据抽象与模块化 程序设计、程序正确性证明、程序自动生成以及研究大型软件生产方法的软件工程等。 今天,结构化程序设计方法、面向对象的程序设计方法、第4代程序设计语言、计算机 辅助软件工程(CASE)等软件设计和生产技术都已日臻完善,计算机软、硬件技术的发展交相 映辉,使计算机的发展和应用达到了前所未有的高度和广度。 26C++的其他控制转移语句 C艹+提供的控制转移语句,除了授课内容部分所介绍的 if-else语句、 while语句 do- while语句和for语句以外,还有如下一些控制语句 261 switch语句 switch语句用于实现多重分支,其格式为 switch(<整型表达式>) case<数值1》 case<数值2>: 3 Dijkstra等人认为应该彻底废弃goo语句的使用,其理由是goto语句的存在使程序的静态结构与其动态 执行有了很大的差别,因而使程序难于阅读和调试。从程序中去掉goto语句之后,可以直接从程序的结构 上反映出程序运行的过程,不仅便于阅读和查错,而且有利于程序的正确性证明。持不同意见的人认为 o语句使用灵活,在某些情况下可以提高程序的效率。如果一味强调从程序中删去所有的goto语句,在 某些情况下反而会使程序变得更加复杂 1974年, D.E. Knuth在其论文“带转向语句的结构程序设计”中对goto语句之争作了全面公正的论述, 认为:不加限制地使用goto语句,特别是向回跳的goto语句,会使程序难于理解,因此应该避免。但是在某 些情况下有控制地使用一些goto语句可以提高程序的效率,同时又不破坏程序的良好结构(见2.62“goto 语句和语句标号”)第 2 单元 控制结构 - 29 - 有危机就会有革命。1968 年, E.W.Dijkstra 首先提出“goto 语句是有害的”, 向传统的程 序设计方法提出了挑战, 从而引起了人们对程序设计方法讨论的普遍重视, 许多著名的计算 机科学家都参加了这场论战3。结构化程序设计方法正是在这种背景下产生的。 结构化程序设计的基本观点是, 随着计算机硬件性能的不断提高, 程序设计的目标不应 再集中于如何充分发挥硬件的效率方面。新的程序设计方法应以能设计出结构清晰、可读性 强、易于分工合作编写和调试的程序为其基本目标。 结构化程序设计认为, 好的程序具有层次化的结构, 应该采用“逐步求精”的方法, 只 使用顺序、分支和循环等基本程序结构通过组合嵌套来编写(见 2.2:“‘自顶向下, 逐步求精’ 的程序设计方法”)。 与此同时, 关于程序设计和软件生产的其他研究也在不断深入, 例如数据抽象与模块化 程序设计、程序正确性证明、程序自动生成以及研究大型软件生产方法的软件工程等。 今天, 结构化程序设计方法、面向对象的程序设计方法、第 4 代程序设计语言、计算机 辅助软件工程(CASE)等软件设计和生产技术都已日臻完善, 计算机软、硬件技术的发展交相 映辉, 使计算机的发展和应用达到了前所未有的高度和广度。 2.6 C++的其他控制转移语句 C++提供的控制转移语句, 除了授课内容部分所介绍的 if-else 语句、while 语句、 do-while 语句和 for 语句以外, 还有如下一些控制语句: 2.6.1 switch 语句 switch 语句用于实现多重分支, 其格式为: switch (<整型表达式>) { case <数值 1>: … ... case <数值 2>: …... 3 Dijkstra 等人认为应该彻底废弃 goto 语句的使用, 其理由是 goto 语句的存在使程序的静态结构与其动态 执行有了很大的差别, 因而使程序难于阅读和调试。从程序中去掉 goto 语句之后, 可以直接从程序的结构 上反映出程序运行的过程, 不仅便于阅读和查错, 而且有利于程序的正确性证明。持不同意见的人认为, goto 语句使用灵活, 在某些情况下可以提高程序的效率。如果一味强调从程序中删去所有的 goto 语句, 在 某些情况下反而会使程序变得更加复杂。 1974 年, D.E.Knuth 在其论文“带转向语句的结构程序设计”中对 goto 语句之争作了全面公正的论述, 认为: 不加限制地使用 goto 语句, 特别是向回跳的 goto 语句, 会使程序难于理解, 因此应该避免。但是在某 些情况下有控制地使用一些 goto 语句可以提高程序的效率, 同时又不破坏程序的良好结构 ( 见 2.6.2:“goto 语句和语句标号”)
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有