2024年12月Python二级试卷

从PDF导入:2024年12月Python二级试卷

Python 120分钟 总分 100.0 27 题
试卷题目预览
第1题 中级 2.0分 单选

2024年10月8日,诺贝尔物理学奖“意外地”颁给了两位计算机科学家约翰·霍普菲尔德(John J. Hopfield)和杰弗里·辛顿(Geoffrey E. Hinton)。这两位科学家的主要研究方向是( )。

A. 天体物理
B. 流体力学
C. 人工智能
D. 量子理论
第2题 中级 2.0分 单选
计算机系统中存储的基本单位用B来表示,比如某个照片大小为3MB,其中B代表的是( )。
A. Byte
B. Block
C. Bulk
D. Bit
第3题 中级 2.0分 单选
Python语句 print(3 + 3 ** 3 * 2 - 1) 执行后输出的值是( )。
A. 731
B. 431
C. 246
D. 56
第4题 中级 2.0分 单选
在Python中,与 range(10) 效果相同的是( )。
A. range(1, 10)
B. range(1, 11)
C. range(1, 10, 1)
D. range(0, 10, 1)
第5题 中级 2.0分 单选
下面Python代码执行后其输出是( )。

for i in range(10):
print(i, end = "")

A. 123456789
B. 0123456789
C. 12345678910
D. 012345678910
第6题 中级 2.0分 单选
下面Python代码的相关说法中,正确的是( )。

for i in range(10):
tnt += i
print(tnt)

A. 上述代码执行后其输出相当于求1-10的和(包含10)
B. 上述代码执行后其输出相当于求1-10的和(不包含10)
C. 上述代码执行后其输出相当于求0-10的和(不包含10)
D. 上述代码执行时将触发异常
第7题 中级 2.0分 单选
下面Python代码执行后输出是( )。

for i in range(1, 10):
if i % 2:
continue
else:
break
print(i)

A. 1
B. 2
C. 9
D. 10
第8题 中级 2.0分 单选
下面Python代码执行后的输出是( )。

for i in range(10):
if i % 3:
continue
print("0", end = "#")
else:
print("1", end = "#")

A. 0#0#0#0#0#0#0#1#
B. 0#0#0#0#0#0#1#
C. 0#0#0#0#1#
D. 0#0#0#0#
第9题 中级 2.0分 单选
下面Python代码用于输出0-100之间(包含100)能被7整除但不能被3整除的数,横线处不能填入的代码是( )。

for i in range(100):
if ______:
print(i)

A. i % 7 == 0 and i % 3 != 0
B. not(i % 7) and i % 3 != 0
C. i % 7 and i % 3
D. i % 7 == 0 and not(i % 3 == 0)
第10题 中级 2.0分 单选
下面Python代码用于求正整数各位数字之和,横线处应填入代码不能是( )。

A. tnt = tnt + N % 10
B. tnt += N % 10
C. tnt = N % 10 + tnt
D. tnt = N % 10
第11题 中级 2.0分 单选
下面Python代码执行后的输出是( )。

for i in range(5):
for j in range(i):
print(j, end="")

A. 0010120123
B. 01012012301234
C. 001012012301234
D. 01012012301234012345
第12题 中级 2.0分 单选
下面Python代码用于实现九九乘法表。相关说法错误的是( )。


A. 将代码最后一行的print()与if-else对齐效果相同
B. 将代码最后一行的print()修改为print("")效果相同
C. 将Lie * Hang > 9修改为Lie * Hang >= 10效果相同
D. 将Lie * Hang > 9修改为Hang * Lie > 9效果相同
第13题 中级 2.0分 单选

在数学中 N! 表示 N 的阶乘,即1到N的乘积,如 3!=1*2*3 。下面的Python用于求 1-N 的阶乘之和,如N为3,则是 1!+2!+3! 。下面选项用于实现上述功能,其中不能实现的选项是( )。
N = int(input())
tnt, nowNum = 0, 1 #tnt保存求和之值,当前N的阶乘
for i in range(1, N + 1):
#基于上一个计算出当前数的阶乘
_________
#从1到i每个数阶乘之和
_________
print(tnt)

A. nowNum *= i; tnt += nowNum
B. nowNum = nowNum * i; tnt = tnt + nowNum
C. nowNum *= i; tnt = nowNum + tnt
D. nowNum = nowNum + i; tnt *= nowNum
第14题 中级 2.0分 单选

