题目2(实操题)
题干:用户输入年龄,如果年龄超过60岁,输出:“可以退休了”, 否则,输出:“小伙子,加油干!”
训练目标
if…else语法
训练提示
题目描述了2种情况(年龄超过60岁和不超过60岁),涉及到2中情况需要判断的时候,使用哪种if语句格式?
参考方案
在Python中,能够判断两种情况的时候需要使用if…else…
语句。
操作步骤
input()
接收用户输入的年龄,并转换数据类型为int;- 如果用户输入的年龄大于60,则输出"可以退休了"; 条件不成立则输出:小伙子,加油干!
参考答案
age = int(input("请输入年龄:"))
if age >= 60:
print("恭喜您退休了!")
else:
print("继续为祖国做贡献")
题目3(实操题)
题干
用户输入年龄,按照如下标准书写程序,判断用户处于哪个年龄阶段,并提示:您的年龄是xx: 青少年/青年/中年/老年。
年龄段划分标准:0-17岁为青少年;18-35岁为青年;36-59为中年,60-99岁为老年。
训练目标
- elif多重判断写法;
- 逻辑运算符的使用方法。
训练提示
- 本题中年龄段分为青少年、青年、中年、老年四种情况需要判断,在Python中,判断多种情况需要使用哪种if语句格式?
- 每个年龄段有最低和最高年龄限制,使用哪种运算符能完成对最低和最高年龄同时判断?
参考方案
- 在Python中,判断多种情况需要使用elif多重判断写法;
- 对每个年龄段的最低和最高年龄同时限制,需要使用逻辑运算符中的
and
。
操作步骤
input()
接收用户输入的年龄,并转换数据类型为int;if…elif
对不同的年龄段进行判断。
参考答案
age= int(input("请输入年龄:"))
a1 = 0 <= age < 18
a2 = 18 <= age < 36
a3 = 36 <= age < 60
a4 = 60 <= age < 100
if a1:
print("您的年龄是:青少年")
elif a2:
print("您的年龄是:青年")
elif a3:
print("您的年龄是:中年")
elif a4:
print("您的年龄是:老年")
题目4(实操题)
题干
坐公交:假设坐公交需要买票上车,书写程序要求如下:
1. 如果有票则可以上车,否则不能上车
2. 上车后,如果有座位可以坐下,否则不能坐下。
已有程序如下,请补全程序:
# ticket取值为1表示有票,取值为0表示无票
ticket = 1
# seat取值为1表示有票,取值为0表示无票
seat = 1
训练目标
if嵌套书写方法
训练提示
本题判断流程如下:判断能上车后,才能判断是否能坐下,如何书写程序完成这种判断流程?
参考方案
当ticket == 1
条件成立的时候才判断是否能坐下,所以这里是if嵌套的写法
操作步骤
- 书写ticket是否和1相等,如果条件成立表示可以上车;否则不能上车;
- 当
ticket == 1
条件成立的时候,书写判断能否坐下的if语句。
参考答案
ticket = 1
seat = 1
# 待补全的程序如下
if ticket == 1:
print('有票,请上车')
if seat == 1:
print('有空座,坐下睡觉')
else:
print('没座位,站着睡')
else:
print('没票,补票后才能上车')
题目5(实操题)
题干
制作用户登录系统:已知A用户注册的用户名为aaa
,密码是123456
。具体要求如下:
登录时需要验证用户名、密码、验证码(固定验证码为qwer
)。
提示:系统先验证验证码是否正确,正确后再验证用户名和密码。
训练目标
- if…else语句格式
- 比较运算符
==
和 逻辑运算符 - if嵌套语句格式
训练提示
- 如何书写程序可以先验证验证码的正确性,验证码正确后再验证用户名和密码?
- 如何判断用户输入的验证码的正确性?
- 如何判断用户名和密码的正确性?
参考方案
- 先判断验证码的正确性,再验证用户名和密码,需要使用if嵌套写法;
- 判断用户输入的验证码/用户名/密码的正确性要使用到比较运算符
==
。 - 登录功能要求用户名和密码必须同时正确,所以这里要使用到逻辑运算符
and
。
操作步骤
- 准备用户名、密码、验证码等数据;
- 用户输入用户名、密码、验证码;
- 判断验证码是否为
qwer
; - 如果验证码为
qwer
,再验证用户名和密码的正确性。
参考答案
# 用户名、密码、验证码数据
sys_name = 'aaa'
sys_pwd = '123456'
sys_code = 'qwer'
# 用户输入用户名、密码、验证码
user_name = input('请输入用户名:')
user_pwd = input('请输入密码:')
user_code = input('请输入验证码:')
if user_code == sys_code:
print('验证码正确')
if user_name == sys_name and user_pwd == sys_pwd:
print('恭喜您,登录成功')
else:
print('用户名或密码错误,请重新输入')
else:
print('验证码错误,请重新输入')
题目6 (实操题)
题干:
编写一段代码,要求依次输入语文、数学、英语三门课的成绩(输入范围0到100),
如果三门成绩的平均分小于60,打印"不及格",
如果平均分大于90, 打印优秀,
其他则打印"良"。
训练目标
- 获取用户输入 input 函数,以及数据类型的转换
- 算术运算符的使用
- if判断语句的使用
训练提示
- 定义变量接收用户的输入(input)的成绩,并将获取到的数据转换成int类型
- 三门成绩先相加在取平均值
- 判断
参考步骤
- 定义三个变量分别获取用户输入的三门成绩,并使用int函数将数据转换成int类型
- 三门成绩先求总和(+), 再 除以 3去平均成绩(总成绩/3)
- 判断平均成绩是属于 不及格、优秀、良 并打印出结果
参考答案
n1 = int(input("请输入语文成绩:"))
n2 = int(input("请输入数学成绩:"))
n3 = int(input("请输入英语成绩:"))
average = (n1+n2+n3)/3
if average < 60:
print("不及格")
elif average >= 90:
print("优秀")
else:
print("良")
题目7 (实操题)
题干
编写一段代码,需要输入要一个有效年份,判断该年份是否是闰年,如果是闰年,则打印“xx年是闰年”;否则打印“xx年不是闰年”
如输入"2019",将打印“2019年不是闰年”
提示:闰年年份是能被4整除,但不能被100整除的;或者能被400整除的年份,如1900年能被4整除,但是也能被100整除,所以不是闰年,而2000虽然既能被4整除又能被100整除,但是2000能被400整除,所以是闰年。
训练目标
- 判断的使用
- 算数运算符和逻辑运算符的使用
训练提示
- 怎么获取用户的输入,获取到的数据是什么类型?是否可以直接用于计算?
- 当满足什么条件的使用是闰年?
参考步骤
- 先获取用户输入的年份,并转化成整数类型,使用变量进行存储
- 判断用户输入的年份,如果能被4整除,但不能被100整除的;或者能被400整除的年份是闰年,否则就不是闰年
year = int(input("请输入年份:"))
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
print("%d年是闰年" % year)
else:
print("%d年不是闰年" % year)
题目8 (实操题)
题干:
输入一个人的身高(m)和体重(kg),根据BMI公式(体重除以身高的平方)计算他的BMI指数。
- 例如:一個52公斤的人,身高是155cm,则BMI为 :
52(kg)/1.55^2(m)= 21.6
- BMI指数:
低于18.5:过轻
18.5-25:正常
25-28:超重
28-32:肥胖
高于32:严重肥胖
训练目标
- 运算符的使用;
- 判断的使用
参考步骤
- 获取用户输入的身高和体重
- 根据 BMI 公式计算出该用户的 BMI 指数
- 判断该用户的 BMI 指数属于哪一个等级
参考答案
h = float(input("请输入您的身高(m):"))
w = float(input("请输入您的体重(kg):"))
bmi = w/(h*h)
if bmi >= 32:
print('您的BMI指数为:%.1f,严重肥胖' % bmi)
elif bmi <= 18.5:
print('您的BMI指数为:%.1f,过轻' % bmi)
elif 18.5 <= bmi < 25:
print('您的BMI指数为:%.1f,正常' % bmi)
elif 25 <= bmi < 32:
print('您的BMI指数为:%.1f,肥胖' % bmi)