继程序流程图
程序流程图 程序流程图独立于任何一种程序设计语言,比较直观、清晰,易于学习掌握。但流程图也存在一些严重的缺点。例如流程图所使用的符号不够规范,常常使用一些习惯性用法。特别是表示程序控制流程的箭头可以不受任何约束,随意转移控制。这些现象显然是与软件工程化的要求相背离的。为了消除这些缺点,应对流程图所使用的符号做出严格的定义,不允许人们随心所欲地画出各种不规范的流程图。例如,为使用流程图描述结构化程序,必须限制流程图只能使用图3.25所给出的五种基本控制结构。 图4.3 流程图的基本控制结构 任何复杂的程序流程图都应由这五种基本控制结构组合或嵌套而成。作为上述五种控制结构相互组合和嵌套的实例,图示给出一个程序的流程图。图中增加了一些虚线构成的框,目的是便于理解控制结构的嵌套关系。显然,这个流程图所描述的程序是结构化的。 图4.4流程图的基本控制结构 4.5 .2 N-S图 Nassi和Shneiderman 提出了一种符合结构化程序设计原则的图形描述工具,叫做盒图,也叫做N-S图。为表示五种基本控制结构,在N-S图中规定了五种图形构件。参看图4.5。 为说明N-S图的使用,仍用图4.4给出的实例,将它用如图4.6所示的N-S图表示。 如前所述,任何一个N-S图,都是前面介绍的五种基本控制结构相互组合与嵌套的结果。当问题很复杂时,N-S图可能很大。 图4