2024年6月CCF—GESP(Python三级)编程能力等级认证试卷
剩余时间 --:--:--
单选题 共 15 题
1.

某小学男子篮球队招募新成员,要求加入球队的成员身高在135厘米以上(不含135厘米)。本次报名的人员有10人,她们的身高分别是125、127、136、134、137、138、126、135、140、145。完善以下代码,求出本次球队能够招募到新成员的人数?( )

a = [125, 127, 136, 134, 137, 138, 126, 135, 140, 145]
b = [i > 135 for i in a]
c = __________
print(c)


2.

执行下面Python代码后,输出的结果是?( )

a = [i % 10 for i in range(10, 20)]
b, c = [], []
while len(a) > 0:
	s = a.pop()
	if s % 2 == 0:
		b.append(s)
	else:
		c.append(s)
print(b, c)


3.

执行下面Python代码后,输出的结果可能是?( )

str="Happy new year"
a = set(str)
print(a)


4.

下列流程图的输出结果是?(2024.6-3)( )

5.

小杨父母带他到某培训机构给他报名参加CCF组织的GESP认证考试的第1级,那他可以选择的认证语言有几种?(2024.6-3)( )

6.

执行下面Python代码后,输出的结果是?( )

a = {'name': 'Tom', 'age': 12}
b = {'name': 'Join', 'email': 'join@qq.com'}
b.update(a)
print(len(b))
7.

下面可以正确输出 They’re planning a party for their friend’s birthday. 的Python语句是?( )

8.

执行下面Python代码后,输出的结果是?( )

s = 'gesp.ccf.org.cn'
print(s.split('.', 1))


9.

下面流程图在yr输入2024时,可以判定yr代表闰年,并输出 2月是29天 ,则图中菱形框中应该填入(2024.6-3)( )。

10.

小杨在做数学题,题目要求找出从1到35中能被7整除的数字,即[7, 14, 21, 28, 35],以下哪个解析式可以完成这样的任务?( )

11.

将十进制2024转化成八进制,可以使用下列哪个表达式?( )

12.

执行下面Python代码后,输出的结果是?( )

a = ['o', 'r', 'a', 'n', 'g', 'e']
a.sort()
a.reverse()
print(a)


13.

执行下面Python代码后,输出的结果不可能是哪一项?( )

a = dict(zip(range(8, 0, -2), range(0, 8, 2)))
print(a)


14.

执行下面Python代码后,输出的结果是?( )

t1 = (1, 2, 3, 4, 5, 6, 7)
t2 = ('a', 'b', 'c', 'd', 'e', 'f')
s = t1[2:] + t2[5:2:-1]
print(s)


15.

执行下面Python代码后,输出的结果是?( )

t1 = ("python", "c++", "scratch")
t2 = tuple(i for i in t1[::-1])
print(t2)


判断题 共 10 题
1.

整数-6的16位补码可用十六进制表示为FFFA。()

2.

执行下面Python代码后,输出的结果是8。

a = 0b1010
b = 0o1100
c = a & b
print(c)


3.

GESP测试是对认证者的编程能力进行等级认证,同一级别的能力基本上与编程语言无关。(2024.6-3)( )

4.

在Python中,print(list(“GESP”))将输出[‘G’, ‘E’, ‘S’, ‘P’]。( )

5.

集合是一个无序的不重复元素序列,用{}作为界定符,如集合 {1, 2, {3: 4}, 5, 6} 。()

6.

十六进制FB 转成八进制为363。

7.

集合支持索引操作,可以通过索引访问元素。()

8.

a,b为整数,如果表达式 a ^ b == 0 为True,那么说明a与b相等。

9.

执行下面Python代码后,输出的结果不可能是89781。( )

import random

i = 1
s = ""
while i <= 5:
	a = random.randint(0, 9)
	if a % 3 == (i + 1) % 3:
		s += str(a)
		i += 1
print(s)


10.

把整数3025从中剪开分为30和25两个数,此时再将这两数之和平方,计算结果又等于原数。(30 + 25) × (30 + 25) = 55 × 55 = 3025,这样的数叫“雷劈数”。可以使用枚举的方法求出所有符合这样条件的四位数。( )

编程题 共 2 题
1.

移位

时间限制:1.0 s

内存限制:512.0 MB

题面描述

小杨学习了加密技术移位,所有大写字母都向后按照一个固定数目进行偏移。偏移过程会将字母表视作首尾相接的环,例如,当偏移量是3的时候,大写字母 A 会替换成 D,大写字母 Z 会替换成 C,总体来看,大写字母表ABCDEFGHIJKLMNOPQRSTUVWXYZ 会被替换成 DEFGHIJKLMNOPQRSTUVWXYZABC。

注:当偏移量是26的倍数时,每个大写字母经过偏移后会恰好回到原来的位置,即大写字母表ABCDEFGHIJKLMNOPQRSTUVWXYZ 经过偏移后会保持不变。

输入格式

第一行包含一个正整数 n。

输出格式

输出在偏移量为 n 的情况下,大写字母表 ABCDEFGHIJKLMNOPQRSTUVWXYZ 移位替换后的结果。


输入样例

3

输出样例

DEFGHIJKLMNOPQRSTUVWXYZABC


样例解释

当偏移量是3的时候,大写字母 A 会替换成 D,大写字母 Z 会替换成 C,总体来看,大写字母表ABCDEFGHIJKLMNOPQRSTUVWXYZ 会被替换成 DEFGHIJKLMNOPQRSTUVWXYZABC。

数据范围

对于全部数据,保证有 1 ≤ n ≤ 100。

2.

寻找倍数

时间限制:1.0 s

内存限制:512.0 MB

题面描述

小杨有一个包含 个正整数的序列 A = [a1,a2, . . . , an ] ,他想知道是否存在 i(i ≤ i ≤ n) 使得ai是序列 A 中所有数的倍数。

输入格式

第一行包含一个正整数 t,代表测试用例组数。

接下来是 t 组测试用例。

对于每组测试用例,一共两行。其中,第一行包含一个正整数 n;第二行包含 n 个正整数,代表序列 A。

输出格式

对于每组测试用例,如果存在 i(1 ≤ i ≤ n )满足对于所有 k(1 ≤ k ≤ n ) ai是ak的倍数,输出 Yes,否则输出 No。


输入样例

2
3
1 2 4
5
1 2 3 4 5


输出样例

Yes
No


样例解释

对于第一组数据,对于 a3  =4,满足a3是a1和a2的倍数。

数据范围

对于全部数据,保证有 1 ≤ t ≤ 10 , 1 ≤ n ≤ 105 , 1 ≤ ai ≤ 109 

C++ 编辑器
输入
输出