内容正文:
青少年软件编程(Python)等级考试试卷(三级)
分数:100 题数:38
一、单选题(共25题,共50分)
1.
一个非零的二进制正整数,在其末尾添加两个“0”,则该新数将是原数的?( )
A.
10倍
B.
2倍
C.
4倍
D.
8倍
试题编号:20230629-ylx-001
试题类型:单选题
标准答案:C
2.
2023年亚运会将在杭州举办。关于2023,若将其转换为二进制数,则末位数字为?( )
A.
0
B.
1
C.
3
D.
不确定
试题编号:20230629-ylx-002
试题类型:单选题
标准答案:B
3.
二进制数10010,转换为十进制数和十六进制数分别为?( )
A.
18和12
B.
36和1A
C.
50和1A
D.
36和12
试题编号:20230629-ylx-003
试题类型:单选题
标准答案:A
4.
在Python中,int('1010',8)语句的作用是?( )
A.
将十进制数1010转化为八进制数1010
B.
将二进制数1010转化为八进制数12
C.
将八进制字符串“1010”转化为八进制整数
D.
将八进制数“1010”转化为十进制整数
试题编号:20230629-ylx-004
试题类型:单选题
标准答案:D
5.
假设cai.csv文件内容如下图所示,那么下列代码的输出结果是?( )
f = open('cai.csv', 'r')
c = []
for i in f:
c.append(i.strip('
').split(','))
f.close()
print(c)
A.
[['肉','15'],['白菜','8']]
B.
['肉','15','白菜','8']
C.
['肉','15'],['白菜','8']
D.
'肉','15','白菜','8'
试题编号:20230703-zm-007
试题类型:单选题
标准答案:A
6.
2023年中国航天事业再次刷新纪录,主要事件记录在abc.txt文件中,具体内容如下图所示,程序运行后s值是?( )
f = open(r'abc.txt','r')
s = f.readline()
print(s)
A.
5月11日,天舟六号
B.
5月30日,神舟十六
C.
6月 7日,力箭一号
D.
6月16日,长征二号
试题编号:20230703-zm-008
试题类型:单选题
标准答案:A
7.
Python是强大的数据处理工具,能方便读写文件。 打开D:\test.csv,文件的内容如下图所示,
>>>f=open(r"D:\test.csv",'r')
>>>s1=f.read()
>>>s2=f.read()
>>>f.close()
运行上述程序,说法正确的是?( )
A.
>>>s1
'hello python!'
B.
>>>s1
'hello word!'
C.
>>>s1
'hello python!
hello word!
'
D.
>>>s2
'hello python!
hello word!
'
试题编号:20230703-zm-010
试题类型:单选题
标准答案:C
8.
Python是强大的数据处理工具,目前受到大家青睐。下列说法错误的是?( )
A.
数据文件格式丰富,常见的有一维数据、二维数据和多维数据
B.
read()函数可以读取整个文件的内容
C.
write()函数向文件中可以写入列表、字符串、整型等数据类型内容
D.
python中有许多函数,能够直接对csv、excel、txt等文件内容读写、删除等操作
试题编号:20230703-zm-011
试题类型:单选题
标准答案:C
9.
运行下面一段程序,说法正确的是?( )
f = open('yayun.txt', 'w')
f.write('迎亚运,创未来
Heart to Heart
')
f.close()
A.
运行程序后,打印:
'迎亚运,创未来
Heart to Heart
'
B.
运行程序后,打印:
迎亚运,创未来
C.
本段程序的功能是打开yayun.txt
D.
如果python程序同目录下不存在yayun.txt,将创建yayun.txt
试题编号:20230703-zm-09
试题类型:单选题
标准答案:D
10.
语句print(chr(ord('a')+5))的运行结果是?( )
A.
66
B.
e
C.
f
D.
g
试题编号:20230705-lxf-018
试题类型:单选题
标准答案:C
11.
表达式sum(map(int,'12345'))的返回值是?( )
A.
[1, 2, 3, 4, 5]
B.
['1', '2', '3', '4', '5']
C.
10
D.
15
试题编号:20230705-lxf-019
试题类型:单选题
标准答案:D
12.
下列选项中,结果与其他三项不同的是?( )
A.
print(list(range(1, 10, 2)))
B.
print(list(range(1, 11, 2)))
C.
print(list('13579'))
D.
print(list(map(int,['1', '3', '5', '7', '9'])))
试题编号:20230705-lxf-020
试题类型:单选题
标准答案:C
13.
divmod(-9, 2)的结果是?( )
A.
(-5, 1)
B.
(-1, -4)
C.
(-4, -1)
D.
(1, -5)
试题编号:20230705-lxf-021
试题类型:单选题
标准答案:A
14.
下列代码创建了4个变量,其中变量值最大的是?( )
a = round(3.65)
b = int(max('123'))
c = 7/2
d = abs(-3.9)
A.
a
B.
b
C.
c
D.
d
试题编号:20230705-lxf-022
试题类型:单选题
标准答案:A
15.
bool(0)的结果是?( )
A.
True
B.
False
C.
1
D.
0
试题编号:20230705-lxf-023
试题类型:单选题
标准答案:B
16.
语句set('2023')的返回值是?( )
A.
{2, 0, 2, 3}
B.
{0, 2, 3}
C.
{'2', '0', '2', '3'}
D.
{'0', '2', '3'}
试题编号:20230705-lxf-024
试题类型:单选题
标准答案:D
17.
a=[1,2,3,4,5],则sum(a)的值是?( )
A.
'[1,2,3,4,5]'
B.
'15'
C.
15
D.
'12345'
试题编号:20230705-lxf-025
试题类型:单选题
标准答案:C
18.
表达式str([1,2,3])的返回值是?( )
A.
['1', '2', '3']
B.
'[1, 2, 3]'
C.
['123']
D.
str函数只能将数字转换成字符串,表达式中的参数是一个列表,运行报错
试题编号:20230705-lxf-026
试题类型:单选题
标准答案:B
19.
下列选项中,对help函数的说法错误的是?( )
A.
可以使用help函数查看某个数据类型的帮助信息
B.
可以使用help函数查看某个函数的帮助信息
C.
可以使用help函数查看某个模块的帮助信息
D.
对于自己定义的变量,不可以使用help函数查看自定义变量的帮助信息
试题编号:20230705-lxf-027
试题类型:单选题
标准答案:D
20.
通过input()函数输入的数据类型是?( )
A.
int
B.
float
C.
str
D.
list
试题编号:20230705-lxf-028
试题类型:单选题
标准答案:C
21.
运行下面程序,错误的输入和输出数据是?( )
try:
x=int(input())
y=int(input())
m=divmod(x,y)
print(m)
except:
print('error')
else:
print('right')
finally:
print('OK')
A.
输入
1
0
输出
error
OK
B.
输入
0
5
输出
(0, 0)
right
OK
C.
输入
5
1
输出
(5, 0)
right
OK
D.
输入
5
0
输出
0
right
OK
试题编号:20230705-ppz-015
试题类型:单选题
标准答案:D
22.
运行下面程序,错误的输入和输出数据是?( )
try:
x=eval(input())
c=abs(x)
print(c)
except NameError:
print('NameError!')
except:
print('Other error!')
A.
输入
0
输出
Other error!
B.
输入
-2.5
输出
2.5
C.
输入
6
输出
6
D.
输入
abc
输出
NameError!
试题编号:20230705-ppz-017
试题类型:单选题
标准答案:A
23.
以下关于算法的描述错误的是?( )
A.
算法可以用自然语言、流程图、伪代码、编程语言等多种方式进行表示
B.
顺序结构、选择结构、循环结构是算法的3种基本结构
C.
算法可以没有输出,但必须有输入
D.
算法的执行步骤是有限的
试题编号:20230707-zy-033
试题类型:单选题
标准答案:C
24.
用冒泡排序对4,5,6,3,2,1进行从小到大排序,第二趟排序后的状态是?( )
A.
4 5 3 2 1 6
B.
4 3 2 1 5 6
C.
3 2 1 4 5 6
D.
2 1 3 4 5 6
试题编号:20230707-zy-034
试题类型:单选题
标准答案:B
25.
在对n个元素进行直接插入排序的过程中,一般共需要进行几趟?( )
A.
2
B.
n-1
C.
n
D.
n+1
试题编号:20230707-zy-035
试题类型:单选题
标准答案:B
二、判断题(共10题,共20分)
26.
十六进制数转换成十进制数,其位数一定变多。( )
正确
错误
试题编号:20230630-ylx-026
试题类型:判断题
标准答案:错误
27.
表达式int("ob110",8)的结果应是72。( )
正确
错误
试题编号:20230630-ylx-027
试题类型:判断题
标准答案:错误
28.
在Python中,readlines()每次按行读取文件内容,通常将读取到的内容放到一个字符串变量中,返回str类型数据。( )
正确
错误
试题编号:20230703-zm-012
试题类型:判断题
标准答案:错误
29.
下列程序的功能是将列表对象输出到CSV文件。( )
shuig=['苹果','香蕉','桃子','西瓜']
f=open('shuiguo.csv','w')
f.write(','.join(shuig)+'
')
f.close()
正确
错误
试题编号:20230703-zm-013
试题类型:判断题
标准答案:正确
30.
CSV格式存储数据采用逗号分隔元素,也可以存储二维数据。( )
正确
错误
试题编号:20230703-zm-014
试题类型:判断题
标准答案:正确
31.
以下代码的运行结果是False。( )
a = any([None,[],(),[{}]])
print(a)
正确
错误
试题编号:20230705-lxf-029
试题类型:判断题
标准答案:错误
32.
range(6)和range(0,6)的结果相同。( )
正确
错误
试题编号:20230705-lxf-030
试题类型:判断题
标准答案:正确
33.
运行下列代码后,列表a中保存的元素是从小到大按顺序排列的。( )
a = [5, 6, 4, 8, 2, 7, 3, 1]
sorted(a)
正确
错误
试题编号:20230705-lxf-031
试题类型:判断题
标准答案:错误
34.
使用min函数可以获取多个数字中的最小值。( )
正确
错误
试题编号:20230705-lxf-032
试题类型:判断题
标准答案:正确
35.
try:
x=int(input())
y=int(input())
n=x%y
print(n)
except ValueError:
print('ValueError!')
except ZeroDivisionError:
print('ZeroDivisionError!')
except:
print('Other error!')
当程序输入:
0
0
程序的运行结果是:
Other error!
正确
错误
试题编号:20230705-ppz-016
试题类型:判断题
标准答案:错误
三、编程题(共3题,共30分)
36.
学校图书馆为了方便查找管理书籍,给每本书编写了号码,[8,9,10,12,13,14,16,17,25,27],输入号码提示这本书号码排第几。
例如:输入12,输出:要查找的书号12排第4 。
请完善程序:
lst=[8,9,10,12,13,14,16,17,25,27]
hm=int(input('请输入书本号码'))
①
i,j=0,n-1
b=-1
while ② :
m=(i+j)//2
if ③ :
b=m
break
elif hm>lst[m]:
④
else:
j=m-1
if b==-1:
print('要查找的书号['+str(hm)+']不在列表lst中。')
else:
print('要查找的书号['+str(hm)+']排第'+ ⑤ )
试题编号:202312-P3-36
试题类型:编程题
标准答案:
参考程序:
lst=[8,9,10,12,13,14,16,17,25,27]
hm=int(input('请输入书本号码'))
n=len(lst)
i,j=0,n-1
b=-1
while i<=j:
m=(i+j)//2
if hm==lst[m]:
b=m
break
elif hm>lst[m]:
i=m+1
else:
j=m-1
if b==-1:
print('要查找的书号['+str(hm)+']不在列表lst中。')
else:
print('要查找的书号['+str(hm)+']排第'+str(b+1))
37.
书籍价格查询
有一个“/data/书籍存单.csv”文件,内容如下图所示。小明编写代码,想查询小说《封神榜》的价格,请补充代码中缺失的部分。
with open('/data/书籍存单.csv', 'r', encoding='utf-8') as f:
for line in f.readlines():
a = ① .split(",")
if a[0] == "封神榜" :
print( ② )
试题编号:202312-P3-37
试题类型:编程题
标准答案:
参考程序:
with open('/data/书籍存单.csv', 'r', encoding='utf-8') as f:
for line in f.readlines():
a = line.split(",")
if a[0] == "封神榜" :
print(a[1])
38.
当我们过马路的时候,经常会遇到红绿灯,你知道这些信号灯的时长是怎么来的吗?若要用python分析计算人行马路最短绿灯时长,我们需要知道马路的宽度s,行人的步行速度v以及行人的反应时长t0,因为绿灯的最短时长计算公式为t=s/v+t0。
不同的人有不同的行走速度。通常在正常成人、老人、小孩的步行速度中,应选取老人或者小孩的数据进行计算比较合理。
用Python模拟编写绿灯最短时长程序和测试输出结果(测试输入马路宽度为15)分别如下,请补全划线处代码:
v=1.2 #设置行走速度
t0=1 #设置行人反应时长
s=int(input("请输入马路的宽度(米):"))
t= ①
print(t)
#观察发现,在实际生活中,绿灯显示时长不可能为小数,因此若要上述输出结果正常,可以修改print(t)语句,那么你会如何修改?请在下方填入你的代码。
if t>int(t):
print( ② )
elif t==int(t):
print( ③ )
试题编号:202312-P3-38
试题类型:编程题
标准答案:
参考程序:
v=1.2 #设置行走速度
t0=1 #设置行人反应时长
s=int(input("请输入马路的宽度(米):"))
t=s/v+t0
if t>int(t):
print(int(t)+1)
elif t==int(t):
print(int(t))
学科网(北京)股份有限公司
$$