当前位置: 首页 > news >正文

2026年3月 GESP CCF编程能力等级认证Python五级真题

========================================================================

答案和更多内容请查看网站:【试卷中心 ----->电子学会 ----> Python ----> 五级】

网站链接

青少年软件编程历年真题模拟题实时更新

========================================================================

青少年软件编程(Python)等级考试试卷(级)
一、单题题

第1题
关于Python实现的单链表、双链表和循环链表,下列说法正确的是( )。
A. 在Python实现的单链表中,若已知任意结点对象的引用,则可以在O(1)时间内删除该结点。
B. Python实现的循环链表中一定不存在值为None的引用属性。
C. 在Python实现的循环双链表中,尾结点对象的next属性值一定为None。
D. 在Python实现的带头结点的循环单链表中,判定链表是否为空只需判断头结点对象的next属性是否引用头结点自身(即head.next is head)。

第2题
双向循环链表中要在结点p之前插入新结点s(均非空),以下操作正确的是( )。
A. s.next=p;p.prev=s;q.next=s;s.prev=q
B. s.prev=p;s.next=p.next;p.next.prev=s;p.next=s
C. s.next=p;s.prev=p.prev;p.prev.next=s;p.prev=s
D. s.next=p;s.prev=nullptr;p.prev=s


第3题
下面函数删除单向链表中val == x的节点,并且使用哑结点统一对头结点和中间节点的删除操作。横线处应填( )。

class Node: def __init__(self, val): self.val = val self.next = None def eraseAll(head, x): dummy = Node(0) dummy.next = head cur = dummy while cur.next: if cur.next.val == x: # 填空处 else: cur = cur.next return dummy.next

A. cur = cur.next
B. cur.next = cur.next.next
C. cur.next = None
D. cur.next = nullptr

第4题
对如下代码实现的欧几里得算法(辗转相除法),调用gcd(48, 18)得到的调用序列为( )。

def gcd(a, b): if b == 0: return a else: return gcd(b, a % b)

A. gcd(48,18) -> gcd(18,12) -> gcd(12,6) -> gcd(6,0)
B. gcd(48,18) -> gcd(30,18) -> gcd(12,18)
C. gcd(48,18) -> gcd(18,30) -> gcd(30,6)
D. gcd(48,18) -> gcd(12,18) -> gcd(6,12)

第5题
下面代码实现了欧拉(线性)筛,横线处应填写( )。

def euler_sieve_for(n): if n < 2: is_composite = [False] * (n + 1) primes = [] return [] for i in range(2, n + 1): if not is_composite[i]: primes.append(i) # 横线处 p = primes[j] if i * p > n: break is_composite[i * p] = True if i % p == 0: break return primes

A. for j in range(len(primes+1)):
B. for j in range(len(primes)+1):
C. for j in range(len(primes)):
D. for j in range(len(primes)-1):

第6题
埃氏筛中将内层循环从j = i*i开始而不是j = 2*i的主要原因是( )。

def eratosthenes_sieve_for(n): if n < 2: return [] is_composite = [False] * (n + 1) primes = [] for i in range(2, n + 1): if is_composite[i]: primes.append(i) continue # 用for循环模拟C++的 j = i*i; j <=n; j +=i for j in range(i * i, n + 1, i): is_composite[j] = True return primes

A. 因为2*i一定不是合数
B. i*i一定是质数
C. 小于i*i的i的倍数已被更小质因子筛过
D. 这样可以把时间复杂度降为O(n)


第7题
下面程序的运行结果为( )。

def check(n, a, k, dist): cnt=1 last = a[0] for i in range(1,n): if a[i] - last >= dist: cnt+=1 last = a[i] return cnt>=k def solve(n,a, k): a.sort() l=0 r = a[-1]-a[0] while l < r: mid =(l + r +1)//2 if check(n, a, k, mid): l=mid else: r=mid-1 return l if __name__=="__main__": a =[1, 2, 8,4,9] n=5 k=3 result = solve(n, a, k) print(result)

A.2 B.3 C.4 D.5

第8题
在升序数组中查找第一个大于等于x的位置,下面循环中横线应填( )。

def LowerBound(a,x): l=0 r=len(a) while l < r: mid = l+(r -l) //2 if a[mid]>=x: # 横线处 else: l=mid+1 return l

A. r=mid

B. l=mid

C. r=mid+1

D. l=mid-1

