第2单元 编程计算 综合练习 教科版(2019) 必修1 数据与计算(Word版,含答案)

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

第2单元 编程计算 综合练习 教科版(2019) 必修1 数据与计算(Word版,含答案)

资源简介

第2单元 编程计算 综合练习 教科版(2019) 必修1 数据与计算
一、选择题
1.有如下程序段,测试结果为图 11 所示
图 11
n = int(input("请输入行数:"))
if n % 2 == 0: #保证n 的值为奇数
n=n-1
a=[]
for i in range(n):
if i<=n//2:
b=2*i+1 #当在上半部分的时候
else:
#当在下半部分的时候

a.append(" "*w+"&"*b)
for s in a:
print(s)
请输入行数:6
&
&&&
&&&&&
&&&
&
上述程序中划线处可选语句为( )
①b=n-2*i+1 ②b=(n-i)*2-1 ③w=(n-b)%2 ④w=(n-b)//2
A.①③ B.①④ C.②③ D.②④
2.下面的Python程序段运行后的输出结果是( )
x=24
if x%2=1:
print(x,"是奇数。")
else:
print(x,"是偶数。")
A.24是奇数。 B.x是偶数。 C.x是奇数。 D.24是偶数。
3.有如下 python 程序段: s=''
from random import *
for i in range(1,4):
k = int(random()*3+1)
c=chr(96+k)
if i % 2 == k % 2:
s=s+c
else:
s=c+s print(s)
若该段程序执行以后,s 的值不可能的是( )
A.'abc' B.'bbc' C.'aab' D.'caa'
4.有如下Python程序段:
s1=input("请输入字符串:")
a=[0]*128
for item in s1:
ch=ord(item)
a[ch]=a[ch]+1
s2=""
for i in range(len(a)):
for j in range(a[i]):
s2=s2+chr(i)
print(s2)
列表a各元素的初始值都为0,s1中输入的内容为“abs54int”。执行该程序后,程序输出的结果中第5个字符为( )
A.n B.s C.4 D.i
5.有下列Python程序段:
d=[["c",1],[1,2],["o",3],[15,4],["d",5],[9,6],["e",7],[6,-1]]
t=0;outs=""
while t!=-1:
s=d[t][l]
outs=chr((ord(d[t][0])-97+d[s][0])%26+97)+outs
t=d[s][1]
print(outs)
已知小写字母“a”的十进制ASCII码值为97,执行该程序段后,输出结果为( )
A.yuzb B.bzyu C.kmdd D.ddmk
6.有如下 python 程序段:
n='15867239012'
s=0
for x in n:
if int(x)%2==0:
continue
elif s==14:
break
s+=int(x)
print(s)
该程序段执行后,则输出结果为 ( )
A.18 B.26 C.14 D.17
7.有下面一段程序:
p = [ 2, 1, 3, 4, 5 ]
c = 0
for i in range( 2, 6, 2 ):
if p[ i - 2 ] + p[ i -1 ] == p[ i ]:
c += 1
print( c )
执行该段程序后,计算机显示的是()
A.1 B.2 C.3 D.4
8.下列Python程序段功能为:随机生成省会城市的测试题目及相应答案。运行结果如图所示。
import random
dict={"北京市":"北京","上海市":"上海","河北省":"石家庄",…}
#dict中存储中国34个省级行政区及其省会城市
sf=list( (1) )
sh=list( (2) )
sj=random. randint(0,33) #生成[0,33]之间的整数
zd=sh[sj]
del sh[sj] #删除列表sh中的第sj项
xx=random. sample(sh,3)+[zd] #随机产生列表sh中的3项,与zd连接成新列表xx
random. shuffle (xx) #对列表xx中的内容进行随机排序
print("%s的省会城市是?"% (3) )
for i in range(4):
print (%s. %s'%('ABCD'[i],xx[i]))
print('本题参考答案为:%s'%('ABCD'[ (4) ]))
上述程序段中方框处可选语句为:( )
①dict. values ②dict. keys() ③sh[sj]
④sf[sj] ⑤xx. index(zd) ⑥xx[zd]
则(1)(2)(3)(4)处语句依次可为
A.①②④⑤ B.①②③⑥ C.②①④⑥ D.②①④⑤
二、填空题
9.有10个数据34,22,101,8,14,88,24,17,54,7依次存放在列表list中,有如下Python程序,当程序运行结束时,输出的值是: _____
list= [34,22, 101,8,14,88,24,17,54,7]
num=list[0]
for i in range(1,10):
if list[i]num=list[i]
print(num)
10.Python语言用于实现循环结构的语句有______语句和while语句。
11.完善程序。求出100以内满足afor a in range(1,101)
for b in range ___ :
for c in range(1,101):
if____:
print(a," ",b,"",c)
12.阅读程序代码,写出运行结果。
运行结果是:__________。
13.阅读程序。分析代码并回答问题。
list=['a','b','c','d','e','f','g']
list1=[]
list2=[]
for i in range(7):
if i%2==0:
list1.append(list[i])
else:
list2.append(list[i])
print(list1)
print(list1)
(1)list 的数据类型是 _______。
(2)list中的元素的数据类型 ________。
(3)list1=[]的作用是 _______。
(4)for i in range(7)语句中,i 的实际数据范围是从_____到 ____。
(5)append(list[i])的作用是______。
三、判断题
14.在循环中continue语句的作用是跳出循环的执行。( )
15.屏幕保护程序的主要作用是保护用户的眼睛。( )
16.王军同学编写程序解决“韩信点兵”问题后,总结出计算机解决问题的过程分为分析问题-设计算法-编写程序-调试运行程序等步骤。 ( )
17.键盘上的Ctrl键具有独立的控制程序运行的作用。( )
18.分析问题就是从具体的问题中,明确条件和需求,找出条件和需求之间的关系,并尽量用数学的语言加以描述。( )
四、操作题
19.判断身份证校验位是否正确
第一步:将身份证号码的第1位数字与7相乘;将身份证号码的第2位数字与9相乘;将身份证号码的第3位数字与10相乘;将身份证号码的第4位数字与5相乘;将身份证号码的第5位数字与8相乘;将身份证号码的第6位数字与4相乘;将身份证号码的第7位数字与2相乘;将身份证号码的第8位数字与1相乘;将身份证号码的第9位数字与6相乘;将身份证号码的第10位数字与3相乘;将身份证号码的第11位数字与7相乘;将身份证号码的第12位数字与9相乘;将身份证号码的第13位数字与10相乘;将身份证号码的第14位数字与5相乘;将身份证号码的第15位数字与8相乘;将身份证号码的第16位数字与4相乘;将身份证号码的第17位数字与2相乘。
第二步:将第一步身份证号码1~17位相乘的结果求和,全部加起来。
第三步:用第二步计算出来的结果除以11,这样就会出现余数为0,余数为1,余数为2,余数为3,余数为4,余数为5,余数为6,余数为7,余数为8,余数为9,余数为10共11种可能性。
第四步:如果余数为0,那对应的最后一位身份证的号码为1;如果余数为1,那对应的最后一位身份证的号码为0;如果余数为2,那对应的最后一位身份证的号码为X;如果余数为3,那对应的最后一位身份证的号码为9;如果余数为4,那对应的最后一位身份证的号码为8;如果余数为5,那对应的最后一位身份证的号码为7;如果余数为6,那对应的最后一位身份证的号码为6;如果余数为7,那对应的最后一位身份证的号码为5;如果余数为8,那对应的最后一位身份证的号码为4;如果余数为9,那对应的最后一位身份证的号码为3;如果余数为10,那对应的最后一位身份证的号码为2。
(1)如果身份证的前17位是34052419800101001,则该身份证的校验位是__________。
(2)实现上述功能的代码如下,请在划线处填入合适的代码,使程序正常运行。
(3)实现上述功能的代码如下,但加框处代码有错,请改正。
def check(s):
s1=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]
s2='10X98765432'
k=0
for i in ____________①:
k=k+int(s[i])*s1[i]
return_________
sfz=input('请输入身份证号:')
_____________②
if t !=18:
print('位数有误,请重新输入!')
else:
if sfz[-1]=='x':
sfz=sfz[:-1]+"X"
if ____________________③:
print('合法身份证号')
else:
print('非法身份证号')
五、简答题
20.定义函数的基本格式是: ______。
21.判断输入的一个整数能否同时被3和7整除,若能,则输出“Yes”;否则输出“No”。
试卷第1页,共3页
试卷第1页,共3页
参考答案:
1.D
2.D
3.C
4.D
5.C
6.B
7.A
8.D
9.7
10.for
11. (1,101) a*a==b*b+c*c
12.114
13. 列表 字符型 定义一个空的列表 0 6 可以向list中添加元素
14.错
15.错误
16.对
17.错误
18.对
19. X range(0,17) t=len(sfz) check(sfz)==sfz[-1] s2[k%11]
20.def 函数名(参数):
#函数说明
语句或语句组
return 返回值
21.n=int(input("请输入一个整数:"))
if n%3==0 and n%7==0:
print("Yes")
else:
print("No")
答案第1页,共2页
答案第1页,共2页

展开更多......

收起↑

资源预览