第2课 分支结构——让程序会判断课后练习--小学信息科技Python程序设计

资源下载
  1. 二一教育资源

第2课 分支结构——让程序会判断课后练习--小学信息科技Python程序设计

资源简介

/ 让教学更有效 精品试卷 | 信息
第2课 课后练习
(答案版 · 教师用)
班级:____________ 姓名:____________ 得分:__________
一、填空(每空 3 分,共 24 分)
1.在 if 条件: 后面,被控制的语句必须 ______________(缩进 / 顶格)。
2.elif 的意思是 ______________。
3.判断两个数是否相等,要用 ______________( = 还是 == )。
4.判断「a 大于 0 而且 b 大于 0」,应写成 a > 0 ______________ b > 0。
5.判断「a 是 5 或者 a 是 10」,应写成 a == 5 ______________ a == 10。
6.not (a > b) 等价于 a ______________ b。
7.闰年的判断口诀是:四年一闰,__________________,四百年再闰。
8.一个完整的 if / elif / else 语句中,else 最多出现 ______________ 次。
二、判断对错(每题 3 分,共 12 分)
1.if x > 5: 后面的冒号可以省略。(  )
2.if 和 else 的缩进可以不一样,只要程序能运行。(  )
3.多分支中,只要有一路条件成立,后面的分支就不会再执行了。(  )
4.要判断三个数能否构成三角形,只需写一条 a + b > c 就够了。(  )
三、★ 改错题(每题 6 分,共 18 分)
第 1 题 下面的程序想判断成绩是否及格,请指出错误并改正。
score = int(input("请输入成绩:"))
if score >= 60
print("及格")
else
print("不及格")
错误:______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
第 2 题 下面的程序想输出成绩等级,但结果不对。
score = int(input("请输入成绩:"))
if score >= 60:
print("C")
elif score >= 80:
print("B")
elif score >= 90:
print("A")
else:
print("D")
问题:当输入 95 时,程序会输出 ______________,这是错误的。原因是:
______________________________________________________________
______________________________________________________________
正确顺序应该是:____________________________________________________
______________________________________________________________
______________________________________________________________
第 3 题 下面的程序想判断是否为等腰三角形,但对 1、1、5 给出了错误答案。
a = int(input()); b = int(input()); c = int(input())
if a == b or a == c or b == c:
print("等腰三角形")
else:
print("普通三角形")
问题:输入 1、1、5 时程序输出 ______________,但 1、1、5 ____________(能不能)构成三角形。
改正方法:应该在判断等腰之前,先判断 ______________________________。
四、★★ 编程题(每题 10 分,共 20 分)
第 1 题 智能饮料售卖机
饮料机里有三种饮料:1 号——可乐 3 元;2 号——雪碧 3 元;3 号——矿泉水 2 元。用户先选饮料编号,再输入投入的钱数。程序判断:
· 钱不够 → 输出「钱不够,无法购买。」
· 钱刚好 → 输出「购买成功,请取走饮料。」
· 钱多了 → 输出「购买成功,找零 X 元。」
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
第 2 题 成绩等级
输入一个成绩(0~100),按下列规则输出等级:90 及以上 → A;80~89 → B;60~79 → C;60 分以下 → D。
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
五、★★★ 挑战题(16 分)
输入年份和月份,输出这个月有多少天。
规则:1、3、5、7、8、10、12 月有 31 天;4、6、9、11 月有 30 天;2 月闰年 29 天、平年 28 天。
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
自测数据(做完后请自己验证):
年 份 月 份 应有天数
2024 2 29
2023 2 28
2000 2 29
1900 2 28
教师评语:
__________________________________________________________________
__________________________________________________________________
第 2 课 参考答案(教师用)
与《教师参考答案》册同源,全部数值均已实际运行核验
一、填空
1.缩进 2.否则如果(前面所有条件都不成立时再判断这一条) 3.==
4.and 5.or 6.<=(not (a > b) 等价于 a <= b)
7.百年不闰 8.1(一个 if/elif/else 里 else 最多一次,且必须放最后)
二、判断对错
1.  冒号不能省
2.  同一层的 if / elif / else 必须对齐,缩进错了要么报错要么逻辑跑偏
3.  4.  三条不等式都要写:a + b > c and a + c > b and b + c > a
三、★ 改错题
第 1 题 缺冒号、缺缩进。改正:
score = int(input("请输入成绩:"))
if score >= 60:
print("及格")
else:
print("不及格")
第 2 题 输入 95 会输出 C。
原因:多分支从上往下判断,score >= 60 先成立,95 被它拦住,后面的 >= 80、>= 90 根本没机会判断。
正确顺序应从高到低:>= 90 → A,>= 80 → B,>= 60 → C,else → D。
第 3 题 输入 1、1、5 会输出「等腰三角形」,但 1+1 = 2 < 5,不能构成三角形。
改正:先判断 a + b > c and a + c > b and b + c > a,满足才继续判断是等腰还是普通,否则输出「不能构成三角形」。
四、★★ 编程题
第 1 题 智能饮料售卖机:
num = int(input("请选择饮料(1可乐 2雪碧 3矿泉水):"))
money = int(input("请输入投入的钱:"))
if num == 1 or num == 2:
price = 3
else:
price = 2
if money < price:
print("钱不够,无法购买。")
elif money == price:
print("购买成功,请取走饮料。")
else:
print(f"购买成功,找零{money - price}元。")
第 2 题 成绩等级:见 第二课/1成绩等级.py。
五、★★★ 挑战题
year = int(input("请输入年份:"))
month = int(input("请输入月份:"))
if month in (1, 3, 5, 7, 8, 10, 12):
days = 31
elif month in (4, 6, 9, 11):
days = 30
else:
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
days = 29
else:
days = 28
print(f"{year}年{month}月有{days}天")
自测:2024/2 → 29 2023/2 → 28 2000/2 → 29 1900/2 → 28(1900 年不是闰年,这是「百年不闰」的关键考点)。
若学生还没学 in,可写成 month == 1 or month == 3 or ...。
21世纪教育网 www.21cnjy.com 精品试卷·第 2 页 (共 2 页)
21世纪教育网(www.21cnjy.com)/ 让教学更有效 精品试卷 | 信息
第2课 课后练习
(学生用)
班级:____________ 姓名:____________ 得分:__________
一、填空(每空 3 分,共 24 分)
1.在 if 条件: 后面,被控制的语句必须 ______________(缩进 / 顶格)。
2.elif 的意思是 ______________。
3.判断两个数是否相等,要用 ______________( = 还是 == )。
4.判断「a 大于 0 而且 b 大于 0」,应写成 a > 0 ______________ b > 0。
5.判断「a 是 5 或者 a 是 10」,应写成 a == 5 ______________ a == 10。
6.not (a > b) 等价于 a ______________ b。
7.闰年的判断口诀是:四年一闰,__________________,四百年再闰。
8.一个完整的 if / elif / else 语句中,else 最多出现 ______________ 次。
二、判断对错(每题 3 分,共 12 分)
1.if x > 5: 后面的冒号可以省略。(  )
2.if 和 else 的缩进可以不一样,只要程序能运行。(  )
3.多分支中,只要有一路条件成立,后面的分支就不会再执行了。(  )
4.要判断三个数能否构成三角形,只需写一条 a + b > c 就够了。(  )
三、★ 改错题(每题 6 分,共 18 分)
第 1 题 下面的程序想判断成绩是否及格,请指出错误并改正。
score = int(input("请输入成绩:"))
if score >= 60
print("及格")
else
print("不及格")
错误:______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
第 2 题 下面的程序想输出成绩等级,但结果不对。
score = int(input("请输入成绩:"))
if score >= 60:
print("C")
elif score >= 80:
print("B")
elif score >= 90:
print("A")
else:
print("D")
问题:当输入 95 时,程序会输出 ______________,这是错误的。原因是:
______________________________________________________________
______________________________________________________________
正确顺序应该是:____________________________________________________
______________________________________________________________
______________________________________________________________
第 3 题 下面的程序想判断是否为等腰三角形,但对 1、1、5 给出了错误答案。
a = int(input()); b = int(input()); c = int(input())
if a == b or a == c or b == c:
print("等腰三角形")
else:
print("普通三角形")
问题:输入 1、1、5 时程序输出 ______________,但 1、1、5 ____________(能不能)构成三角形。
改正方法:应该在判断等腰之前,先判断 ______________________________。
四、★★ 编程题(每题 10 分,共 20 分)
第 1 题 智能饮料售卖机
饮料机里有三种饮料:1 号——可乐 3 元;2 号——雪碧 3 元;3 号——矿泉水 2 元。用户先选饮料编号,再输入投入的钱数。程序判断:
· 钱不够 → 输出「钱不够,无法购买。」
· 钱刚好 → 输出「购买成功,请取走饮料。」
· 钱多了 → 输出「购买成功,找零 X 元。」
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
第 2 题 成绩等级
输入一个成绩(0~100),按下列规则输出等级:90 及以上 → A;80~89 → B;60~79 → C;60 分以下 → D。
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
五、★★★ 挑战题(16 分)
输入年份和月份,输出这个月有多少天。
规则:1、3、5、7、8、10、12 月有 31 天;4、6、9、11 月有 30 天;2 月闰年 29 天、平年 28 天。
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
自测数据(做完后请自己验证):
年 份 月 份 应有天数
2024 2 29
2023 2 28
2000 2 29
1900 2 28
教师评语:
__________________________________________________________________
__________________________________________________________________
21世纪教育网 www.21cnjy.com 精品试卷·第 2 页 (共 2 页)
21世纪教育网(www.21cnjy.com)

展开更多......

收起↑

资源列表