当前位置: 首页 > news >正文

2025年03月中国电子学会青少年软件编程(Python)等级考试试卷(三级)真题

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

分数:100 题数:38

答案解析:https://blog.csdn.net/qq_33897084/article/details/147341388

一、单选题(共25题,共50分)

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©+‘\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
r模式可以读取文件内容;
b模式是以二进制的方式打开文件;
a模式可以写入文件,并且不覆盖原有的文件内容。
综上所述,本题选择C选项。

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

A. Python中列表、元组中的元素数据都不可以重复
B. 如果csv文件存储的是二维数据,每一行则是一维数据
C. read()函数和readlines()函数都可以读取整个文件,但是read()函数读取的文件内容存放在一个列表里,readlines()函数读取的文件内容存放在一个大字符串里
D. writelines()函数和readlines()函数都可以向文件写入多行内容
read()函数读取的文件内容存放在字符串中,readlines()函数读取的文件内容存放在列表中,选项C错误;
readlines()的作用是读取文件内容,选项D错误;
本题选择B选项

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. 余数是 0
正确
程序结束
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中无法处理
输入25和5,计算结果是5.0,程序能正常运行,但不能说明程序是完美的,因为没有考虑除数为0的情况,A错误;当输入为’q’时,程序将发生中断,退出计算,B错误;
遇到无效输入(如0)时,ans=int(fn)/int(sn)语句将发生错误崩溃,C正确;Python中提供了try-except语句来处理异常,D错误。

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

A. 29
B. 81
C. -29
D. 83

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

b=‘天天向上’
print(b2)
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’

二、判断题(共10题,共20分)

26. 十进制数转化为二进制,使用除2反向取余法,十进制转化为其他进制,也可以使用相同的方法,只是除数采用其他进制的基本数码个数。( )
27. Python可以处理一维数据、二维数据和多维数据。( )
28. (如图)name.csv文件内容如下,下面程序输出的结果是 ‘Alice’, ‘Ida’, ‘Sam’, ‘Otis’, ‘Gina’ 。( )

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

29. 下列程序,当输入A时,运行结果是:错误,请输入数字 。( )

try:
   x=int(input())
   y=int(input())
   n=x/y
   print(n)
except ValueError:
    print(‘错误,请输入数字’)
except ZeroDivisionError:
    print(‘错误,除数不能为0’)
except :
    print(‘其它错误!’)

30. 若n=[2,3,5,9,12,6],则max(n)+min(n)+sum(n)的值是52。( )
31. Python中bool()函数用于将给定参数转换为布尔类型,参数省略的情况下返回True值。( )
32. Python中若求字符的ASCII码值,可以使用ord()函数,而不是ascii()。( )
33. Python中range(10)表示生成整数序列范围为0~9,并不能生成10。( )
34. 下面三行代码可以正常执行。( )

txt1 = “黑白白白黑白黑白黑白黑白”
a = txt1.count(“白”) - txt1.count(“黑”)
print(a)

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

三、编程题(共3题,共30分)

36. 统计身高

某班学生进行了身高测试,身高数据存在文件“shengao.csv”中。数据内容如下图所示。
image
小明编写了如下程序,读取身高文件中的数据,并计算男生的平均身高(保留两位小数),请你补全代码。
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(“男生的平均身高是:”,        ③        )
 
评分标准:
(1)shengao.csv 或等效答案;(1分)
(2)sum+=int(row[2]) 或等效答案;(2分)
(3)”%.2f”%(sum/n) 或等效答案。(1分)

37. 课本分配

某学校由于缺乏课本,信息课要两人共读一本课本,数学课要三人共读一本课本,语文课要四人共读一本课本。书的总数是52本。问信息书、数学书、语文书各有多少本?(每门功课至少要有一本书)
for i in range(1, 51):# 信息书
    for j in         ①        : # 数学书
        k =          ②         # 语文书
        if i2 == j3 and j3==k4:
            print(‘信息书共有%d本,数学书共有%d本。语文书有%d本’ % (        ③        ) )
评分标准:
(1)range(1, 51) 或等效答案;(4分)
(2)52 - i - j 或等效答案;(3分)
(3)i, j, k 或等效答案。(3分)

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©
 
评分标准:
(1)len© 或等效答案;(3分)
(2)count-1 或等效答案;(3分)
(3)count-1-i 或等效答案;(3分)
(4)c[j]>c[j+1] 或等效答案;(3分)
(5)c[j]=c[j+1] 或等效答案。(4分)
说明:第(5)空,若将交换两个元素的三行代码私自统一改为“c[j],c[j+1]=c[j+1],c[j]”,得2分。

答案解析:https://blog.csdn.net/qq_33897084/article/details/147341388

相关文章:

  • 非比较排序——计数排序
  • GitHub创建远程仓库
  • 【Win】 cmd 执行curl命令时,输出 ‘命令管道位置 1 的 cmdlet Invoke-WebRequest 请为以下参数提供值: Uri: ’ ?
  • 力扣刷题Day 20:柱状图中最大的矩形(84)
  • 万物对接大模型:【爆火】MCP原理与使用指南
  • 广东水利水电安全员 B 证考试精选题
  • AutoSAR从概念到实践系列之MCAL篇(一)——MCAL架构及其模块详解
  • http请求和websocket区别和使用场景
  • o3和o4-mini的升级有哪些亮点?
  • 纯CSS实现自动滚动到底部
  • C++ 二叉搜索树
  • 安装多个DevEco Studio版本,如何才能保证各个版本不冲突?
  • 「仓颉编程语言」Demo
  • 网络互连与互联网3
  • 从零到精通:用 GoFrame 和 go-resty 优雅调用第三方 HTTP API
  • 消息队列生产者投递的高可靠性与一致性保障方案
  • 【Linux】深入理解Linux文件系统:从C接口到内核设计哲学
  • MCP 协议:技术架构与核心机制深度解析——为智能时代打造统一“接口”
  • Linux | I.MX6ULL Uboot 编译(12)
  • opencv函数展示3
  • 《上海国际金融中心进一步提升跨境金融服务便利化行动方案》印发
  • 商务部24日下午将举行发布会,介绍近期商务领域重点工作情况
  • 竹子砍了地却种不上,贵州赤水被指“整改复耕”存形式主义
  • 北京理工大学解除宫某聘用关系,该教授此前被指骚扰猥亵学生
  • 谷雨播种正当时,上海黄道婆纪念公园种下“都市棉田”
  • 收藏家尤伦斯辞世,曾是中国当代艺术的推手与收藏者