2023 年 6 月 CCF编程能力 Python 三级试卷
一、单选题 (每题 2 分,共 30 分)
1) 高级语言编写的程序需要经过以下( )操作,可以生成在计算机上运行的可执行代码。 




查看答案
2) 二进制数 11.01 在十进制下是( )。




查看答案
3) 下面有关 Python 列表的描述,正确的是( )。




查看答案
4) 下面 Python 赋值语句,不合法的是( )。




查看答案
5) 有关下面 Python 代码的描述,正确的是( )。
a = (1, 2)
a = a + (3, 4)
print(a)




查看答案
6) Python 表达式 len(set("长城,颐和园"))-len(set(["长城","颐和园"]))的值是( )。




查看答案
7) 下面 Python 代码执行后的输出是( )。
a = [1,2,3,4,5,6]
for i in a:
    if i % 2 == 1:
        del i
print(a)




查看答案
8)

下面 Python 代码执行后的输出是( )。

a = [1,2,3,4,5,6]
a.sort(key = lambda x:x%2)
print(a)





查看答案
9) 下面 Python 代码执行后的输出是( )。 

set1 = {2,4,6,8}
set2 = {8,6,2,4,8}
print(set1 == set2)





查看答案
10) 下面 Python 代码执行后的输出是( )。

tplA = (1,4,7,2,5,8)
print(list(reversed(tplA)))





查看答案
11) Python 语句 print([str(n*n+1)*(n*n+1) for n in range(3)])执行后的输出是( )。




查看答案
12) 下面 Python 代码执行后的输出是( )。 

b = sorted("Python is a popular programming language".split(), key=str.lower)
print(b[-1])





查看答案
13) 下面 Python 代码执行后的输出是( )。

groveA = ['Cherry', 'Apple', "Banana', 'Apple']
groveB = ['Apple', 'Peach', 'Peach']
Fruits = set(groveA + groveB)
n = len(Fruits)
print(n)





查看答案
14) 已知大写字符 X 的 ASCII 编码的 16 进制表示为 58,则字符 Q 的十六进制 ASCII 编码是( )。 




查看答案
二、判断题 (每题 2 分,共 20 分)
15) 一个算法可以用不同的形式来描述,但要求描述比较规范,因此不能用自然语言描述。

查看答案
16) 域名是由一串用点分隔的名字来标识互联网上一个计算机或计算机组的名称,CCF 编程 能力等级认证官方网站的域名是 gesp.ccf.org.cn,其中顶级域名是 gesp。

查看答案
17) 执行 Python 语句 a = {}后的变量的 a 类型可能是 set 也可能是 dict。

查看答案
18) Python 表达式 len(set("CCF"))的值为 2。

查看答案
19) 下面 Python 代码执行后的输出是 Python is a popular programming language. 
a = "Python is a popular programming language."
a.replace("programming", "computer")
print(a)

查看答案
20) Python 的 dict 类型,其键(key)可以是 tuple 类型,但不可以是 list 类型,因此下列代码执行不会报错。

tab99 = {}
for i in range(1, 9 + 1):
    for j in range(1, i + 1):
        tab99[(j, i)] = i*j
print(tab99)


查看答案
21) 下面 Python 代码执行后将输出[1, 3, 5]。

a = [1,2,3,4,5,6]
print(filter(lambda x:x%2, a))


查看答案
22) 下面 Python 执行后的输出是 True。 

a, b = "12,2".split(",")
if a > b:
    print(True)
else:
    print(False)


查看答案
23) 在 Python 代码中先执行 a = (5,6,3,10),然后执行 print(a.sort())其输出结果是 None。

查看答案
24) 以下 Python 代码执行后将输出 cherry。 

lstA = ['grape', 'cherry', 'mango']
lstB = lstA
lstB.append('apple')
lstA.sort()
print(lstA[0])


查看答案
三、编程题
25) 【问题描述】 
老师带领同学们春游。已知班上有 N 位同学,每位同学有从 0 到 N-1 的唯一编号。到了集合时间,老师确认是否所有同学都到达了集合地点,就让同学们报出自己的编号。到达的同学都会报出,但有的同学很顽皮,会多次报出。你能帮老师找出有哪些同学没有到达吗? 
【输入描述】 
输入包含 2 行。第一行包含两个整数 N 和 M,表示班级有 N 位同学,同学们共有 M 次报出编号。约定 2≤N,M≤1000。 第二行包含 M 个整数,分别为 M 次报出的编号。约定所有编号都在合理范围内。 
【输出描述】 
输出一行。如果所有同学都到达,则输出 N;否则由小到大输出所有未到达的同学编号,空格分隔。 
【样例输入 1】 
3 3 
0 2 1 
【样例输出 1】 
3
【样例输入 2】 
3 5 
0 0 0 0 0 
【样例输出 2】 
1 2
查看答案
26) 【问题描述】 
1. 网站注册需要有用户名和密码,编写程序以检查用户输入密码的有效性。 
2. 合法的密码只能由 a-z 之间 26 个小写字母、A-Z 之间 26 个大写字母、0-9 之间 10 个数字以及!@#$四个特殊字母构成。 
3. 密码最短长度:6 个字符,密码最大长度:12 个字符。 
4. 大写字母、小写字母和数字必须有其中两种,以及至少有四个特殊字符中的一个。 
【输入描述】 
1. 输入以英文逗号分隔的多个字符组合作为被检测密码。输入时的逗号都作为分隔符,不被视作检验密码本身。 
2. 特别提示:常规程序中,输入时好习惯是有提示。考试时由于系统限定,输入时所有 input()函数不可有提示信息。 
【输出描述】 
1. 逐行输出 0 个或多个合规的密码。 
2. 输出顺序以输入字符串出现先后为序,即先出现则先输出。 
【样例输入 1】 
seHJ12!@,sjdkffH$123,sdf!@^&12 HDH,123&^YUhg@! 
【样例输出 1】 
seHJ12!@ 
sjdkffH$123
查看答案
增值服务权益

1. 试题参考答案和解析查看;
2. 试卷模拟测试;
3. 随机组题测试;
4. 试卷PDF文件下载;
5. 赠送等值学豆;

  订阅  
学员服务
教研服务

小鹏STEM教研服务系统是面向教师的一站式教研、教学和知识管理系统。
订阅服务后,所有题目均可无限制查看和服务。

  详情