资源简介 (共25张PPT)第6课多分支结构程序设计知识回顾2分支结构if <条件> :<语句块1>else:<语句块2>认识多分支结构3TrueFalse图书馆学校商场认识多分支结构4图书馆学校商场认识多分支结构5在选择情况较多时,我们可以使用多分支结构去解决问题。多分支结构6给出一个百分制成绩,要求输出成绩等级A、B、C、D和E。90分以上为A,80~89为B,70~79为C,60~69为D,60分以下为E。嵌套if - elif 条件语句7if <条件1>:<语句块1>elif <条件2>:<语句块2>...elif <条件n>:<语句块n>else:<语句块n+1>if - elif 条件语句8给出一个百分制成绩,要求输出成绩等级A、B、C、D和E。90分以上为A,89~80为B,79~70为C,69~60为D,60分以下为E。# 百分制转换成A~E等级制score = float(input('请输入成绩(0-100):'))if score>=90:print('A')elif score>=80:print('B')elif score>=70:print('C')elif score>=60:print('D')else:print('E')if score>=90:print('A')else:if score>=80:print('B')else:if score>=70:print('C')else:if score>=60:print('D')else:print('E')求最大的数——问题分析9比较三个数a、b、c,输出其中最大的数。abc如何找出三个数中的最大数?请同学们尝试使用自然语言进行描述。求最大的数——算法设计输入:输入三个数a、b、c处理:如果a大于b和c,则a最大否则如果b大于c,则b最大否则c最大输出:输出最大数求最大的数——编写代码11# 找出三个数中最大的数a = float(input('第1个数:'))b = float(input('第2个数:'))c = float(input('第3个数:'))if a>b and a>c:print('三个数中最大数为', a)elif b>c:print('三个数中最大数为', b)else:print('三个数中最大数为', c)亲身体验12比较三个数a、b、c,输出其中最小的数。先用自然语言描述一下执行过程,然后试着在纸上绘制流程图,再编写程序代码,调试运行。13开动脑筋你还有其它方法找出三个数中的最大数或最小数吗?想一想并动手试试看!能否使用多分支结构,找出n(n≥10)个数中的最大数?1、取一变量max,将最大值赋给max2、使用max()函数3、使用列表存放三个数,再用max()函数4 简易计算器14(1)问题分析(2)算法设计(3)编写代码(4)调试运行编写程序,实现算术四则运算的简易计算器功能。4.1 问题分析151+1= 2运算数:x运算数:y运算符:op运算结果:c4.2 算法设计16自然语言描述:输入数据:x、 y、 op 输出数据:运算结果c输入:处理:输出:数字x、数字y、 运算符号op(+、-、*、/)根据输入的运算符号执行运算操作输出运算结果4.3 代码编写# 简易计算器(四则运算)x = float(input('请输入第一个运算数:'))y = float(input('请输入第二个运算数:'))op = input('请输入运算符(+-*/):')c = 0if op=='+':c = x + yprint('运算结果为:', c)elif op=='-':c = x - yprint('运算结果为:', c)elif op=='*':c = x * yprint('运算结果为:', c)elif op=='/':c = x / yprint('运算结果为:', c)else:print('运算符输入有误!')174.4 调试运行elif op=='/':if y!=0:c = x / yprint('运算结果为:', c)else:print('除数不能为零!')18保存文件后,按F5运行程序。# 简易计算器(四则运算)x = float(input('请输入第一个运算数:'))y = float(input('请输入第二个运算数:'))op = input('请输入运算符(+-*/):')c = 0if op=='+':c = x + yprint('运算结果为:', c)elif op=='-':c = x - yprint('运算结果为:', c)elif op=='*':c = x * yprint('运算结果为:', c)elif op=='/':c = x / yprint('运算结果为:', c)else:print('运算符输入有误!')4.5 程序修改19# 简易计算器(四则运算)x = float(input('请输入第一个运算数:'))y = float(input('请输入第二个运算数:'))op = input('请输入运算符(+-*/):')c = 0if op=='+':c = x + yprint('运算结果为:', c)elif op=='-':c = x - yprint('运算结果为:', c)elif op=='*':c = x * yprint('运算结果为:', c)elif op=='/':if y!=0:c = x / yprint('运算结果为:', c)else:print('除数不能为零!')else:print('运算符输入有误!')异常20异常处理21try/except语句格式:try:<正常时执行语句块>except:<异常时执行语句块>try:c = x / yprint('运算结果为:', c)except:print('除数不能为零!')异常处理演示22# 简易计算器(四则运算)x = float(input('请输入第一个运算数:'))y = float(input('请输入第二个运算数:'))op = input('请输入运算符(+-*/):')c = 0if op=='+':c = x + yprint('运算结果为:', c)elif op=='-':c = x - yprint('运算结果为:', c)elif op=='*':c = x * yprint('运算结果为:', c)elif op=='/':try:c = x / yprint('运算结果为:', c)except:print('除数不能为零!')else:print('运算符输入有误!')# 简易计算器(四则运算)x = float(input('请输入第一个运算数:'))y = float(input('请输入第二个运算数:'))op = input('请输入运算符(+-*/):')c = 0if op=='+':c = x + yprint('运算结果为:', c)elif op=='-':c = x - yprint('运算结果为:', c)elif op=='*':c = x * yprint('运算结果为:', c)elif op=='/':if y!=0:c = x / yprint('运算结果为:', c)else:print('除数不能为零!')else:print('运算符输入有误!')课堂总结23try/except语句格式:try:<正常时执行语句块>except:<异常时执行语句块>异常处理多分支结构if <条件1>:<语句块1>elif <条件2>:<语句块2>...elif <条件n>:<语句块n>else:<语句块n+1># 输入名次mc=int(input('参加运动会项目名次(1-6):'))# 计算并输出得分if mc==1:print('得分为:7分')elif mc==2:print('得分为:5分')elif mc==3:print('得分为:4分')elif mc==4:print('得分为:3分')elif mc==5:print('得分为:2分')elif mc==6:print('得分为:1分')else:print('输入的名次不在1-6范围!')随堂练习1. 学校运动会比赛取前六名成绩,其中第一名得7分,第二名得5分,第三名得4分,第四名得3分,第五名得2分,第六名得1分。24# 输入名次mc = int(input('参加运动会项目名次(1-6):'))# 利用列表,计算得分lst = [7,5,4,3,2,1]if mc>=1 and mc<=6:df = lst[mc-1]print('项目得分为:', df)else:print('输入的名次不在1-6范围!')随堂练习2. 在程序划线处填空,利用列表实现相同的功能。25可以使用try/expect语句来改写程序代码吗?怎么修改? 展开更多...... 收起↑ 资源预览