中小学教育资源及组卷应用平台
第四章第二节运用顺序结构描述问题求解
过程课后练习
1、在程序设计中,主要使用条件语句(if语句)来实现(
)
A.开始与结束
B.执行
C.判断与选择
D.输入与输出
2、在python中,使用if语句编写程序时,if(条件表达式)、elif(条件表达式、else后面加(
)是其基本格式。
A.逗号
B.冒号
D.分号
D.引号
3、若输入的a、b、c为10,8,21判断如下程序的运行结果(
)
print(“请输入3个数”)
a=int(input(“a=”))
b=int(input(“b=”))
c=int(input(“c=”)
if
am=a
else:
m=b
if
c>m:
m=c
print(m)
A.10
B.8
C.21
D.无输出
4、字符串方法.split(
)方法的返回结果是(
)
A.字典
B.元组
C.字符串
D.列表
5、python支持批量赋值,下列语句a,b,c=[15,20,35],则b的值为(
)
A.15
B.20
C.35
D.空
6、请编写一个判断一个正整数为奇数或者偶数的程序。
7、依法纳税是每一个公民应尽的义务。同学们上网学习2018年8月31日第七次修正的《中华人民共和国个人所得税法》,了解居民个人应纳税所得额的含义和个人所得税税率表(综合所得适用),试设计一个程序计算以下人员应缴个人所得税额。
参考答案:1.C
2.B
3.C
4.D
5.B
6.n=int(input(“请输入一个正整数:”))
if
n%2==0:
print(“该数是一个偶数”)
else:
print(“该数是一个奇数”)
7.print(“欢迎来到个人所得税计算系统”)
x=eval(input(“请输入您的全年应纳税所得额”)
if
x<=36000:
y=x
3%
elif
36000<
x<=144000:
y=x
10%
elif
144000y=x
20%
elif
300000y=x
20%
elif
420000y=x
30%
elif
660000y=x
35%
elif
x>960000:
y=x
45%
else:
print(“输入错误”)
print(“您应缴个人所得税额为:”,y)
21世纪教育网
www.21cnjy.com
精品试卷·第
2
页
(共
2
页)
HYPERLINK
"http://21世纪教育网(www.21cnjy.com)
"
21世纪教育网(www.21cnjy.com)(共23张PPT)
运用选择结构描述问题求解过程
单分支if语句
双分支if语句
If语句的嵌套
If…elif…else语句
01
02
03
04
目录
CONTENTS
if语句的运用
在程序设计中,主要使用条件语句(if语句)来实现判断和选择。if语句在使用中包括单分支if语句和双分支if语句。
1.单分支if语句
单分支if语句的格式:
if
(条件表达式):
语句A
单分支if语句流程图表示
使用单分支if语句的注意事项
①if(条件表达式)后面加冒号“:”;
②当语句A是由多个语句构成的复合语句时,所有语句严格遵循相同的缩进。
单分支if语句的执行过程
根据其流程图:如果条件表达式为真,则执行语句A,然后继续往下执行;如果条件表达式为假,则不执行语句A,然后继续往下执行。
案
例
项目小组成员在某购物网站上了解到某种笔记本搞优惠活动,规定一次购买6本以上(含6本)10本以下(含10本)打九折,一次购买11本以上(含11本)打八折。怎样根据笔记本的单价和购买数量编写程序计算总费用?
思
思考:你如何解决这个问题,描述其解决过程。
分析问题
设项目小组购买笔记本的数量为s本,笔记本的单价为p元,折扣系数为j,总费用为t。根据题意,有:
如果s<6,则j=1.0;
如果6≤s≤10,则j=0.9;
如果s≥11,则j=0.8;
又t=s×p×j,求出t的值即为所求的总费用。
此时,还需要确定s的数据类型为整型、p的数据类型为浮点型,j的数据类型为浮点型,t的数据类型也为浮点型。
设计算法
解决问题的算法描述如下:
①输入s,p的值;
②如果s<6,则j=1.0;
③如果6≤s≤10,则j=0.9;
④如果s≥11,则j=0.8;
⑤t=s×p×j;
⑥输出t的值;
网购笔记本的金额计算流程图
编写程序、调试程序
根据设计的算法,写出解决问题的程序
s=input("请输入购买的笔记本的数量(多少本):")
s=int(s)
p=float(input("请输入笔记本的单价(每本多少元):"))
if
s<6:
j=1.0
if
s>=6
and
s<=10:
j=0.9
if
s>=11:
j=0.8
t=s
p
j
print("总费用为:","%.1f"%t,"元")
调试运行,结果如图所示:
小试牛刀:猜数字游戏
利用单分支结构编写一个10以内的整数猜数字游戏,根据用户的输入提示(输入的)数字大了、小了,或者猜对了。
根据以上案例,写出你自己的猜数字游戏,和你的同桌一起玩。
2.双分支if语句
单分支if语句的格式:
if
(条件表达式):
语句A
Else:
语句B
双分支if语句的流程图表示
在使用双分支if语句时需要注意:
①if(条件表达式)后面加冒号“:”;②当语句A和语句B是由多个语句构成的复合语句时,所有语句严格遵循相同的缩进。
案
例
项目小组成员在某购物网站上看到三种笔记本的优惠价各不相同,笔记本1、笔记本2和笔记本3每本分别优惠价为a元、b元和c元,编程输出其优惠价的最大值。
分析问题
对于输入的三个数a,b,c,设其中的最大数为m,先找出a和b中较大的数赋给m,然后将m与c比较,从而找出三个数中最大的数。
设计算法
解决问题的算法描述如下:
①输入三个数a,b,c;
②如果a>b,则m=a;否则m=b;
③如果c>m,则m=c;
④输出m的值;
⑤结束。
编写程序、调试程序
print("请输入三种笔记本的优惠价(元):")
a,b,c=input(
).split(
)
a=float(a)
b=float(b)
c=float(c)
if
a>b:
m=a
else:
m=b
if
c>m:
m=c
print("优惠价最大的为:",m,"元")
split(
)方法的运用
?split()?是python中的一种字符串方法,通过指定分隔符对字符串进行切片。
split()
方法语法:
str.split(str=“
",
num=string.count(str))
参数:
str
--
分隔符,默认为所有的空字符,包括空格、换行(n)、制表符(t)等。
num
--
分割次数。默认为
-1,
即分隔所有。
str
=
"this
is
string
example
wow!!!“
x
=
str.split()
print(x)
输出:['this',
'is',
'string',
'example',
'wow!!!']
注意:返回的结果是列表
3.if语句的嵌套
If
语句允许嵌套,即if语句中的语句A和语句B还可以是if语句。
为快递计费设计一个收费简化程序,其收费情况如下:物件的重量小于3公斤(包含),广东地区收费12元,其他地区20元,物件的重量大于3公斤,超出部分广东3元/公斤,其他地区5元/公斤。请设计算法,并画出流程图
快递计费系统简化程序
if…elif…else语句的应用
应用if条件语句可以快速地实现程序的分支选择,但当分支比较多时,用if...elif...else语句来实现比较简便。
(1)if...elif...else语句格式如下:
if
(表达式1):
语句1
elif
(表达式2):
语句2
……
elif
(表达式N):
语句N
else:
语句N+1
(2)if...elif...else语句的执行过程。
if...elif...else语句的执行过程
案
例
老师需要为每个同学的期末考试成绩赋值等级,根据输入的分数判定不同的等级,90分及以上为A,80-90分为B,70-80为C,60-70为D,60分一下为不及格。你能用if…elif…else语句帮她写出程序吗?
设计算法
根据分析,可设成绩值为g,对g进行比较运算,输出不同的等级。
①输入成绩值g;
②如果g大于等于90小于等于100,输出成绩等级为A;
③如果g大于等于80小于90,输出成绩等级为B;
④如果g大于等于70小于80,输出成绩等级为C
;
⑤如果g大于等于60小于70,输出成绩等级为D;
⑥如果g大于等于0小于60,输出成绩等级为不及格;
⑦否则输出输入错误;
⑧结束。
程序调试运行结果
阅读教材p81页思考题(尽可能多的购买笔记本方案),你能写出相应的程序,并尝试找出程序中存在的问题吗?
讨论实践
根据教材p83页三名同学为判断某年是否为闰年编写的程序,进行相应的调试运行和实践操作,谈一谈三个程序分别采用不同的表达式作为判断条件,哪一种程序更好,为什么?
谢
观看
谢
https://www.21cnjy.com/help/help_extract.php