内容正文:
教科版(2019)必修一2.2做出判断的分支同步作业
一、单选题
1. 有如下程序段:
mw = input('请输入:')
res=''
i=0; j=0; n=len(mw)
while j<n:
if i%2==0:
mw+=mw[i]
else:
res+=mw[i]
j+=1
i+=1
print(res)
若输入的内容为python,输出的结果为( )
A.pto B.yhn C.ptoynh D.yhntpo
2.有如下Python程序段:
import random
a = [ 0 ] *5 ; i = 0 ; flag = True
while i < 5 :
a[ i ] = random.randint( 1 , 8 )
if i % 2 == 1 :
a[ i ] = a[ i ] + a[ i - 1 ]
flag = not flag
elif a[ i ] % 2 == 0 and flag == False:
i -= 1
i += 1
执行该程序段后,列表a的值不可能的是( )
A.[5, 12, 1, 3, 2] B.[3, 11, 3, 10, 1]
C.[4, 5, 5, 11, 7] D.[3, 4, 6, 7, 7]
3. 小斌使用某智能终端读取当前环境的温度,并编程实现根据不同的温度值,LED 屏显示不同的图形,部分 Python 程序代码如下:
while True:
t=pin0.read_analog()
if t>40:
display.show(Image.HAPPY)#在 LED 屏上点阵显示笑脸的图形
sleep(2000)
else:
display.show(Image.SAD)#在 LED 屏上点阵显示哭脸的图形
sleep(1000)
将代码烧录至某智能终端后运行,下列关于代码执行效果描述不正确的是( )
A.当检测到t值为60,LED屏显示“笑脸”图形,并至少维持3秒
B.当检测到t值为37,LED屏显示“哭脸”图形,并至少维持1秒
C.当t值等于40时,LED屏不显示任何图形
D.智能终端从p0口读取温度数据
4. 有如下 Python程序,实现求字符串中的最长连续上升子串的长度。例如:字符串“hellopython”中的最长连续上升子串是“lopy”,长度为 4。
s=input()
n=len(s);c=1;max=1
for i in range(1,n):
if (1)____:
c=c+1
if c>max:
max=c
else:
(1)print(max)
划线处可选代码为①c=1 ②c=0 ③s[i]<s[i+1] ④s[i]>s[i-1]
划线处正确的语句依次为( )
A.③① B.③② C.④① D.④②
5. 有如下程序段
p ="Tel-114"
c=""
for ch in p:
if ch>= "0" and ch<= "9":
c+=str(9-int(ch))
elif ch>= "a" and ch<= "z":
ch= chr(ord(ch) - 32)
if ch>= "A" and ch<= "Z":
c=ch+c
print(c)
执行程序后,输出的结果为( )
A.LET885 B.TEL885 C.elT114 D.LET-114
6. 下列Python表达式中值为True的是( )
A.24%200**1/2<-2**4+4*2
B."Hz" in "Hangzhou Asian Games"
C.not False and not True or not False
D.abs(int(-4.65))==round(4.65)
7.下列表达式的结果为True的是( )
A.2024 % 1000 // 5 == 24
B.abs(int(-1.7) * 2) % 8 == 4
C.int(str(1010 + 90)[1 : 4]) // 25 == 4
D.(2 ** 2 > 2 * 2) and (not(3 ** 3 == 3 * 3))
8.有如下Python段程序:
a = [ 6 , 12 , 9 , 20 , 8 , 11 , 4 ]
for j in range( 1 , len( a ) ) :
if a[ j ] < a[ j - 1 ] :
a[ j ] = a[ j ] + a[ j - 1 ] ; a[ j - 1 ] = a[ j ] - a[ j - 1 ] ; a[ j ] = a[ j ] - a[ j - 1 ]
执行该段程序后,列表a的值是( )
A.[ 4 , 6 , 12 , 9 , 20 , 8 , 11 ]
B.[ 4 , 6 , 8 , 12 , 9 , 20 , 11 ]
C.[ 6 , 9 , 12 , 8 , 11 , 4 , 20 ]
D.[ 6 , 9 , 8 , 11 , 4 , 12 , 20 ]
9. 有如下Python程序段:
s=input()
t=0
mw=''
for i in range(len(s)):
ch=s[i]
if '0'<=ch<='9':
t=t*10+int(ch)
elif ch=='-':
mw+=chr(t%26+ord('A'))
t=0
else:
mw+=ch
print(mw)
执行该程序段输入“29-052-24!”(不包括双引号),则输出的结果是( )
A.DA! B.DA C.DAY D.DAY!
10. 用Python算法控制结构描述“考试成绩低于60分,被定义为不及格,60分-80分为及格,80分以上为优秀”,则下列程序段能实现该功能的是( )
A.
Y="不及格"
if X>=60:
Y="及格"
elif X>80:
Y="优秀"
B.
if X<=80:
Y="及格"
elif X<60:
Y="不及格"
else:
Y="优秀"
C.
if 60<=X<=80:
Y="及格"
else:
Y="优秀"
if X<60:
Y="不及格"
D.
if X>=60:
Y="及格"
if X>80:
Y="优秀"
else:
Y="不及格"
A.A B.B C.C D.D
11. 下列程序功能为:根据列表lst中各数字的大小关系,计算各数字升序排列的序号,并将序号保存在列表y中。如lst内容为[2,5,2,1],程序运行后列表y的值为[2,4,3,1]。
lst = [2,5,2,1]
y = [1,1,1,1]
n = len(lst)
for i in range(①____):
for j in range(②____):
if ③____:
y[j] = y[j] + 1
else
y[i] = y[i] + 1
上述程序段3个划线处的表达式分别为( )
A.(1)n-1 (2)i+1 (3)lst[j] > lst[i]
B.(1)n-1 (2)i+1 (3)lst[j] >= lst[i]
C.(1)n (2)0 (3)lst[j] >= lst[i]
D.(1)n (2)0 (3)lst[j] > lst[i]
12.若一个正整数从左向右读与从右向左读都一样,我们就将其称之为“回文数”。设计一个在列表框 Listl中显示 100-500 之间的所有回文数的程序,实现该功能的 VB 程序段如下:
For k = 100 To 500
x = k
z = 0
Do while x > 0
Loop
If z= k Then
List1.AddItem Str(k)
End lf
Next k
上述程序段中方框处可选语句为:( )
①x =x\ 10 ②y = x Mod 10 ③z = z+10* y ④z= 10* z + y
则(1)(2)(3)处语句依次为
A.①②③ B.②①③ C.①②④ D.②①④
二、判断题
13.Python语言用if语句实现选择结构,它包括以下三种基本形式:单分支语句、双分支语句、多分支语句。
14.常见的顺序结构语句有输入语句、输出语句和赋值语句。
15.VB程序中的赋值语句“x=x+1”是合法的。
三、填空题
16.请在横线处填写正确的代码
输入a,b两个整数,如果a为大数,则进行交换,然后分别输出大数、小数的值。
a=int(input("请输入a:"))
b=int(input("请输入b:"))
if : #如果a为大数
a, b=b, a
print("大数是", ,"小数是", )
17.请在横线处填写正确的代码。
一种细菌的繁殖速度是每天成倍增长。例如,第一天有10个,第二天就变成20个,第三天变成40个。输入繁殖天数,输出细菌总量。
n= (input("请输入繁殖天数:"))
s=10 #细菌个数初值
s=10*2**( )
print("细菌总量为:", )
18.一个正整数,如果它能被7整除,或者它的十进制表示法中某一位上的数字为7,则称其为与7相关的数。现求所有小于等于n的与7无关的正整数的平方和。实现上述功能的部分Python程序如下,请在划线处填入合适的代码。
n=int(input())
for i in range(n+1):
flag=False
if i%7==0:
flag=True
m=i
while :
if m%10==7:
flag=True
m//=10
if :
sum=sum+i*i
print(sum)
答案解析部分
1.【答案】D
2.【答案】D
3.【答案】C
4.【答案】(1)C
5.【答案】A
6.【答案】C
7.【答案】C
8.【答案】C
9.【答案】A
10.【答案】C
11.【答案】B
12.【答案】D
13.【答案】正确
14.【答案】错误
15.【答案】正确
16.【答案】a>b;b;a
17.【答案】int;n-1;s
18.【答案】sum=0;m>0 或 m!=0;flag==False
学科网(北京)股份有限公司
$$