文档详情

Python语言程序设计(第二版) 课件 3-2 选择结构.pptx

发布:2025-04-26约4.59千字共22页下载文档
文本预览下载声明

Python程序设计结构——选择结构

选择结构——选择一条执行又称为分支结构,它根据给定的条件是否满足,决定程序的执行路线,在不同的条件下执行不同的操作。选择结构分单分支,双分支和多分支三种类型。If表达式:语句块If表达式:语句块1else:语句块2If表达式1:语句块1Elif表达式2:语句块2Elif表达式3:语句块3…else:语句n

单分支选择结构格式为:if表达式:语句块注意:(1)if语句的表达式后面必须加冒号。(2)因为Python把非0当成真,0当成假,所以表示条件的表达式不一定必须是结果为True或False的关系表达式或逻辑表达式,可以是任意表达式。?语句块条件FT图3-3单分支结构

例3.8输入两个整数a和b,先输出较大数,再输出较小数。分析:输入a,b;如果ab,则交换a和b,否则不交换;最后输出a,b.程序如下:a,b=eval(input(输入a,b:))ifab:#若ab,交换a和b,否则不交换a,b=b,aprint(a,b)

双分支选择结构其一般格式为:if表达式: 语句块1else: 语句块2?图3-4双分支结构语句块2语句块1条件否是

双分支举例——分段函数例输入x,计算y的值。其中:程序清单如下:x=eval(input(x=))ifx0:y=x+1else:y=2*x-1print(y)

例3.9输入三角形的三个边长,求三角形的面积。分析:设a,b,c表示三角形的三个边长,则构成三角形的充分必要条件是任意两边之和大于第三边,即a+bc,b+ca,a+cb。如果该条件满足,则可按海伦公式计算三角形的面积。程序如下:importmatha,b,c=eval(input(a,b,c=))ifa+bcanda+cbandb+ca: p=(a+b+c)/2 s=math.sqrt(p*(p-a)*(p-b)*(p-c)) print(“area=”,s)else: print(inputdataerror)

多分支选择结构if表达式1: 语句块1elif表达式2: 语句块2elif表达式3: 语句块3……elif表达式n: 语句块n[else: 语句块n+1]

例3.11超市打折某购物超市节日期间举办购物打折扣的促销活动,优惠办法是每位顾客当天一次性购物:在100元以上者,按九五折优惠;在200元以上者,按九折优惠;在300元以上者,按八五折优惠;在500元以上者,按八折优惠。则可以根据顾客购物款数计算出优惠价。x=float(input(输入消费款数:))ifx100: y=xelifx200: y=0.95*xelifx300: y=0.9*xelifx500: y=0.85*xelse: y=0.8*xprint(实际付款为:,y)

例已知某课程的百分制分数mark,将其转换为等级制(优、良、中、及格和不及格)的评定等级grade。评定条件为:成绩在90以上为优秀,80以上且小于90的为良好,70以上且小于80的为中等,60以上且小于70的为及格,60以下为不及格。根据评定条件,给出以下三种不同的实现方法(主要代码片段),供读者分析对错。成绩等级转换

方法一:ifmark=90: grade=优elifmark=80: grade=良elifmark=70: grade=中elifmark=60: grade=及格else: grade=不及格方法二:ifmark=90: grade=优elifmark=80Andmark90: grade=良elifmark=70Andmark80: grade=中elifmark=60Andmark70: grade=及格else: grade=不及格方法三:ifmark=60: grade=及格elifmark=70: grade=中elifmark=80: grade=良elifmark=90: grade=优else: grade=不及格

选择结构的嵌套例如:if表达式1:if表达式2: 语句块1else: 语句块2例如:if表达式1:if表达式2: 语句块1else: 语句块

显示全部
相似文档