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

下面的Python代码用于求正整数各位数之和(即数位和) ,约定高位不为0 ,如123则各位数之和为 1+2+3结果为6 。为实现该目标 ,横线处应该填写的代码是(    )。

N = int(input()) 
tnt = 0
while N != 0 :
    _____________
    _____________

print("各位数数之和为: " , tnt)
2.

在Python中,turtle .write()用于在当前坐标处输出文字。下面说法,错误的是()。

import turtle

for i in range(1,10):
	turtle.write(f"{i}+{i}={i*2}")
	turtle.goto(i*40,0)
turtle.done()
3.

Python 表达式 3 *  3 **  2 的值为(     )。

4.

有关下面Python 代码的说法,正确的是()。

import turtle

turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.goto(0, 0)

turtle.done()
5.

下面Python代码的相关说法 ,正确的是(    )。

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

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

a, b = 3, 4
print(a + 2, b - 2)
print(a, b)
7.

2026年春节联欢晚会上一个武术表演节目 《武BOT》 。节目中多个人形机器人会表演空翻 ,它们落地可能会有微微踉跄 ,但都会迅速调整姿态站稳 ,并适当移动来和前后左右的其他机器人保持原来队列 。如果将机器人视作一个计算机系统 ,那么在该计算机系统中下面哪一项不能作为输入设备(  )。

8.

下面 Python 代码的相关说法 ,正确的是(   )。

N = int(input()) 
print(N)
9.

下面Python代码执行时 ,其说法正确的是(    )。

N = int(input())
M = int(input())

if N > M:
	print(N - M)
else:
	print(M - N)
10.

下面的Python执行后如果输入8,希望输出如下图形。相关说法,正确的是()

import turtle
N = int(input("请输入射线数量: "))
Angle = 360 / N #计算出每条射线之间间隔的角度

for i in range(N):
    turtle.right(Angle)
    turtle.forward(100)
    turtle.goto(0,0)

turtle.done()
11.

某个功能需要知道一个输入的正整数的各位数字中有多少个奇数,下面的Python代码是其实现,横线处应该填入的代码是()。

N = int(input())
odd_count = 0
while N > 0:
    if ________:
        odd_count += 1
    N = N // 10
print(odd_count)
12.

小明学习编程有一段时间了 ,他想在图形环境下把当前目录(或文件夹) 下的文本文件 20260314 .txt 的名字改一下 。他用鼠标左键点击选中该文件后 ,立即完成下面哪个操作后将处于输入新文件名的状态 ( )。

13.

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

tnt = 1
for i in range(5):
	tnt *= i
print(tnt, i)
14.

有关下面Python的说法 ,正确的是(     )

PI = 3.1415926
print(PI)

15.

Python编程求数列 -1+2+3-4+5+6-7+8+9-10+11+12-13+  之值 。如输入4 ,则计算1到4包含1和4之间的值 ,规律如数列所⽰ 。下面说法 ,正确的是(    )。

N = int(input("请输入正整数:"))

tnt = 0
for i in range(1, N + 1):
	if i % 3 == 1:
		tnt += -i
	else:
		tnt += i
print(tnt)
判断题 共 10 题
1.

小明的妈妈最近刚刚给他买了一块电话手表,除了可以看时间,小明也可以用它和妈妈打电话、收发信息,那么可以推测这块手表中装有一款特定操作系统。()

2.

下面的Python 代码执行后,将输出等边三角形。()

import turtle
turtle.circle(50, steps = 3)

turtle.done()
3.

执行Python 语句print(int(3 .14))将报错。()

4.

执行下面的Python代码 ,其语句print(N)将被执行0次或无数次(即死循环) 。 (  )

N = input() 
while N:
  print(N)
5.

Python表达式4 ** 2 和2 * 2 ** 2 的结果相同。( )

6.

下面的Python 代码执行后第一条直线与第二条直线相交于原点,两线之间的夹角为120度。()

import turtle

turtle.forward(100)
turtle.right(60)
turtle.forward(100)
turtle.right(60)
turtle.forward(100)

turtle.done()
7.

下面Python代码用于求1到N之和,N为正整数 。 因为range()中为N+ 1 , 因此是1到N且包含N之和 。 ( )

N = int(input("请输入正整数:"))
total = 0
for i in range(1, N + 1):
total += i
print(total)
8.

下面Python代码执行后将输出0。( )

for i in range(1 , 10):
  if i % 3 == 0 :
    break 
print(i)
9.

下面的Python代码能实现判断输入的正整数是否为对称数 。所谓对称数是指从左到右和从右到左读该数 ,其值相同 ,如121或414等是对称数 ,而123不是对称数 。 (  )

n = int(input("请输入正整数:"))

old_number = n
new_number = 0
while n != 0:
    new_number = new_number * 10 + n % 10
    n //= 10

if old_number == new_number:
    print("对称数")
else:
    print("非对称数")
10.

执行下面的 Python 代码 ,如果输入为大于 0 的整数 ,则输出一定为    N 。 (  )

N = int(input())
total = 0
for i in range(-N, N, 2):
    total += i
print(total)
编程题 共 2 题
1.

数字替换

时间限制:1.0 s

内存限制:512.0 MB

题目描述

Alice 不喜欢数字 4,但觉得数字 8 寓意好,她想把数中的 4 全都替换成 8,若数中不含 4 则无需修改,你能帮帮她吗?

输入格式

输入一行,包含一个整数A,表示替换前的数。

输出格式

输出一行,包含一个整数B,表示替换后的数。

输入样例 #1

8459045

输出样例 #1

8859085

输入样例 #2

123

输出样例 #2

123

样例解释

对于样例1,输入 8459045 中有两个 4,都将其替换为了 8,得到 8859085。

对于样例2,输入 123 中不包含 4,无需修改输入数字,输出 123。

数据范围

0≤A≤108。

2.

交朋友

时间限制:1.0 s

内存限制:512.0 MB

题目描述

Alice 班上共有 4 个小朋友,身高分别为H1,H2,H3,H4,其中 Alice 的身高为H1。

Alice 想要和身高最接近她的人交朋友,如果有多个人符合条件,则 Alice 想和其中较矮的那一人做朋友,你能告诉

她这个人的身高是多少吗?

输入格式

输入共4行,第i行包含一个整数Hi,表示班上小朋友的身高。

输出格式

输出1行,包含一个整数h,表示 Alice 想交的朋友的身高。

输入样例

150
165
135
133

输出样例

135

样例解释

样例 1 中,Alice 身高为 150,第 2、3 个小朋友与 Alice 身高差距为 15,同样最接近,Alice 选较矮的一个即第 3 个身高为 135 的小朋友交朋友。

数据范围

保证100≤Hi≤199且Hi互不相同。

C++ 编辑器
输入
输出