跳转到内容

Python 选择结构习题集

Python 选择结构(if/elif/else)编程填空题汇总(含答案),共 39 题,涵盖基础判断、取余判断、比较运算符、逻辑运算符、闰年判断、最大最小值、成绩等级判定、登录验证、阶梯收费、游戏逻辑等题型。

最近更新

信息技术中考复习最后一课

基础判断

题目 1

从键盘任意输入两个整数,如果二个数相同计算两数和,否则计算两数差,并输出:

a=int(input("请输入数值1:"))
b=int(input("请输入数值2:"))
if a==b:
c=a+b
① :
c=a②
print(c)
答案

① else ② -b

题目 2

筛选不合格的零部件。根据输入的直径判断部件是否合格。标准:直径在 99.99~100.01 毫米之间(包括边界)为合格:

d=float( ① ("请输入精密零部件的直径:"))
if d>=99.99 ② d<=100.01:
print("该精密部件为:合格")
else:
print("该精密部件为:不合格")
答案

① input ② and

题目 3

英语成绩等级,A 级为 90 分以上(含 90 分),B 级为 80~90 分,C 级为 70~80 分,D 级为 60~70 分,E 级为 60 分以下:

a=int(①("请输入英语成绩:"))
if a>=90:
print("A")
② a>=80:
print("B")
elif a>=70:
print("C")
elif a>=60:
print("D")
else:
print("E")
答案

① input ② elif

题目 4

根据小丽的分数评定奖项(一等奖≥90,二等奖≥80,三等奖≥60):

score = int(input("请输入小丽的分数:"))
if score ①90:
print("恭喜你获得一等奖!")
elif score >= 80:
print("恭喜你获得二等奖!")
elif score >= 60:
print("恭喜你获得三等奖!")
②:
print("请努力学习,争取下次获奖!")
答案

① >= ② else

题目 5

输入学生的 BMI 指数,<18.5 输出“消瘦”,18.5~23.9 输出“正常”,≥24 输出“超重”:

zs=float(①("请输入你的BMI指数:"))
if zs<18.5:
print("你的体质为:消瘦")
elif zs<=23.9:
print("你的体质为:正常")
②:
print("你的体质为:超重")
答案

① input ② else

题目 6

输入天气温度,选择不同的交通工具上学(15℃及以下公交车,30℃及以下骑自行车,40℃及以下私家车,40℃以上在家休息):

wd=float(①("请输入今天天气温度:"))
if wd<=15:
print("乘坐公交车")
elif wd<=30:
print("骑自行车")
elif wd<=40:
print("乘坐私家车")
② :
print("在家休息")
答案

① input ② else

题目 7

x>3 时 y=2x,否则 y=3x+1:

x=int(input())
if ①:
y=2*x
②:
y=3*x+1
print(y)
答案

① x>3 ② else

题目 8

补全程序,判断密码是否正确:

n = ①("请输入密码:")
if n == "123asd":
print("密码正确")
②:
print("密码不正确")
答案

① input ② else

题目 9

每年 3 月 5 日为学雷锋活动纪念日,输入日期,输出回答正误:

day = "3月5日"
rq = input("请输入日期(X月X日):")
if rq ① day:
print("回答正确")
②:
print("对不起答错了!再想想!")
答案

① == ② else

题目 10

输入两个数值,如果两个数相等,则计算两个数的乘积,如果不相等,则计算两个数的和:

a = int(input("请输入a的值:"))
b = int(input("请输入b的值:"))
if a ① b:
c = a * b
else:
c = a + b
②(c)
答案

① == ② print

题目 11

一位整数数字解密,加密数字是 m,解密后变成 n。解密规则:0→1、1→2、…、8→9、9→0:

m = int(input("请输入需要解密的一位整数:")) # 数字范围 0~9
① m == 9:
n = 0 # 数字9的解密
else:
n = m + 1 # 数字 0~8 解密后增加1
print(②) # 输出解密数字
答案

① if ② n

题目 12

输入用户名和密码并进行验证:

name=input("请输入用户名:")
passwd= ① ("请输入密码:")
② name=="admin" and passwd=="#T123":
print("信息正确")
else:
print("信息不正确")
答案