第9题
关于递归函数调用,下列说法错误的是( )。
A. 递归调用层次过深时,可能会耗尽栈空间导致栈溢出
B. 尾递归函数可以通过编译器优化来避免栈溢出
C. 所有递归函数都可以通过循环结构来改写,从而避免栈溢出
D. 栈溢出发生时,程序会抛出异常并可以继续执行后续代码


第10题
给定n根木头,第i根长度为a[i]。要切成不少于m段等长木段,求最大可能长度,则横线上应填写( )。

def check(a,m,x): cnt=0 for length in a: if x==0: return True cnt+= length // x if cnt>=m: return True return cnt>=m def main(): import sys input = sys.stdin.read().split() idx=0 n =int(input[idx]) idx+=1 m = int(input[idx]) idx+=1 a=[] mx=0 for _ in range(n): num=int(input[idx]) idx+=1 a.append(num) mx = max(mx,num) l=1 r=mx ans=0 while l <= r: mid = l +(r - l) // 2 if check(a, m,mid): ans=mid # 横线处1 else: # 横线处2 print(ans)


A. l=mid+1和r=mid-1
B. r=mid和l=mid+1
C. l=mid+1和r=mid
D. l=mid-1和r=mid+1

========================================================================

答案和更多内容请查看网站:【试卷中心 ----->电子学会 ----> Python ----> 五级】

网站链接

青少年软件编程历年真题模拟题实时更新

========================================================================

http://www.jsqmd.com/news/647244/

相关文章:

  • IPD跨部门协作流程的构建与优化
  • 大厂 全面开始 AI 编程 机考:VibeCoding AI编程 7 大经典步骤,吊打 阿里、美团 等大厂 的 全面 AI 机考 损招(史上最全)
  • DDR5内存VrefCA训练全解析:从JESD79-5标准到实战调优指南
  • 多模态虚拟人爆发前夜,AI工程化卡点全解析,错过这届奇点大会=掉队2年
  • 不只是适配框架:拆解Android Audio HAL的设计哲学与厂商‘私货’
  • 终极指南:3分钟掌握Universal x86 Tuning Utility,轻松解锁AMD/Intel处理器性能
  • 避坑指南:解决Jetson Orin NX上xcSerializer驱动编译与DeepStream集成常见问题
  • 20251915 2025-2026-2 《网络攻防实践》实践五报告
  • JavaScript对象浅拷贝:Object-assign的合并规则
  • 别再手动一个个点啦!Quartus II 13.1批量绑定引脚,用CSV和TCL脚本5分钟搞定
  • 保姆级教程:用STM32CubeMX快速验证NVIC、EXTI、ADC等核心外设功能(基于STM32F103C8T6)
  • 如何用ExplorerPatcher彻底改造Windows界面:从新手到专家的完整指南
  • GeoServer图片发布避坑指南:为什么你的地图总对不齐?从配准到发布的完整解决方案
  • 给智能健康监测设备做个“体检”:用STM32+FreeRTOS+LVGL项目实战,聊聊嵌入式开发的调试与优化心得
  • 别再只会用OpenCV做模糊了!用Python+NumPy手撸频域滤波器,5分钟搞定图像边缘增强
  • 3步掌握专业级Windows音频调校:终极Equalizer APO配置指南
  • 爱毕业(aibiye)让数学建模论文的复现与智能排版更高效、更精准
  • 终极像素艺术VFX编辑器:无需代码的完整视觉特效创作指南
  • HC32F460 USB CDC通信异常:非对齐访问异常排查
  • MySQL升级导致排序规则变化怎么处理_更新Collation配置
  • 别再手动配环境了!用pyproject.toml统一管理你的Python项目(附Poetry/Flit/Hatch对比)
  • mrpack-install如何解决Minecraft服务器模组包部署:面向开发者的自动化部署方案
  • 从训练到部署全链路压缩提速4.6倍:SITS2026专家实测TensorRT-LLM+OpenVINO双栈协同压缩方案
  • CSS如何让Bootstrap列表项整齐排列_利用display grid实现
  • Java的ForeignFunctionAPI与ProjectPanama在本地内存访问中的突破
  • 工业自动化调试的革命:ModbusTool如何通过三合一协议支持重塑设备通信测试
  • 【ESP8266】巧用内部EEPROM,构建WiFi配置的持久化记忆
  • EtherCAT 转Profinet 极片生产数据全程追溯工业物联网
  • 从‘软’到‘硬’:手把手解析铜凸点如何解决焊料凸点的塌陷与短路难题
  • 借助爱毕业(aibiye),用户可以轻松完成数学建模论文的复现与智能排版优化