202503 青少年软件编程等级考试Python三级真题 建议答题时长:60min
1. 单选题

学校进行体育跳远期末考试,每人有三次机会,取最远的一次作为最后成绩,1班的成绩如下,CLASS1=[['李明',150,152,147],['王红',146,143,146],['刘岩',148,152,150],['张坤',156,152,154]],那么输出张坤的最好成绩,下列代码正确的是?( )

A

CLASS1[4][1]

B

CLASS1[4][0]

C

CLASS1[3][1]

D

CLASS1[3][0]

2. 单选题

一所小学有六个年级,每个年级有5个班,现用二进制对所有班级进行编码,最少需要几位二进制?( )

A

4位

B

5位

C

6位

D

7位

3. 单选题

以下哪项Python表达式的运行结果是正确?( )

A

int("1001",2),结果为9

B

int("26",8),结果为21

C

int("1a",16),结果为25

D

int("0x8e",16),结果为143

4. 单选题

有如下Python程序:

c=['语文','数学','英语']

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

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

f.close()

下列说法正确的是?( )

A

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

B

运行后,程序不报错,也不回应

C

如果没有.csv文件,则会新建一个.csv文件和.py文件在同一个目录

D

打开.csv文件是空白的

5. 单选题

列表list=[7,9,3,6,2,5]使用选择排序算法,按从小到大的顺序排列,则第二轮排序的结果为?( )

A

2,9,3,6,7,5

B

2,3,9,6,7,5

C

2,3,5,6,7,9

D

2,3,7,9,6,5

6. 单选题

对列表对象a=[3,7,2,5,8,6],用插入排序算法进行升序排序。小明编写了如下代码,请选择代码中横线处的内容?( )

a = [3,7,2,5,8,6]
count=len(a)
for i in range(1,count):
   key=a[i]
   j=i-1
   while j>=0 and a[j]>key:
      ________
       j-=1
   a[j+1]=key
print(a)

A

a[j+1]=a[j]

B

a[j]=a[i]

C

a[j-1]=a[j]

D

a[j]=a[j-1]

7. 单选题

计算三角形面积,可以采用的算法是?( )

A

解析算法

B

枚举算法

C

排序算法

D

查找算法

8. 单选题

二进制数 11001010 转换为十六进制是?( )

A

202

B

CA

C

AC

D

A

9. 单选题

表达式hex(12)的返回值是?( )

A

'0x12'

B

'0xc'

C

'0b12'

D

'0bc'

10. 单选题

想要在一个csv文件中写入内容并且不覆盖原来的数据,应该使用什么模式打开文件?( )

A

w

B

r

C

a

D

b

11. 单选题

以下说法正确的选项是?( )

A

Python中列表、元组中的元素数据都不可以重复

B

如果csv文件存储的是二维数据,每一行则是一维数据

C

read()函数和readlines()函数都可以读取整个文件,但是read()函数读取的文件内容存放在一个列表里,readlines()函数读取的文件内容存放在一个大字符串里

D

writelines()函数和readlines()函数都可以向文件写入多行内容

12. 单选题

f=open('1.txt','w')
f.write('\n\n'.join(['桃子', '苹果', '橙子']))
f.close()
对于以上代码,说法正确的是?( )

A

执行以上语句后,1.txt中会写入3行,分别是桃子、苹果、橙子

B

执行以上语句后,1.txt中会写入5行,分别是桃子、空行、苹果、空行、橙子

C

执行以上语句后,1.txt中会写入6行,分别是空行、桃子、空行、苹果、空行、橙子

D

执行以上语句后,1.txt中会写入6行,分别是桃子、空行、苹果、空行、橙子、空行

13. 单选题

下列程序,当输入0时,运行结果是?( )
try:
  x=9
  y=int(input())
  n=x%y
  print('余数是',n)
except:
   print('错误')
else:
   print('正确')
finally:
   print('程序结束')

A

B

错误

C

D

程序结束

14. 单选题

Python表达式divmod(9,-2)的值是?( )

A

(-5, -1)

B

(-5, 1)

C

(5, -1)

D

[-5, -1]

15. 单选题

若a=set('123456'),b=set('567890'),则{'2', '3', '1', '4'}可能是下列哪个选项的结果?( )

A

a&b

B

a|b

C

a-b

D

a+b

16. 单选题

小明编写了一个简易除法计算器,代码如下:

while True:

   fn=input("被除数:")

   if fn=="q":

       break

   sn=input("除数:")

   if sn=="q":

       break

   ans=int(fn)/int(sn)

   print(ans)有关这段代码,说法正确的是?( )

A

分别输入25和5测试程序,能输出结果,说明程序是完美的

B

若输入的第二个数为0,程序将中断,退出计算

C

如遇到无效输入,程序可能会发生错误而崩溃

D

除数为0时,将发生异常,这种异常在Python中无法处理

17. 单选题