① input ② if

题目 13

闯关游戏,r 为 0 时闯关成功,否则继续努力:

n = int(input("输入已闯关数"))
r = int(input("输入r的值"))
if r == 0:
print("闯关成功")
①:
m ② # 将 n 赋值给 m
print("继续努力", m)
答案

① else ② =n

多个分支(if-elif-else)

题目 14

某路段限行 40 公里,如果超过 60 公里将被认定超速同时被罚款:

x = int(①("请输入速度:"))
if x <= 40:
print('该路段限速40,请注意慢行!')
elif 40 < x < 60:
print("你已超速请慢行!")
②:
print('你已超速,将被记录并罚款!')
答案

① input ② else

题目 15

判断一个数是正数、负数还是零:

a = ①(input("请输入一个数a:"))
if a > 0:
print("a是一个正数")
elif a < 0:
print("a是一个负数")
②:
print("a等于0")
答案

① float(或 int) ② else

题目 16

根据成绩输出等级(优秀/合格/不合格):

x = int(①('输入成绩:'))
if x >= 85:
②("优秀")
elif x >= 60:
print("合格")
③:
print("不合格")
答案

① input ② print ③ else

题目 17

输入 x 和 y,比较大小并输出结果:

x = int(input("请输入x的值:"))
y = ①(input("请输入y的值:"))
② x > y:
print(x, "大于", y)
elif x < y:
print(x, "小于", y)
③:
print(x, "等于", y)
答案

① int ② if ③ else

题目 18

根据体温判断健康状况:

tw = float(①("请输入你的体温:"))
if tw >= 37.3:
print("你的体温过高")
② tw < 35:
print("你的体温过低")
else:
print("你的体温正常")
答案

① input ② elif

题目 19

某电信公司推出新套餐,流量超过 100G 给出降速提醒,超过 200G 提醒购买:

x = int(input("x="))
if x >= 200:
print("您的流量不足,请及时购买!")
① 200 > x >= 100:
print("您的流量将会降速,请谨慎使用!")
②:
print("您流量充足请放心使用!")
答案

① elif ② else

题目 20

出租车计价器:行驶 3 公里以内收费 8 元,3~6 公里每公里 1.5 元,6 公里以上每公里 2.25 元:

s = eval(①('请输入出租车行驶的公里数:'))
if s <= 3:
p = 8
② 3 < s <= 6:
p = 8 + 1.5 * (s - 3)
③:
p = 2.25 * (s - 6) + 1.5 * 3 + 8
print(p)
答案

① input ② elif ③ else

题目 21

口语测试成绩评价程序:

g = int(input('please input score:'))
if ①: # 分数大于等于 90 分时输出 Great
print('Great')
elif g >= 60 and g < 90:
print('Good')
②:
print('Bad')
答案

① g>=90 ② else

题目 22

高速公路限速 110 公里/小时,超速 10% 以内警告,超速 10% 以上罚款:

x = int(input("请输入速度:"))
if x <= 110:
print("该路段限速110,请注意安全驾驶!")
① 110 < x < 121:
print("你已超速请慢行!")
else:
print("你时速是", ②, "已超速,将被记录并罚款!")
答案

① elif ② x

题目 23

根据购买数量计算单价(阶梯定价):

n = int(input("请输入购买的数量:"))
if n < 30:
m = 2.0
elif n < 50:
m = 1.8
① n < 100:
m = 1.6
else:
m = 1.5
print("请付款", ② * n, "元。")
答案

① elif ② m

题目 24

输入三个数值,从中选出最大值并输出结果:

a = int(input("请输入第一个数值:"))
b = int(input("请输入第二个数值:"))
c = int(input("请输入第三个数值:"))
if a ① b:
s = a
else:
s = b
if s ② c:
s = c
③("最大值为:", s)
答案

① > ② < ③ print

题目 25

猜年龄:小迪是一个小学生,请输入 6 到 12 之间的随机数,程序会告诉玩家猜测是太高还是太低(答案是 9):

