1.流程图基本符号
美国国家标准化协会(American National Standards Institute,ANSI)规定了一些常用的流程图符号,目前已被世界各国的多个领域普遍采用,如图1-35所示。
一个流程图应该包括以下几部分,如图1-36所示。
(1)表示相应操作的框。
(2)带箭头的流程线。
(3)框内外必要的文字说明。
图1-35 流程图基本符号
图1-36 Blink程序流程图
2.流程图的基本结构
起初流程图用流程线指出各框的执行顺序,对流程线的使用没有严格规定,流程线在程序中随意连接,流程图也就没有实现使程序直观形象、简单清晰的目的,同样,编写的程序也是逻辑混乱,难以理解的。
为了提高流程图及程序的逻辑性,使其更容易理解、更方便阅读,必须限制流程线的使用,不允许流程线无规律地连接,而是按照一定顺序和条件进行连接的。于是,1966年,Bohra 和 Jacopin 提出了三种基本结构,用这三种基本结构作为表示一个良好算法的基本单元。
(1)顺序结构
如图1-37所示,虚线框内是一个顺序结构,其中A和B两个框是顺序执行的。顺序结构是最简单的一种基本结构。
(2)选择结构
如图1-38所示,虚线框内是一个选择结构,此结构中包含一个判断框,根据条件是否成立而选择执行A还是B,执行完成后,经过b点脱离选择结构。
图1-37 顺序结构
图1-38 选择结构
(3)循环结构
如图1-39所示,虚线框内是一个循环结构,此结构中也有一个判断框用来决定是否跳出循环结构。有两种循环结构;判断框成立跳出循环的称为 until型循环;判断框不成立跳出循环的称为while型循环。
图1-39 循环结构
以上三种基本结构的特点如下:
(1)结构内的每一部分都有机会被执行到。
(2)结构内不存在无法跳出的循环。
(3)只有一个入口,即图中的a点。
只有一个出口,即图中的b点。
注意:一个判断框有两个出口,而一个选择结构只有一个出口,不要将二者混为一谈。
这三种结构基本可解决任何复杂的问题,由基本结构所构成的程序流程不存在无规律的转向,只在本基本结构内才允许存在分支和跳转。