青少年软件编程(Python三级)等级考试试卷(2020年9月)

2023年05月25日

选择题

第 1 题 单选题

1.下列程序运行结果是?( )

a=12 b=23 c=str("a+b") print(c) Copy

A.35

B.1223

C.a+b

D.出现错误提示

第 2 题 单选题

通过算式1×23+1×22+0×21+1×20可将二进制1101 转为十进制,下列进制转换结果正确的是?( )

A.0b10转为十进制,结果是2

B.0d10转为十进制,结果是8

C.0x10转为十进制,结果是10

D.0o10转为十进制,结果是16

第 3 题 单选题

语句float('something') 抛出的异常名称为?( )

A.ValueError

B.ImportError

C.IndexError

D.FileNotFoundError

第 4 题 单选题

在Python语言中,关于bin(0x11)的功能,下列说法正确的是?( )

A.将十进制数11转换为二进制

B.将十六进制数11转换为二进制

C.将二进制数11转换为十进制

D.将十六进制数11转换为十进制

第 5 题 单选题

问题如图所示,用计算机解决该问题,比较适合使用?( )

A.解析算法

B.枚举算法

C.冒泡算法

D.二分查找算法

第 6 题 单选题

将十进制数30转换为十六进制数,最低位上是?( )

A.c

B.d

C.e

D.f

第 7 题 单选题

以下表达式的值为Fasle的是?( )

A.all (())

B.all ([])

C.all ((0,))

D.all([1,2])

第 8 题 单选题

现在一组初始记录无序的数据“7,9,3,2,5”使用选择排序算法,按从小到大的顺序排列,则第一轮排序的结果为?( )

A.7,9,3,2,5

B.3,2,5,7,9

C.2,3,5,7,9

D.2,9,3,7,5

第 9 题 单选题

关于hex()函数,描述不正确的是?( )

A.hex()函数的功能是将十进制整数转换成十六进制数

B.hex()函数的参数是一个十进制整数

C.hex()函数的返回值是一个十六进制数

D.hex()函数的返回值是一个字符串

第 10 题 单选题

下列关于表达式的计算结果,不正确的是?( )

A.hex(0x37) 的结果是'0x37'

B.hex(0o67) 的结果是'0x37'

C.hex(0b1011) 的结果是'0xb'

D.hex(int('11',16))的结果是'0x17’

第 11 题 单选题

有如下程序段:

ls=['武汉','温州','香港','重庆']

f=open('city.csv','w')

f.write(','.join(ls)+'\n')

f.close()

下列说法正确的是?( )

A.f=open('city.csv','w')说明当前是读取模式

B.f.write(','.join(ls)+'\n')语句改成f.write(' '.join(ls)+'\n'),结果依然以逗号分隔

C.删除f.close()语句,也能保存文件

D.当前程序的功能是将列表对象输出到CSV文件

第 12 题 单选题

异常是指?( )

A.程序设计时的错误

B.程序编写时的错误

C.程序编译时的错误

D.程序运行时的错误

第 13 题 单选题

关于input()函数,描述不正确的是?( )

A.input()函数是输入函数

B.input()函数的功能是从键盘读入一行文本

C.input()函数不需要参数

D.input()函数接收到的数据类型是数值类型

第 14 题 单选题

有如下程序段:

strSZ=["语文","数学","英语","科学"]

str=strSZ[1]

print(str)

程序运行后,输出的结果是?( )

A.语文

B.数学

C.英语

D.科学

第 15 题 单选题

print(min(80,100,max(50,60,70)))的运行结果是?( )

A.80

B.100

C.50

D.70

第 16 题 单选题

下列表达式的结果不为'f'的是?( )

A.'g'-1

B.chr(ord('g')-1)

C.chr(ord('F')+32)

D.chr(ord('G')+31)

第 17 题 单选题

关于查找的说法,下列说法正确的是?( )

A.顺序查找要先对数据进行排序

B.进行顺序查找,一定能找到数据

C.二分查找是一种高效的查找方法

D.二分查找法不需要对数据进行排序

第 18 题 单选题

用open()打开文件时,返回的是?( )

A.列表

B.字符串

C.文件对象

D.元组

第 19 题 单选题

打开a.txt文件后,将“See you next time.”写入文件,下列语句不正确的是?( )

A.f.write('See you next time.\n')

B.f.write(['See',' you',' next',' time','.\n'])

C.f.writelines(['See you next time.\n'])

D.f.writelines(['See',' you',' next',' time','.\n'])

第 20 题 单选题

语句运行后,结果是?( )

 for i in range(5):

	 print(i)

A.

0

1

2

3

4

B.

01234

C.

1

2

3

4

5

D.

12345

第 21 题 单选题

若输入指令是list('1234'),结果是?( )

