(共28张PPT)
2.3.3 语句与程序结构
顺序结构、选择结构
程序语句包括:
赋值语句、控制语句和输入、输出语句等。
程序设计的三种基本结构包括:
顺序结构、选择结构和循环结构。
程序结构——顺序结构
顺序结构指程序的执行按句的排列顺序从上到下依次执行,直至结束。
①找一个空杯子C;
②将A杯中液体倒入C杯中;
③将B杯中液体倒入A杯中;
④将C杯中液体倒入B杯中;
⑤完成交换。
思考:有一杯水和一杯酒,如何交换两个杯子里的东西?
程序结构——顺序结构
题目:输入两个数,然后交换这两个数,再输出它们交换后的结果。
(1)分析问题。
要交换两个数,要利用几个变量来保存数据?
程序结构——顺序结构
(2)分析程序的执行步骤,画出流程图。
第一步:输入两个变量a、b的值。
第二步:利用第三个变量c来进行交换,
交换的过程如下:
c=a
a=b
b=c
第三步:输出交换后a、b的值。
2
1
5
开始
结束
3
4
c=a
输入a,b
输出交换后a,b值
a=b
b=c
(3)讲解程序的编写。
2
1
5
开始
结束
3
4
c=a
输入a,b
输出交换后a,b值
a=b
b=c
input()函数返回的是一个字符串数据,所以需将字符串数据转换为整型;
在程序的选择结构中,某些语句会受到条件的制约,根据条件成立与否有选择地执行。
选择结构利用条件语句,通过判断表达式的值(True或False),决定程序执行的分支。常见的两种选择结构为单分支结构和双分支结构,在Python语言中是由if语句实现。
程序结构——选择结构
表达式
语句块
False
True
单分支语句
if 表达式:
语句块
选择判断条件
表达式条件成立,执行语句块;
表达式条件不成立,不执行语句块
表达式后要有冒号“:”,冒号的作用是告诉Python接下来要创建一个语句块。
程序结构——选择结构
输入某学生信息技术考试成绩(0-100),判断是否通过考试。60分及以上则通过考试,输出pass,60分以下输出fail。
例:判断考试是否通过
双分支语句
if 表达式:
语句块1
else:
语句块2
表达式
语句块1
False
True
语句块2
选择判断条件
表达式条件成立,执行语句块1;
表达式条件不成立,执行语句块2
程序结构——选择结构
输入某学生信息技术考试成绩(0-100),判断是否通过考试。60分及以上则通过考试,输出pass,60分以下输出fail。
例:判断考试是否通过
score>=60
True
False
输出“pass”
输出“fail”
例:输入一个正整数,判断它是偶数还是奇数。
(1)分析问题。
提示要判断一个正整数是偶数还是奇数,判断的条件是什么?
例:输入一个正整数,判断它是偶数还是奇数。
第一步:输入一个正整数N;
第二步:判断N是否能被2整除,即判断条件N % 2=0是否成立;
第三步:若判断条件成立,则输出该正整数是偶数,否则输出该正整数是奇数
(2)分析程序的执行步骤,画出流程图。
Python语言用缩进的方式标识语句块,表示语句之间的层次关系。同一级语句块中的语句具有相同的缩进量。
(3)讲解程序的编写。
例:输入一个正整数,判断它是偶数还是奇数。
注意事项
if语句可以嵌套使用,即if语句中的语句块还可以是if语句。
if 表达式1:
语句块1
else :
if 表达式2:
语句块2
else :
语句块3
if 表达式1:
if 表达式2:
语句块1
else :
语句块2
else :
语句块3
BMI值 身体状态
正常
偏瘦
偏胖
if语句可以嵌套使用:BMI指数判断
if语句可以嵌套使用:BMI指数判断
多分支结构
if 表达式1:
语句块1
elif 表达式2 :
语句块2
elif 表达式n:
语句块n
else:
语句块n+1
程序结构——选择结构
某城市轨道交通实行分段计程票价,起步票价为乘坐5站以内(含5站)单人票价2元;乘坐5站以上10站以下(含10站),单人票价3元;乘坐10站以上16站以下(含16站),单人票价4元;乘坐16站以上单人票价5元。
问题:这个案例中有几种情况?分别是什么?
多分支结构案例
多分支结构案例
多分支结构案例
小结与练习
Python
分支结构
单分支结构
双分支结构
多分支结构
Python
顺序结构
If……else…
If…elif…else
If语句
按照自上至下的排列顺序逐条执行
课堂练习
1、若x=10,y=20,则下列程序执行后x,y的值分别是多少?
x=y
y=x
A.10 10 B.10 20
C.20 20 D .20 10
课堂练习
2.下列程序的输出结果是多少?
A=30
A=A+10
A=50
print(A)
课堂练习
3.下列程序的输出结果是多少?
a=40
b=25
if a>b:
a=a+b
print(a)
课堂练习
4.下列程序的输出结果是多少?
a = 25
b = 30
c = 70
if a < b:
a = a+c
else:
a = a-b
print(a)
THANKS