Linux基础20-C语言篇之流程控制Ⅰ【入门级】
流程控制
算法
著名计算机科学家沃思提出了一个公式:
数据结构 + 算法 = 程序
数据结构:对数据的描述
算法:对操作步骤的描述
算法定义
广义地说,为解决一个问题而采取的方法和有限的步骤,就称为“算法”。
例如:
将大象放进冰箱的算法就可以如下描述:
打开冰箱门-把大象装进去-关闭冰箱门
算法特征
- 有穷性:包含有限的操作步骤,不能无限的执行下去
- 可行性:算法中的每一条指令必须是切实可执行的
- 确定性:算法中的每一条指令必须有确切的含义,不能产生歧义
算法描述-流程图
案例
-
要求:对于计算s=1+2+3+4+5+6+7+8+9+10(累加求和)
-
用流程图表示为:
程序的三种基本结构
顺序结构
特点:各操作是按先后顺序执行的,是最简单的一种结构,这个结构是默认的。
其中A和B两个框是顺序执行的。也就是在A框所指定的操作后,必然接着执行B框所指定的操作。
分支结构
分支结构又被称作“条件结构”或者“选择结构”。
特点:根据是否满足给定条件而从两组或者多组操作中选择一种进行执行。
- 无论P条件是否成立,只能执行A操作或者B操作中的一个。
- 无论执行完哪一个分支后,就结束了
分支结构又被分为:单分支、双分支、多分支
循环结构
又被称之为“重复结构”。即在一定条件下,反复执行某一部分的操作,有两种类型:
- 当型循环
执行过程:
当给定条件P成立时,执行S操作,然后再判断P条件是否成立,如果仍成立,再执行S操作,然后再判断…,如此反复,直到某一次P条件不成立为止,此时不再执行S,结束循环。
特点:
先判断,后执行,S有可能一次也不执行。(while,for)
- 直到型循环
执行过程:
执行S操作,然后判断条件P是否成立,如果成立,再执行S操作,然后再判断,……,如此反复,直到某一次P条件不成立不再执行S,结束循环。
特点:
先执行,后判断,S最少要执行一次。(do…while)