2.4.3 三种基本结构和改进的流程图

传统流程图用流线指出各个框的执行顺序

当顺序表的复杂,容易混乱,当变得十分混乱时 ,被称为BS型算法,意为一碗面条(A Bowl of Spaghetti),乱无头绪。

 

为了提供效率和避免混乱,人们提出了三种基本结构

1966年,Bohra 和Jacopini 提出以下3种结构,用这3种结构表示一个良好算法的基本单元。

PS:引用图片 来自方弘

 

1 顺序结构

c语言从上到下执行,虚框内是顺序结构

执行完A执行B

2 选择结构

又被称为,选取结构和分支结构

此结果必须包含一个判断框,根据给出的条件P 判断选择A或者B。

无论P条件是否成立,一定会选择AB其中一个,不可能出现两个都不选择,和两个都成立的情况。

A与B中可以有一个是空的

3 循环结构

又称为反复结构,即反复操作执行某一部分。

一共分为两类:

当(while)循环结构

当条件符合时 ,执行其参数内操作,再次判断是否符合,如果符合,继续执行内参数,在次判断,直到不符合条件,执行下一步操作

直到(until)循环结构

执行其参数内操作判断是否符合,当条件不符合时,再次执行参数,再次判断是否符合,如果不符合,继续执行内参数,在次判断,直到符合,执行下一步操作

 

 

三种基本结构的共同特点:

(1)只有一个入口;

(2)只有一个出口;(请注意:一个菱形判断框有两个出口,而一个选择结构只有一个出口。不要将菱形框的出口和选择结构的出口混淆。)

(3)结构内的每一部分都有机会被执行到;

(4)结构内不存在“死循环”(无终止的循环)

 

 

错误图例

 

如图,没有机会执行A框,所以此图是错误的

如图这是一个i额死循环,也是错误的。

小结:

•由三种基本结构顺序组成的算法结构,可以解决任何复杂的问题。由基本结构所构成的算法属于“结构化”的算法,它不存在无规律的转向,只在本基本结构内才允许存在分支和向前或向后的跳转。
•只要具有上述四个特点的都可以作为基本结构。可以自己定义基本结构,并由这些基本结构组成结构化程序。
例如:

这是一个多分支选择结构,根据表达式的值决定执行路线。虚线框内的结构是一个入口一个出口,并且有上述全部的四个特点。由此构成的算法结构也是结构化的算法。可以认为这是由三种基本结构所派生出来的。

例如

 

 

多联系 多画画就记住了

记住4个特点是关键:

一个入口一个出口,每一部分都可能被执行,没有死循环

posted on 2013-07-11 22:41 taoyuan7788 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/taoyuan7788/p/3185162.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值