A.('1', '2', '3','4')

B.['1', '2', '3','4']

C.{'1', '2', '3','4'}

D.{ 1, 2, 3, 4, }

第 22 题 单选题

表达式divmod(36,10) 的值为?( )

A.(3,4)

B.(6,3)

C.(3,6)

D.(4,3)

第 23 题 单选题

把文件写入到csv文件的程序段如下:

ls=[‘北京’,’上海’,’天津’,’重庆’]

f=open("city.csv","w")

______________

	f.write(','.join(row)+'\n')

f.close()

划线处的代码应该为?( )

A.for i in ls:

B.for row in ls:

C.for i in range(len(ls)):

D.for row in range(len(ls)):

第 24 题 单选题

ascii(chr(65))的值是?( )

A."'a'"

B.'A'

C."'A'"

D.'B'

第 25 题 单选题

int()函数根据传入的参数创建一个新的整数,下列返回的值不是0的是?( )

A.int(1.0)

B.int(0.5)

C.int(0)

D.int()

判断题

第 26 题 判断题

小明准备编写一个程序,把新同学的联系方式保存到一个名为list的现有CSV格式文件里。实现这一功能可以使用语句f=open('list.csv','+')来打开list.csv文件。

A.正确 B.错误

第 27 题 判断题

语句float('2020') 运行后的输出结果是:2020

A.正确 B.错误 第 28 题 判断题

在Python中,代码print('{:8}'.format(12))中数字8的作用是按8位字符宽度输出数字12。

A.正确 B.错误

第 29 题 判断题

''.join(['张 三','李 四']).replace(' ','').split('')可以去掉列表项中姓名中间的空格。

A.正确 B.错误

第 30 题 判断题

二进制数11110011转化为十六进制数为F3。

A.正确 B.错误

第 31 题 判断题

在Python中,执行print(ord('a')+12)语句,能够得到一个数字结果。

A.正确 B.错误

第 32 题 判断题

round(5566.6)=5567,所以说round()函数其实是取整函数。

A.正确 B.错误

第 33 题 判断题

数据处理,通常是指利用四则运算中的加、减、乘、除来进行运算,从而得到正确结果。

A.正确 B.错误

第 34 题 判断题

hex函数可以将十进制数转换成十六进制数。在Python交互式编程环境下,执行语句hex(2020)后,显示的运行结果是'7e4'。

A.正确 B.错误

第 35 题 判断题

异常处理结构中,try程序段中的每一个运行错误语句,都要转移到except程序段中,执行异常处理语句。

A.正确 B.错误

编程题

第 1 题 问答题

请读取1班和2班语文学科的成绩文件“score.csv” 的数据,数据内容如下图显示:

下列代码实现了读取数据并分别统计1班和2班语文成绩的和,请你补全代码。 (考生对于本题不需要运行通过,请直接编写代码确认无误后保存答案即可)

import csv
with open("    ①    ") as f:
	rows = list(csv.reader(f))
	sum1 = 0
	sum2 = 0
	for row in rows[1:]:
		if int(     ②    ) == 1:
			sum1 += int(row[1])
		else:
			sum2 += int(row[1])
	print(    ③   )

第 2 题 问答题

牧场举行联欢会,n头奶牛自发举行歌咏比赛。邀请了山羊公公、斑马哥哥、白兔弟弟、小喵妹妹一共四位担任歌咏比赛的评委。评比规则参赛选手的最终得分为所有评委打分的平均分。编程输出每位参赛选手的最终得分,请你补全代码。

n=int(input())
for i in range(   ①   ):
	a=[]
	for j in range(0,4):
	   x=int(input())
	   a.append(   ②     )
	print(      ③     / 4)

第 3 题 问答题

科技小组分2个小队搜集到西红柿生长的数据信息。2个小队将数据进行了从小到大排序: a = [1,3,4,6,7,13,17,21], b = [2,5,6,8,10,12,14,16,18] ,请明明将这2个小队的数据进行合并,生成为一个从小到大有序的列表。

输入:

1,3,4,6,7,13,17,21 
2,5,6,8,10,12,14,16,18 

输出:

[1,2,3,4,5,6,6,7,8,10,12,13,14,16,17,18,21] 

请帮明明编写程序实现上述功能,或补全代码。

x = input()
s = x.split(',')
a=[]
for i in range(    ①     ):
   a.append(int(s[i]))
y = input()
s = y.   ②    
b=[]
for i in range(len(s)):
   append(int(s[i]))
ret = []
i = j = 0
while len(a) >= i + 1 and     ③    :
   if a[i] <= b[j]:
			④     
	  i += 1
   else:
	  ret.append(b[j])
	  j += 1
if len(a) > i:
   ret += a[i:]
if len(b) > j:
		  ⑤     
print(ret)