13 202403青少年软件编程(Python)等级考试试卷(二级) 二级真题

标签:
普通文字版答案
2024-11-01
| 14页
| 96人阅读
| 2人下载

内容正文:

青少年软件编程(Python)等级考试试卷(二级) 202403真题与解析 分数:100  题数:37 测试时长:60分钟 1、 单选题(共25题,共50分) 1.期末考试结束了,全班的语文成绩都储存在列表 score 中,班主任老师请小明找到全班最高分,小明准备用 Python 来完成,以下哪个选项,可以获取最高分呢?( ) A.min(score) B.max(score) C.score.max() D.score.min() 2.已知列表 a = [1,2,3,4,5,6],想输出[2,3,4],可以使用以下哪个语句?( ) A.print(a[2:4]) B.print(a[2:5]) C.print(a[1:4]) D.print(a[0:4]) 3.第一小组成员姓名和年龄如下 dic1 = {'张明':12,'李红':12,'王长江':13} 现新增成员龙小勤,年龄为 13,以下代码正确的是?( ) A. dic1['龙小勤'] = 13 B.['龙小勤'] = 13 C.dic1.['龙小勤'] = 13 D.dic1('龙小勤') = 13 4.已知列表 ls = list(range(3,33,3)),则 ls 第 5 个元素是?( ) A.15 B.18 C.21 D.24 5.执行如下代码,tuple 不属于元组的选项是?( ) A.tuple = () B.tuple = ('北京') C.tuple = ('芜湖',) D.tuple = ('北京', '芜湖', '合肥', '上海') 6.已知 festival = {"正月初一":"春节", "正月十五":"元宵节", "五月初五":"端午节", "八月十五":"中秋节"},则输出 "正月初一" 对应节日的代码是?( ) A.print(del festival["正月初一"]) B.print(festival["正月初一"]) C.print(festival.clear()) D.print(festival[1]) 7.已知列表 name=["德丽莎"],运行以下哪段代码,可打印出结果“德丽莎天下 第一可爱!”(不包含双引号)?( ) A. print(name+"天下第一可爱!") B.print(name[1]+"天下第一可爱!") C.print(name[0]+"天下第一可爱!") D.print(name+天下第一可爱!) 8.k为整型,下述 while 循环执行的次数为?( ) k = 20 while k >1 : print(k) k=k//2 A.3 B.4C.5 D.6 9.以下程序的输出结果是?( ) ls1=list() ls2=['吉林','黑龙江','辽宁','东北三省'] ls1+=ls2 ls1.clear() print(ls1) A.['吉林','黑龙江','辽宁'] B.['吉林','黑龙江','辽宁','东北三省'] C.终端区会报错 D.[]正确答案:D 10.已知列表 ls=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],以下哪个选项无法将列表 ls 逆序 排列?( ) A.ls.sort(reverse=True) B.sorted(ls,reverse=True) C.sort(ls,reverse=True) D.sort(ls,reverse=True) 11.已知字典 jd={'哈尔滨':['冰雪大世界','侵华日军第七三一部队罪证陈列馆','太阳岛','中央大街'],'沈阳':['沈阳故宫','辽宁省博物馆','张学良旧居','清昭陵'],'长春':['伪满皇宫博物院','净月潭','长影世纪城','长春一汽']},字典 jd的长度是?( ) A.3 B.4 C.12 D.15 12.以下哪段程序的运行结果无法打印 1-100 之间所有整数的和?( ) A.print(sum(range(1,100)))B.i=1 he=0 while i<=100: he+=i i+=1 print(he) C.he=0 for i in range(1,101): he+=i print(he) D.print(sum(range(1,101))) 13.小明的篮球教练告诉小明,如果他能连续投中 3 次中投,并且换手运球 100次,就可以让他加入球队,请问教练的要求,可以用哪个逻辑运算符来表示?( ) A.or B.and C.not D.!= 14.某小学 1-6 年级都各有 8 个班,将年级和班级数存入如下列表: lst=[['一年级', '二年级', '三年级', '四年级', '五年级', '六年级'], ['1 班', '2 班', '3 班', '4 班', '5 班', '6 班', '7 班', '8 班']] 请问下列选项中能正确打印出 '四年级 6 班'(不含引号) 的字样的是哪一个?( ) A.lst[0][4]+lst[1][5] B.lst[0][4]+lst[1][6] C.print(lst[0][4]+lst[1][6]) D.print(lst[0][3]+lst[1][5]) 15.如果有一个变量 name = "小明",现在需要另一个变量 str 中使用 name 变量的值,并且想要在这个值后面加上"同学"两个字,应该怎么做?( ) A.str = "同学".add(name).add("同学") B.str = name + "同学" C.str = "同学" . name . "同学"D.str = name.append("同学") 16.小明在做数学题,题目要求找出来从 1 数到 100 中不能被 7 整除的数字(即跳过 7 的倍数不显示)。以下哪个 Python 循环可以帮他完成这个任务?( ) A.i = 1 while i <= 100: if i % 7 != 0: print(i) i += 1 B.i = 1 while i >= 100: if i % 7 != 0: print(i) i += 1 C.i = 1 while i <= 100: if i % 7 == 0: break print(i) i += 1D.for i in range(1, 101): if i % 7 == 0: print(i) else: continue 17.已知字符串 str="Happy new year",则执行命令 print(list(str))的输出结果是?( ) A.['H', 'a', 'p', 'p', 'y', 'n', 'e', 'w', 'y', 'e', 'a', 'r'] B.[H,a,p,p,y,n,e,w,y,e,a,r] C.['H', 'a', 'p', 'p', 'y', ' ', 'n', 'e', 'w', ' ', 'y', 'e', 'a', 'r'] D.[H,a,p,p,y, ,n,e,w, ,y,e,a,r] 18.已知元组 tuple = (1,2,3,4,5),以下语句正确的是?( ) A.t = tuple[2] B.tuple[2] = '6' C.tuple.append(6) D.tuple.pop() 19.以下关于字典的说法不正确的是?( ) A.字典中的值不支持索引查询 B.字典以关键字为键,关键字可以是任意不可变数据类型 C.字典里面的值(不是键)可以包含列表和其他数据类型 D.字典是一种有序的对象集合,可以用下标进行访问 20.创建列表时,使用下列哪个符号?( ) A.() B.[] C.<> D.'' 21.运行下列程序,要想输出的结果是小明的身高是 1.55。横线处需要填入的代码为?( ) height = 1.55 print('小明的身高是____。' % height) A.%d B.%f C.%.f D.%.2f 22.关于分支结构的说法错误的是?( ) A.在 Python 中,分支结构一般由 if、elif、else 组成 B.在 Python 中,分支结构一般有单分支结构、双分支结构和多分支结构 C.在 Python 中,分支结构必须包含 else 语句 D.在 Python 中,if 语句后面跟条件表达式 23.春节(Spring Festival),是中国民间最隆重最富有特色的传统节日之一。春节民俗众多,以下列表保存了春节的常见民俗,list_sf = ['喝腊八粥', '祭灶神', '扫尘', '贴春联', '除夕守岁', '吃饺子', '拜年', '逛庙会'],上面民俗中少了非常重要的一项:压岁钱。下列哪一项能将"压岁钱",存入 list_sf 列表中 "吃饺子" 元素的后面?( ) A.list_sf.insert(0, '压岁钱') B.list_sf.insert(5, '压岁钱') C.list_sf.insert(6, '压岁钱') D.list_sf.insert(7, '压岁钱') 24.定义元组 tup1 = ('快乐', '你好', '生日', '中国', '祖国', '祝福'),执行语句:print( tup1[-5] + tup1[3] ),得到的结果是?( ) A.你好祖国 B.生日快乐 C.祝福祖国 D.你好中国 25.下列说法中,错误的是?( ) A.break 语句可以跳出 for 和 while 的循环体 B.如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行 C.continue 语句被用来告诉 Python 跳过当前循环中的本次循环,然后继续进行下一次循环 D.Python 中的 for 循环可以使用 else 语句来在迭代完成后执行特定操作。当 for循环正常结束时(没有被 break 或者 return 等提前退出),不会执行 else 语句下面的代码。 二、判断题(共 10 题,每题 2 分,共 20 分) 26.元组中的元素可以是不同的数据类型。( ) 27.for 循环能实现的功能,while 循环也可以实现。( ) 28.死循环无法退出,没有任何作用。( ) 29.通过以下代码,可以访问列表 age 中的每一个元素。( ) age=[15,18,16,19,19] for it in age: print(age[it]) 30.'ya'*3 的返回值为'yayaya'。类比数学的逆运算,'yayaya'/3 的结果是'ya'。( ) 31.在 Python 中,可使用 d1={}的方式,创建一个空字典。( )正确 32.表达式(1,2,3)==(3,2,1)的结果是 True。( ) 33.'星期'+4 的结果是'星期 4'。( ) 34.条件判断语句 if 's' in 'string':与 if s in 'string':是等效的,结果也一定 是一样的。( ) 35.每条 if 语句的核心都是一个值为 True 或 False 的表达式,这种表达式为条件语句。( ) 三、编程题(共 2 题,共 30 分) 36.请编写程序求一个长方形周长和面积的计算器。 要求:(1)用户从控制台输入长和宽(有可能是小数,单位是厘米); (2)如果用户输入的数不大于 0(不考虑浮点数之外的数据类型),显示信息:“输入有误,请重新输入!”; (3)输出长方形的周长和面积,结果保留两位小数,并注明哪个是周长,哪个是面积。 提示:周长公式:周长=(长+宽)*2 面积公式:面积=长*宽 37.某小学女篮校队招募新成员,要求加入女篮校队的成员身高在 135 厘米以上(不含 135 厘米)。本次报名的人员有 10 人,她们的身高分别是 125、127、136、134、137、138、126、135、140、145。请问本次女篮校队能够招募多少新成员,并将新成员的身高按照从矮到高的身高排序输出? 要求: (1)必须使用列表或者元组; (2)输出格式:“女篮校队新增成员数目:*,她们的身高从矮到高分别是:**”(注:*代表女篮校队招募的新成员数目;**代表从矮到高新成员的身高。) 参考答案及解析: 一、单选题答案及解析 1. B - 解析:`max(score)`可以获取列表`score`中的最高分;`min(score)`获取最低分;列表没有`.max()`和`.min()`方法。 2. C - 解析:列表切片中,`a[1:4]`表示从索引1开始到索引4(不包括4)的元素,即[2, 3, 4]。 3. A - 解析:向字典中添加键值对的正确方式是`字典名[键] = 值`,所以`dic1['龙小勤'] = 13`正确。 4. D - 解析:本题主要考察的实 range()的使用,本题中 ls 的元素有从 3 开始,到 33 结束 (不包含 33),步长为 3 的元素构成,即:[3, 6, 9, 12, 15, 18, 21, 24, 27, 30], 所以第 5 个数为:15 5. B - 解析:A选项`tuple = ()`是一个空元组;C选项`tuple = ('芜湖',)`是一个只有一个元素的元组;D选项是一个包含多个元素的元组;B选项`tuple = ('北京')`创建的是字符串而不是元组。 6. B - 解析:字典通过键访问值,`print(festival["正月初一"])`可以输出“正月初一”对应节日。A选项`del`是删除操作,不能输出值;C选项`clear()`是清空字典;D选项字典不能通过索引1访问。 7. C - 解析:列表通过索引访问元素,`name[0]`是“德丽莎”,然后进行字符串连接,`print(name[0]+"天下第一可爱!")`可以输出结果。 8. B - 解析:k=20,每次执行 k=k//2,k 循环过程中的值依次变化为:20,10,5,2,1,当 k=1 时, 循环条件 k>1 不成立,退出循环,故循环共计 4 次。正确答案为 B。 9. D - 解析:`ls1 += ls2`将`ls2`的元素添加到`ls1`中,然后`ls1.clear()`清空列表,所以最后输出空列表`[]`。 10. C - 解析:`sort()`方法是对列表进行原地排序,正确的用法是`ls.sort(reverse=True)`,不能直接使用`sort(ls,reverse=True)`。A、B、D选项的方法可以将列表逆序排列。 11. A - 解析:字典的长度是指字典中键值对的个数,这里`jd`中有三个键值对,所以长度是3。 12. A - 解析:`print(sum(range(1,100)))`计算的是1到99的和,不包括100。B、C、D选项都能正确计算1到100之间所有整数的和。 13. B - 解析:连续投中3次中投并且换手运球100次,需要用“与”(`and`)逻辑运算符表示。 14.D - 解析:题中列表 lst 为嵌套列表,'四年级'为 lst[0][3],'6 班'为 lst[1][5],打印完整的' 四年级 6 班'需将两个字符串连接起来并打印,即答案 为 print(lst[0][3]+lst[1][5]) 15. B - 解析:将两个字符串连接起来可以使用“+”,`str = name + "同学"`可以实现需求。A选项语法错误;C选项语法错误;D选项`append`是列表的方法,不是字符串的方法。 16. A - 解析:循环遍历1到100,当`i % 7!= 0`时打印`i`,即输出不能被7整除的数字。B选项循环条件错误;C选项当`i % 7 == 0`时跳出循环,输出的是7的倍数;D选项当`i % 7 == 0`时打印`i`,不符合要求。 17. C - 解析:`list(str)`将字符串转换为字符列表,每个字符都是一个单独的元素,包括空格,结果为['H', 'a', 'p', 'p', 'y', ' ', 'n', 'e', 'w', ' ', 'y', 'e', 'a', 'r']。 18. A - 解析:元组是不可变的,不能通过索引赋值修改元组中的元素,也不能使用`append`和`pop`方法,但是可以通过索引访问元组中的元素,`t = tuple[2]`是正确的。 19. D - 解析:字典是无序的对象集合,不能用下标进行访问。A选项字典中的值不支持索引查询正确;B选项字典以关键字为键,关键字可以是任意不可变数据类型正确;C选项字典里面的值可以包含列表和其他数据类型正确。 20. B - 解析:创建列表使用方括号`[]`;圆括号`()`用于创建元组、函数调用等;`<>`不是创建列表的符号;单引号`''`用于创建字符串。 21. D - 解析:`%.2f`可以格式化输出浮点数保留两位小数,所以`print('小明的身高是%.2f。' % height)`可以输出“小明的身高是1.55。”。 22. C - 解析:在Python中,分支结构不一定包含`else`语句,可以只有`if`或`if...elif`。A选项分支结构一般由`if`、`elif`、`else`组成正确;B选项分支结构一般有单分支结构、双分支结构和多分支结构正确;D选项`if`语句后面跟条件表达式正确。 23. C - 解析:列表`list_sf`中“吃饺子”的索引是5,要将“压岁钱”存入“吃饺子”元素的后面,应该使用`list_sf.insert(6, '压岁钱')`。 24. D - 解析:`tup1[-5]`是“你好”,`tup1[3]`是“中国”,连接起来是“你好中国”。 25. D - 解析:当`for`循环正常结束时(没有被`break`或者`return`等提前退出),会执行`else`语句下面的代码。A选项`break`语句可以跳出`for`和`while`的循环体正确;B选项如果从循环中终止,任何对应的循环`else`块将不执行正确;C选项`continue`语句的作用正确。 二、判断题答案及解析 26. √ - 解析:元组中的元素可以是不同的数据类型。 27. √ - 解析:`for`循环能实现的功能,`while`循环也可以实现,只是写法不同。 28. × - 解析:死循环在某些特定情况下是有作用的,比如服务器监听请求等。 29. × - 解析:循环中`for it in age`,`it`是列表中的元素,应该直接打印`it`而不是`age[it]`,会导致索引错误。 30. × - 解析:字符串不能进行除法运算,`'yayaya'/3`会报错。 31. √ - 解析:可以使用`d1={}`的方式创建一个空字典。 32. × - 解析:`(1,2,3)`和`(3,2,1)`是不同的元组,比较结果为`False`。 33. × - 解析:字符串和整数不能直接用“+”连接,会报错。 34. × - 解析:`if 's' in 'string':`是判断字符`s`是否在字符串`string`中;`if s in 'string':`中`s`如果未定义会报错,即使定义了也不一定和上一种情况等效。 35. √ - 解析:每条`if`语句的核心都是一个值为`True`或`False`的表达式,这种表达式为条件语句。 三、编程题解析 36. 参考代码: a = float(input('请输入长方形的长:')) # 获取用户输入的长方形的长,并转换为浮点数类型赋值给变量 a b = float(input('请输入长方形的宽:')) # 获取用户输入的长方形的宽,并转换为浮点数类型赋值给变量 b if a <= 0 or b <= 0:# 判断长或宽是否不大于 0 print("输入有误,请重新输入!") # 输出错误提示信息 else: c = (a + b) * 2 # 计算长方形的周长并赋值给变量 c d = a * b # 计算长方形的面积并赋值给变量 d print("周长是:{:.2f}厘米".format(c))# 输出周长结果,保留两位小数 print("面积是:{:.2f}平方厘米".format(d))# 输出面积结果,保留两位小数 总结:这段代码将长方形的长和宽分别用变量a和b表示,周长用变量c表示,面积用变量d表示。通过接收用户输入的长和宽,判断输入是否合法,若合法则计算并输出长方形的周长和面积。 37. 参考代码: ht1 = [125, 127, 136, 134, 137, 138, 126, 135, 140, 145]# 定义一个包含报名人员身高的列表 ht1 ht2 = []# 创建一个空列表 ht2,用于存储符合条件的身高 ct = 0 # 初始化新增成员数目为 0 for i in ht1: # 遍历 ht1 列表中的每个身高 if (i > 135): # 如果身高大于 135 ct += 1 # 新增成员数目加一 ht2.append(i) # 将符合条件的身高添加到 ht2 列表中 ht2.sort() # 对 ht2 列表进行排序 print("女篮校队新增成员数目:{},她们的身高从矮到高分别是:{}".format(ct, ht2)) # 输出结果,包括新增成员数目和从矮到高的身高列表 总结:这段 Python 代码的目的是从给定的身高列表中筛选出身高大于 135 的成员,并统计新增成员数目,同时将符合条件的身高按从矮到高的顺序输出。首先定义了一个包含报名人员身高的列表`ht1`,然后通过遍历`ht1`,将符合条件的身高添加到新的列表`ht2`中,并统计新增成员数目。最后,对`ht2`进行排序并输出结果。 学科网(北京)股份有限公司 $$

资源预览图

13 202403青少年软件编程(Python)等级考试试卷(二级) 二级真题
1
13 202403青少年软件编程(Python)等级考试试卷(二级) 二级真题
2
13 202403青少年软件编程(Python)等级考试试卷(二级) 二级真题
3
所属专辑
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。