a=int(input("小迪的年龄是:"))
if a==9:
print("猜对了")
elif a①9:
print("猜高了")
②:
print("猜低了")
答案

① > ② else

取余判断(奇偶/整除)

题目 26

输入一个三位数,判断其十位上的数字是否为偶数:

n = int(input("请输入一个三位数:"))
s = n // 10
① s ② 2 == 0:
print("该数十位上的数字是偶数")
else:
print("该数十位上的数字是奇数")
答案

① if ② %

题目 27

统计小组数量(有余数时加一组):

s = int(input("总人数为:"))
x = ①(input("每组人数为:"))
if s % x == 0:
a = s // x
else:
a = s // x + 1
print("可以分的小组数量为:", ②)
答案

① int ② a

题目 28

某个城市为了避免拥堵,采取车辆分单双号限行:

x=①(input("请输入最后一位车牌号:"))
if x②2==0:
print("双号今天限行")
else:
print("单号正常通行")
答案

① int ② %

比较运算符

题目 29

计算并输出整数的绝对值,请补全程序:

a = ①(input('请输入一个整数:'))
if a <= 0:
print(-a)
②:
print(a)
答案

① int ② else

题目 30

输入两个不同的整数,输出较大值:

a = int(input('请输入a的数值:'))
b = int(①('请输入b的数值:'))
if a ② b:
print("最大的数是:", a)
else:
print("最大的数是:", ③)
答案

① input ② > ③ b

题目 31

从键盘输入一个正整数,判断是否为奇数,如果是输出“Yes”,否则输出“No”:

a = int(①("请输入一个正整数:"))
if a % 2 ② 0:
print("Yes")
else:
print("No")
答案

① input ② !=

逻辑运算符

题目 32

补全程序,判断用户名和密码是否正确:

name = input("请输入用户名:")
passwd = input("请输入密码:")
① name == "admin" ② passwd == "123":
print("密码正确")
else:
print("密码不正确")
答案

① if ② and

题目 33

判断一个整数能不能同时被 3 和 7 整除:

n = int(①('请输入一个整数:'))
if n % 3 == 0 ② n % 7 == 0:
print("yes")
else:
print("no")
答案

① input ② and

题目 34

从键盘上输入一个整数,判断这个数是否为 7 的倍数,或者末尾含有 7 的数:

a = int(input("请输入一个整数:"))
if a % 7 == 0 ① a % 10 == 7:
print("Yes")
else:
②("No")
答案

① or ② print

最大最小值

题目 35

求三个数中的最小值,用变量 zx 记录最小值:

x = 108
y = 55
z = 99
if x < y: # 判断 x 是否小于 y
if x ① z: # 如果 x 小于 z
zx = x # x 最小赋给 zx
else:
zx = z
②:
if y < z:
zx = y
else:
zx = z # z 最小赋给 zx
print("最小值为", zx)
答案

① < ② else

题目 36

求三个数中的最大值,用变量 zd 记录最大值:

x = 108
y = 55
z = 99
if x > y: # 判断 x 是否大于 y
if x ① z: # 如果 x 大于 z
zd = x
else:
zd = z # z 最大赋给 zd
else:
if y > z:
zd = y
else:
zd = z # z 最大赋给 zd
②("最大值为", zd)
答案

① > ② print

题目 37

从键盘输入二个不同的整数,并输出较大值:

a=int(input("请输入第一个整数:"))
b=int(input("请输入第二个整数:"))
if a①b :
print(b)
② :
print(a)
答案

① < ② else

闰年判断

题目 38

判断是否为闰年(四年一闰,百年不闰,四百年再闰):

year = ①(input("请输入4位整数年份: "))
if (year % 4 == 0 and year % 100 != 0) ② (year % 400 == 0):
print(year, "是闰年")
else:
print(year, "不是闰年")
答案

① int ② or

阶梯收费

题目 39

小明去冷饮店买冰淇淋,10 个以上或 10 个 3 元/个,10 个以下 4 元/个:

a=int(input("请输入冰淇淋的个数:"))
① a>=10:
q=3*a
else:
q=②
print("应付金额(元)为:",q)
答案

① if ② 4*a