三种基本结构
1966年,Bohra和Jacopini提出了以下三种基本结构,用这三种基本结构作为表示一个良好算法的基本单元。
(1)顺序结构。如图所示,虚线框内是一个顺序结构。其中A和B两个框是顺序执行的。即:在执行完A框所指定的操作后,必然接着执行B框所指定的操作。顺序结构是最简单的一种基本结构。
(2)选择结构。选择结构又称选取结构或分支结构,如图所示
虚线框内是一个选择结构。此结构中必包含一个判断框。根据给定的条件p是否成立而选择执行A框或B框。例如p条件可以是x≥0或x>y,a+b<c+d等。
注意:无论p条件是否成立,只能执行A框或B框之一,不可能既执行A框又执行B框。无论走哪一条路径,在执行完A或B之后,都经过b点,然后脱离本选择结构。A或B两个框中可以有一个是空的,即不执行任何操作,如图所示。(3)循环结构。又称重复结构,即反复执行某一部 分的操作。有两类循环结构。
①当型(while型)循环结构。当型循环结构如图(a)所示。 它的作用是:当给定的条件pl成立时,执行A框操作,执行完A后,再判断条件pl是否成立,如果仍然成立,再执行A框,如此反复执行A框,直到某一次pl条件不成立为止,此时不执行A框,而从b点脱离循环结构。②直到型( until型)循环结构。直到型循环结构如图(b)所示。它的作用是:先执行A框,然后判断给定的p2条件是否成立,如果p2条件不成立.则再执行A.然后再对2条件作判断,如果p2条件仍然不成立,义执行…如此反复执行A.直到给定的p2条件成立为止,此时不再执行A.从b点脱离本循环结构。图2.18是当型循环的应用例子,图2.19是直到型循环的应用例子