已知x=[67,81,45,38,55,-29,83],那么print(max(x))输出的结果将是?( )

A

29

B

81

C

-29

D

83

18. 单选题

下列代码的输出结果是?( )

b='天天向上'

print(b*2)

A

天天天天向向上上

B

天天向上天天向上

C

天天向上*2

D

天天向上2

19. 单选题

Python表达式len(str(1234+5678))的结果是?( )

A

9

B

5

C

4

D

14

20. 单选题

Python表达式round(24/7)的值是?( )

A

3.0

B

3

C

3.4

D

3.43

21. 单选题

Python中关于ord()函数,下列说法正确的是?( )

A

该函数的功能是将整数转换为字符串

B

该函数的功能是将ASCII码值转换为相应字符

C

该函数的功能是将数字字符串转换为整数

D

该函数的功能是返回字符的ASCII码值

22. 单选题

有如下Python程序代码:

a=input(“第一个数”)

b=input(“第二个数”)

print(a+b)

若输入的数据是5和3,那么程序的输出结果是?( )

A

53

B

8

C

a+b

D

5+3

23. 单选题

若st=('I love China.','Me too.'),那么执行语句list(st)的结果是?( )

A

['I love China.', 'Me too.']

B

['I','love','China','.','Me','too','.']

C

[('I love China.','Me too.')]

D

['I','l','o','v','e','C','h','i','n','a','.','M','e','t','o','o','.']

24. 单选题

已知A的ASCII码值为65,a的ASCII码值为97,chr(ord(min('Bike'))+2)的结果是?( )

A

68

B

103

C

'D'

D

'g'

25. 单选题

已知a,b,c,d=map(str,[2,0,2,4]),那么d的值是?( )

A

2

B

'2'

C

4

D

'4'

26. 判断题

十进制数转化为二进制,使用除2反向取余法,十进制转化为其他进制,也可以使用相同的方法,只是除数采用其他进制的基本数码个数。( )

A

B

27. 判断题

Python可以处理一维数据、二维数据和多维数据。( )

A

B

28. 判断题

(如图)name.csv文件内容如下,下面程序输出的结果是 'Alice', 'Ida', 'Sam', 'Otis', 'Gina' 。( )

with open('name.csv','r') as f:            n=f.read().strip().split(',')
print(n)

A

B

29. 判断题

下列程序,当输入A时,运行结果是:错误,请输入数字 。( )
try:
  x=int(input())
  y=int(input())
  n=x/y
  print(n)
except ValueError:
   print('错误,请输入数字')
except ZeroDivisionError:
   print('错误,除数不能为0')
except :
   print('其它错误!')

A

B

30. 判断题

若n=[2,3,5,9,12,6],则max(n)+min(n)+sum(n)的值是52。( )

A

B

31. 判断题

 

Python中bool()函数用于将给定参数转换为布尔类型,参数省略的情况下返回True值。( )

A

B

32. 判断题

Python中若求字符的ASCII码值,可以使用ord()函数,而不是ascii()。( )

A

B

33. 判断题

Python中range(10)表示生成整数序列范围为0~9,并不能生成10。( )

A

B

34. 判断题

下面三行代码可以正常执行。( )

txt1 = "黑白白白黑白黑白黑白黑白"

a = txt1.count("白") - txt1.count("黑")
print(a)

A

B

35. 判断题

二进制111010101转化为十六进制数为1e5。( )

A

B

36. 编程题

课本分配

某学校由于缺乏课本,信息课要两人共读一本课本,数学课要三人共读一本课本,语文课要四人共读一本课本。书的总数是52本。问信息书、数学书、语文书各有多少本?(每门功课至少要有一本书)

for i in range(1, 51):# 信息书

   for j in         ①        : # 数学书

       k =          ②         # 语文书

       if i*2 == j*3 and j*3==k*4:

           print('信息书共有%d本,数学书共有%d本。语文书有%d本' % (        ③        ) )

查看答案
37. 编程题

统计身高

某班学生进行了身高测试,身高数据存在文件“shengao.csv”中。数据内容如下图所示。

小明编写了如下程序,读取身高文件中的数据,并计算男生的平均身高(保留两位小数),请你补全代码。

import csv
with open("/data/                ") as f:
   rows=list(csv.reader(f))
   sum=0
   n=0
   for row in rows[1:]:
       if row[1]=="男":
                  ②        
           n=n+1
   print("男生的平均身高是:",       ③        )

查看答案
38. 编程题

冒泡排序

下列程序用冒泡排序算法将数列从小到大输出,请你补全代码。c=[3,6,11,18,9,12,5,2,22,10]
count=                
for i in range(0,       ②        ):
   for j in range(0,       ③        ):
       if       ④        :
           t=c[j]
                ⑤        
           c[j+1]=t
print(c)

查看答案
试题目录
单选题
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
判断题
26 27 28 29 30 31 32 33 34 35
编程题
36 37 38
赣ICP备20007335号-2