内容正文:
4.3 运用选择结构描述问题求解过程
一、选择题
1.在Python中,已知A=8,则以下代码执行后输出的结果是( )
if A<=5:
print(A-5)
else:
print(A+10)
A.3 B.5 C.10 D.18
2.小明要编写一个程序,能实现对用户输入的数据,判断其为奇数还是偶数,请你帮他完成以下代码:在“if( )”处补充代码( )
n=int(input("请输入一个数: "))
if( ):
print("这是一个偶数")else:
print("这是一个奇数")
A.n/2==0 B.n//2==0 C.n%2==0 D.n%10==0
3.某商场做促销打折活动,消费金额500元以内打8.8折;大于500元(含500元)且小于1000元打8折;1000元以上(含1000元)打7折。小曲使用Python编写了下面程序,第4行下划线处应填写的代码是( )
A.if B.elif C.else D.while
4.编写一个程序,实现“输入年份,判断是否为闰年”,最合适的程序结构是( )
A.选择结构 B.递归结构 C.顺序结构 D.循环结构
5.已知某同学的BMI值存储在变量X中,小蓝编写程序判断该同学的身体状况信息,并保存到变量Y中,则下列程序段无法实现该功能的是( )
A.
Y = "偏瘦"
if X>=18:
Y = "正常"
elif X>24:
Y = "偏胖"
B.
Y="偏胖"
if X<18:
Y = "偏瘦"
elif X<=24:
Y = "正常"
C.
if X>24:
Y = "偏胖"
elif X>=18:
Y = "正常"
else:
Y = "偏瘦"
D.
if 18<=X<=24:
Y = "正常"
else:
Y = "偏瘦"
if X>18:
Y = "偏胖"
A.A B.B C.C D.D
6.判断整数x是否奇偶的部分Python程序段如下:
if x % 2 == 0:
res = ″偶数″
else:
res = ″奇数″
下列选项中与上述语句块功能相同的是( )
A.
if x % 2 == 0:
res = ″偶数″
res = ″奇数″
B.
if x % 2 == 0:
res = ″偶数″
else x % 2 ! = 0:
res = ″奇数″
C.
res = ″奇数″
if x % 2 == 0:
res = ″偶数″
D.
if x % 2 == 0:
res = ″奇数″
if x % 2 ! = 0:
res = ″偶数″
A.A B.B C.C D.D
7.如果a,b中任意一个数的值为3的倍数,那么y的值为变为原先的2倍,能实现该功能的Python语句是( )
A.
if a % 3= 0 and b % 3 = 0:
y = у * 2
B.
if a % 3 == 0 or b % 3 == 0:
y = y // 2
C.
if a % 3 == 0 or b % 3 == 0:
y = у + у
D.
if not (a % 3 != 0) and not (b % 3 ! = 0):
y = у ** 2
A.A B.B C.C D.D
8.在Python语言中,运行以下程序,输入数值 100,显示的运行结果是 ( )
a= int(input()) # 输入一个数给变量a
if a<= 100:
print("YES")
A.100 B.无结果 C.a D.YES
9.在 Python语言中,运行以下程序得到的结果是( )
m= 19
if m>=30 or m<20:
print(m)
A.20 B.19 C.0 D.空
10.已知a=8、b=6,以下程序段
if (a%3==0) or (b%3==0):
c=a*b
else:
c=a+b
执行后变量c的值为( )
A.48 B.14 C.8 D.6
11.if语句的格式正确的是( )
A. B. C. D.
12.在Python语言中,以下对分支结构的描述不正确的是( )
A.多分支结构可以连用多个else语句来实现
B.分支结构分为单分支结构、双分支结构和多分支结构
C.ifelse语句结构中依然可以嵌套ifelse结构
D.通过判断if条件表达式的值(True或False),决定程序执行的分支
13.选择结构程序应用的分支语句是( )
A.if B.for C.while D.print
14.以下Python程序段执行后,输出结果为( )
m=29
if m%3!=0
print(m, "不能被3整除")
else:
print(m, "能被3整除")
A.m不能被3整除 B.29不能被3整除 C.29能被3整除 D.m能被3整除
15.有如下Python程序段,运行该程序段后变量a的值为( )
a=4;b=3
if a >= 4:
if b <2:a=a+2
if b > 2:a=a+3
a=a+2
elif a >= 9:
a=a+4
else:
a=a+b
A.13 B.9 C.16 D.8
16.已排序的列表a有n个整型元素,现要查找出现次数最多的值并输出。若出现次数最多的值有多个,则输出最前面的一个。实现该功能的程序段如下,方框中应填入的正确代码为( )
a=[1,1,2,2,2,3,3,3,4,5,5,5,5]
n=len(a)
c,m,v=1,1,0
for i in range(1,n):
print(a[v])
A.
B.
C.
D.
二、填空题
17.在编程语言中, 是指在程序执行过程中,根据条件选择执行不同代码块的语句。
18.在计算机编程中, 是一种用于实现条件执行的语句结构,它允许根据不同的条件执行不同的代码块。
19.有Python程序代码如下:
n=int(input("请输入一个整数n:"))
if n < 0 :
s = 0
elif n < 16 :
s = n ** 3
else :
s = n * n ** 2
print(s)
若要测试所有分支程序代码是否正确,请列举一组合适的数据
20.复制以下代码,并在Python中运行该程序,当输入三条边长分别是12、33、41,则运行结果是( ):
a = int(input('请输入第 1 边:'))
b = int(input('请输入第 2 边:'))
c = int(input('请输入第 3 边:'))
if a>0 and b>0 and c>0 and a+b>c and a+c>b and b+c>a:
if a==b==c:
print('等边三角形')
elif a==b or a==c or b==c:
print('等腰三角形')
elif (a**2+b**2==c**2) or (b**2+c**2==a**2) or (a**2+c**2==b**2):
print('直角三角形')
else:
print('普通三角形')
else:
print('不能组成三角形')
21.以下Python程序运行后,当输入20时,输出结果是 。
三、操作题
22.如图所示程序的运行结果是 。
23.某商场举行“双十一”促销活动,一次性购物不超过300元的, 打9折优惠; 超过300元的,其中300元部分打9折优惠, 超过300元部分打八折优惠。下面的Python程序, 实现了“根据输入的购物金额,输出打折优惠后的实付金额”,请分析题意完善程序并完成下面的问题.
money=float(input("请输入购物金额: "))
if (1) :
discount=money*0.9
else:
discount= (2)
print("当购物金额为", money."时,其优惠后的金额为:", discount)
完善程序:
【填空】
(1)
【填空】
(2)
【填空】
(3)该程序中, 变量money的数据类型为
【填空】
(4)该程序中用到了 分支选择结构。
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.D
【详解】本题考查的是Python选择语句。A=8,不满足A<=5,执行 print(A+10),输出8+10=18,故选D。
2.C
【详解】本题考查Python分支结构。在这段程序中,我们需要判断输入的正整数x是否为偶数。根据整数的奇偶性质,一个整数除以2的余数为0时,它就是偶数。因此,我们可以使用取余运算符(%)来判断x是否能被2整除,如果余数为0,则x是偶数,否则是奇数。C选项正确。
3.B
【详解】本题主要考查Python多分支结构。Python多分支结构格式是if…elif…else,故划线处填elif,故本题选B选项。
4.A
【详解】本题考查的是程序结构。输入年份,判断是否为闰年,有两种情况:一种是闰年,一种是平年,故应使用选择结构。故选A。
5.A
【详解】本题考查的是Python分支语句。代入特殊的值,可以快速判断是否能实现算法要求的功能。
A选项,当x=25时,if x>18条件成立,elif不会被执行,会得到Y是正常,不符合要求。
B选项,把x=16,20,25,分别代入,会得到偏瘦,正常,偏胖的正确结果,正确。
C、D选项,同样把x=16,20,25,都能得到正确结果。综上,答案为A。
6.C
【详解】本题考查的是Python选择语句。选项A在x为偶数y="奇数",与题干给的程序不符;选项B语句格式不对,else后不用写条件表达式;选项Dx为偶数y="奇数",奇数y="偶数",与题干给的程序不符。故本题应选C。
7.C
【详解】本题考查的是Python选择语句。a,b中任意一个数的值为3的倍数,故条件应为:a % 3 == 0 or b % 3 == 0,y的值为变为原先的2倍,其代码为: y = у * 2或 y = у + у。故选C。
8.D
【详解】本题考查的是Python选择语句。输入数值100,即a=100,满足a<= 100,执行print("YES"),故本题应选D。
9.B
【详解】本题考查的是Python选择语句。m=19,满足m>=30 or m<20,执行 print(m),输出19,故本题应选B。
10.A
【详解】本题主要考查Python程序的执行。a=8,b=6,a%3=2,b%3=0,故表达式(a%3==0) or (b%3==0)为True,执行c=a*b=6*8=48,故本题选A选项。
11.D
【详解】本题考查的是Python的选择语句。选择语句格式如下:
if 条件:
语句
else:
语句
故本题应选D。
12.A
【详解】本题考查的是分支结构。分支结构分为单分支结构、双分支结构和多分支结构;if-else语句结构中依然可以嵌套if-else结构;多分支结构格式是if....elif....else语句;通过判断if条件表达式的值( True或False ),决定程序执行的分支,故本题选A选项。
13.A
【详解】本题程序设计语言相关内容。选择结构程序应用的分支语句是if,故本题应选A。
14.B
【详解】本题考查Python选择语句。m=29,m%3=1执行 print(m, "不能被3整除"),输出:29不能被3整除。故选B。
15.B
【详解】本题考查的是Python选择语句。a=4,b=3满足a >= 4,满足b > 2,故执行a=a+3=4+3=7和a=a+2=7+2=9。故本题应选B。
16.A
【详解】本题考查Python选择结构应用。由于列表a为有序列表,因此计算每个数的出现次数,可以通过检查相邻两个数进行统计。阅读程序段和选项中的代码可知:变量v为次数最多的值在列表a中的索引,变量c为当前数值的出现次数,变量m已统计次数中的最大值。其算法思想是:若相邻两个数相等,则计数器c加1,否则应该将c变为初值1,首先可以排除选项B,因为该选项中else分支不符合逻辑。选项CD都存在缺陷,例如最多的一组相同的数出现在列表的最后时,均不能准确统计结果。故本题应选A。
17.条件语句或选择结构
【详解】本题考查分支结构。在编程语言中,条件语句或选择结构用于在程序执行时,依据给定的条件来决定执行不同的代码块。条件语句通过对条件的判断,若条件为真(成立)则执行相应的代码块,若条件为假(不成立)则执行另外的代码块或者不执行任何操作。常见的条件语句有if语句、if-else语句、switch语句等。通过条件语句,可以使程序根据不同的情况做出不同的响应和处理,增加了程序的灵活性和逻辑性。故答案为:条件语句或选择结构。
18.条件语句(或if-else语句)
【详解】本题考查条件语句。条件语句(或if-else语句)是一种用于实现条件执行的语句结构,它允许根据不同的条件执行不同的代码块。通过条件语句,程序可以根据某个布尔表达式的结果(真或假)来决定执行哪一段代码,从而实现程序的分支和逻辑控制。故答案为:条件语句(或if-else语句)。
19. -1,15,16 或其他等价答案
【详解】本题考查的是Python多分支语句。阅读程序可知,程序由三个分支:小于0、大于等于0小于16、大于等于16。故测试数据可以是:-1,15,16 或其他等价答案。
20.普通三角形
【详解】本题考查的是Python多分支语句。当输入三条边长分别是12、33、41,满足任意两边大于第三边,不满足a==b==c,不满足a==b or a==c or b==c,也不满足(a**2+b**2==c**2) or (b**2+c**2==a**2) or (a**2+c**2==b**2),故执行print('普通三角形')。故运行结果是:普通三角形。
21.20
【详解】本题考查的是Python选择语句。当输入20时,x=20,满足x%5==0,执行print(x),故输出20。
22.1 2 3
【详解】本题考查的是分支语句。初始a=3,b=1,c=2,a>b成立,交换a、b的值后:a=1,b=3;b>c成立,交换b、c的值后:b=2,c=3,a>b不成立,直接输出a、b、c的值,故输出1 2 3。
23. money<300 (money-300)*0.8+270 浮点型 双
【详解】本题考查的是Python分支语句。
(1)由discount=money*0.9可知判断条件是打九折。故此处为:money<300。
(2)超过300元的,其中300元部分打9折优惠, 超过300元部分打八折优惠。故此处为:(money-300)*0.8+270 或其它等价答案。
(3)由 discount=money*0.9可知变量money的数据类型为浮点型(float)。
(4)if……else格式是双分支选择结构。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$