下面Python代码用于输出N和M之间的孪生素数,包含N和M,且孪生素数都在N和M之间。孪生素数是指间隔为2的两个数均为素数,如11和13分别是素数,且间隔为2。假设函数isPrime()是用于判断N是否为素数的函数,如果是素数返回值是True,不是素数则返回值是False。为完成上述功能,横线处应填上的代码是( )。

A. M - 2
B. M - 1
C. M
D. M + 1
第15题 中级 2.0分 单选
下面Python代码实现输出如下图形,横线应填入的代码是( )。


height = int(input("高度:"))
for i in range(height):
#打印每行前面的空格
for j in range(______):
print(" ", end="")
#打印每行的星号
for k in range(______):
print("*", end="")
#输出一行后,换行
print()

A. height - i; 2 * i
B. height; 2 * i
C. height - i; 2 * i + 1
D. height - i - 1; 2 * i + 1
第16题 中级 2.0分 判断
在Windows的资源管理器中为已有文件A建立副本的操作是Ctrl+C,然后Ctrl+V。( )
T. 正确
F. 错误
第17题 中级 2.0分 判断
在Python代码中,假设N为正整数,则 print(N - N // 10 * 10) 将获得N的个位数。( )
T. 正确
F. 错误
第18题 中级 2.0分 判断
在Python语句 print(10 <= N <= 12) 中,假设N为12,则其输出为True。( )
T. 正确
F. 错误
第19题 中级 2.0分 判断
如果Python表达式 int(N ** 0.5) ** 2 == N 的值为True,则说明N为完全平方数,如4、9、25等。( )
T. 正确
F. 错误
第20题 中级 2.0分 判断
下面Python执行后将输出2*3=6。( )

a, b = 2, 3
print(f"{a}*{b}={a*b}")

T. 正确
F. 错误
第21题 中级 2.0分 判断
以下Python代码因为循环变量为 _ 将导致错误,即_不能作为变量名称,不符合Python变量命名规范。( )

for _ in range(10):
continue

T. 正确
F. 错误
第22题 中级 2.0分 判断
下面Python代码执行后将输出9。( )

for i in range(10):
continue
break
print(i)

T. 正确
F. 错误
第23题 中级 2.0分 判断
下面的Python代码执行后将输出18行"OK"。( )

for i in range(8, 2, -2):
for j in range(i):
print("OK")

T. 正确
F. 错误
第24题 中级 2.0分 判断
将下面Python代码中的range(1, 5)调整为range(5)输出结果相同。( )

cnt = 0
for i in range(1, 5):
cnt += 1
print(cnt)

T. 正确
F. 错误
第25题 中级 2.0分 判断
下面两段Python代码都是用于求1-10的和,其运行结果相同。通常说来,for-in循环都可以用while循环实现。( )

T. 正确
F. 错误
第26题 中级 25.0分 编程
寻找数字

小杨有一个正整数a,小杨想知道是否存在一个正整数b满足a = b⁴。

【输入格式】
第一行包含一个正整数t,代表测试数据组数。
对于每组测试数据,第一行包含一个正整数代表a。
【输出格式】
对于每组测试数据,如果存在满足条件的正整数b,则输出b,否则输出-1。
【样例输入】
3
1
16
8
【样例输出】

1
2
-1
【样例解释】
1 = 1⁴,输出1
16 = 2⁴,输出2
8不是任何整数的四次方,输出-1
对于全部数据,保证有1 ≤ t ≤ 10⁵,1 ≤ a ≤ 10⁸。
第27题 中级 25.0分 编程
数位和

小杨有n个正整数,小杨想知道这些正整数的数位和中最大值是多少。
"数位和"指的是一个数字中所有数位的和。例如:
对于数字12345,它的各个数位分别是1, 2, 3, 4, 5。将这些数位相加,得到:
1 + 2 + 3 + 4 + 5 = 15
因此,12345的数位和是15。

【输入格式】
第一行包含一个正整数n,代表正整数个数。
之后n行,每行包含一个正整数。
【输出格式】
输出这些正整数的数位和的最大值。
【样例输入】
3
12345
111
987
【样例输出】
24
【样例解释】
12345的数位和:1+2+3+4+5=15
111的数位和:1+1+1=3
987的数位和:9+8+7=24
最大值是24。
对于全部数据,保证有1 ≤ n ≤ 10⁵,每个正整数不超过10¹²。
💬