课时4 分支结构及程序实现 课时目标 1.理解分支结构的执行过程。2.掌握分支结构的三种if语句格式的使用。3.能根据实际问题选用合适的分支结构来解决。 1.选择结构通过判断某些特定条件是否满足来决定下一步的执行流程,常见的有单分支选择结构、双分支选择结构、多分支选择结构。 2.一个选择结构是一个语句块,块内的语句一般缩进4个空格。在Python中对缩进有严格要求,可以根据缩进来判断语句的从属关系。 3.选择语句条件表达式结果的数据类型是逻辑型,值只有True和False两个。 4.算法进行程序实现时,分支结构可用if语句来实现。 if语句一般格式是: (1)单分支选择结构 if <条件>: <语句块1> (2)双分支选择结构 if<条件>: <语句块1> else: <语句块2> (3)多分支选择结构 if <条件1>: <语句块1> elif <条件2>: <语句块2> … elif <条件N>: <语句块N> else: <语句块N+1> ①语句块是一行或放在一起的多行语句,一般通过行缩进来标识if、else、elif下方的语句块必须采用相同的缩进。 ②分支结构的条件只判断一次,符合条件的语句块也只执行一次。 例1 调查发现人们更倾向于选择数字对称的车牌号,如车牌号“浙H64M46”。于是小石编写了一个判断车牌号是否对称的代码,Python程序如下: cp=input("请输入车牌号(格式如“浙H64M46”):") s1=cp[2:4] s2=① if② : print("不是对称车牌") else: print("是对称车牌") 为实现功能,划线处代码应为 ( ) A.①cp[6:5:-1] ②s1==s2 B.①cp[5:] ②s1!=s2 C.①cp[5:6] ②s1==s2 D.①cp[:-3:-1] ②s1!=s2 答案 D 解析 本题考查字符串的切片。语句s1=cp[2:4]取字符串中索引位置2和3的字符。若要对称,则对应取cp索引位置为6和5的值。A选项索引位置5取不到。B选项不能正向取。C选项只能取一个字符。D选项当步长为负值时,第一个参数默认为-1,即字符串cp中最后一个索引位置,-3是取不到的,只能取了倒数第2个。 变式训练1 有下列Python程序段: import random s=input("请输入字符串:") x=random.randint(3,6) #产生一个[3,6]之间的随机整数 n=len(s) if len(s[0:x])=5,通过对选项的处理可知A选项中hel后置,x的值为3,可行;B选项hell后置,x的值为4,符合条件,可行;C选项不改变顺序,x>=5,可行;D选项hello后置,可得x=5,而x=5时应执行第二个分支的语句。 例2 用Python算法控制结构描述“您所在街道25分钟后小雨,50分钟后雨停”,设t为距离天气预报发布时间的间隔(单位:分钟),下列选项正确的是 ( ) 答案 A 解析 本题考查选择结构。根据时间t,分成三个阶段。t<=25没有任何操作,25和50之间是小雨,50之后是雨停。B选项只能表示两种情况。C选项把t<=25归结为雨停。D选项若t>50,肯定满足条件t>25,因此只能表示一种情况。 变式训练2 某市“一户一表”水费单价标准如下:第一档次:每户每月不超过17立方米的用水量,供水价格为2.4元/立方米;第二档次:每户每月17立方米(不含)到30立方米(含)的用水量,供水价格比第一档提高0.5倍;第三档次:每户每月超过30立方米的用水量,供水价格比第一档提高2倍。根据水费单价标准,用Python算法控制结构描述“第二、三档次的供水价 ... ...
~~ 您好,已阅读到文档的结尾了 ~~