计算机程序可以看作是一条一条按照顺序执行的代码。
顺序结构是程序的基础,但单一的顺序结构不可能一直奏效,这个时候就需要用到控制结构更改程序的执行顺序来满足不同的需求。
程序由三种结构组成:顺序结构,分支结构,循环结构。
1.顺序结构是程序按照线性顺序依次执行的一种执行方式。
2.分支结构是程序根据条件判断结果而选择不同向前执行路径的运行方式。
3.循环结构是程序根据条件判断结果向后执行的一种执行方式。
这三种结构可以用流程图进行展示
但需要注意的是,这三种结构并不是流程图的基本元素,它们是组合,而判断框等才是流程图的基本元素。
一. 顺序结构
实例:求圆的半径和面积
二. 分支结构
1.单分支结构:if语句,是if条件满足后执行的一个或多个语句序列,if语句会评估条件的结果值,如果结果是True。,则执行语句序列,然后控制转向下一条语句。如果结果为Flase,则语句序列会被跳过。
实例:
2.双分支结构:if-else语句,在if条件满足后执行语句一,if条件不满足后执行语句二,二分支语句用于区分条件的两种可能,即True或Flase,分别形成执行路径。
实例:
3.多分支结构:if-elif-else语句,多分支语句是二分支语句的拓展,常用在判断同一个条件时的多条路径,当满足一个条件时,将执行该条件下的语句,如果一个条件都不满足,则执行else下的语句。
实例:
三. 循环结构
1.遍历循环:for语句,循环执行次数由遍历结构中的元素个数决定,即从遍历结构中逐一提出元素放在循环变量中,对于每个元素执行一次语句块。遍历结构可以是字符串、文件、组合数据类型或range函数。并且遍历循环还有一种扩展模式即
for <循环变量> in <遍历结构>:
<语句块1>
else:
<语句块2>
且else语句只有在循环正常执行结束后才执行
实例:
2.无限循环:while语句,还叫条件循环。无限循环一直保持循环直到条件不满足时才结束,不需要提前确定循环次数。并且无限循环也有else保留字的扩展结构,即:
while <条件> :
<语句块1>
else :
<语句块2>
else语句也是在循环正常执行后才执行
实例:
3.循环保留字:break和continue
(1)break用来跳出最内层for或while循环,脱离该程序后循环从循环代码后继续执行,如:
其中 end=" "将换行符设置为空,因为3.x中的print默认换行符为系统空行,即自动换行,加入end=" "后将不进行换行,则结果为:
(2)continue用来结束当前本次循环,即跳出本次循环下面未执行的语句,但不跳出循环。对于while循环,继续求解循环条件,而for循环,程序流程继续遍历循环列表。如:
输出结果为:
而当continue改为break时,结果为:
(3)continue与break的区别是,continue语句只结束本次循环,而不终止整个循环的执行;而break语句是结束整个循环过程,不再判断条件是否成立。并且在else扩展用法时,continue将执行else后的语句,但break不执行。如:
输出结果为:
而将continue换为break时,结果为:
控制结构笔记到此。