2026年3月电子学会青少年软件编程(Python四级)等级考试试卷
剩余时间 --:--:--
单选题 共 25 题
1.

下面为银行存款计算程序,假设存款利率每年都是0.03,小明有1000元,求存满5年后的总金额,下面Python代码空白处应该填入哪个选项?( )

def interest(total, years, rate=0.03):
        for i in range(years):
                total *= (               )
        return total
print(interest(1000, 5))
2.

运行如下代码,请输出运算结果?( )

def f(lst):
    if len(lst) == 0:
        return 0
    return lst[0] + f(lst[1:])
a= [1,2,3,4]
print(f(a))
3.

在Python语言中,匿名函数不需要用return来返回值,执行如下程序段后的结果是?( )

f = lambda x, y : x if x > y else y
result = f(10, 20)
print(result)
4.

小明有一堆糖果,他每天吃掉一半加一颗。如果小明连续吃了5天,糖果正好吃完,请问小明最初有多少颗糖果?求解该问题使用的算法思想是?( )

5.

小明根据课上老师讲的内容编写了以下Python程序,老师发现了错误却依旧可以运行,当前输出结果是?( )

def f(a:int,b:str)->str:
   c=a+b
   print(c)
   return f
f('3','45')
6.

有如下递归函数,执行print(f(3))语句后,函数f被调用的次数是?( )

def f(n):
    if n == 1 or n == 0:
        return n
    else:
        return f(n-1) + f(n-2)
print(f(3))
7.

以下关于关键字global和nonlocal的表述中,错误的选项是?( )

8.

在Python程序中,以下哪个选项的函数调用能够正确输出结果为:"4年级的李明同学"?( )

函数定义如下:

def student_info(grade, name):
    print(f"{grade}年级的{name}同学")
9.

有如下Python程序,执行该程序后,输出的结果是?( )

def nx(s):
    if len(s) == 1:
        return s
    return nx(s[1:])+s[0]
print(nx('abcda'))
10.

小明想在Python中导入matplotlib的pyplot模块并设置别名,绘制图表。正确的导入方式是?( )

11.

在Python社团活动中,小明请小伙伴写了以下交换两个变量值的函数,运行代码的输出是?( )

def swap(a, b):
    a, b = b, a
x, y = 1, 2
swap(x, y)
print(x, y)
12.

分治算法的基本思想不包括下列哪个选项?( )

13.

下列关于函数return语句的说法,正确的是?( )

14.

有如下Python程序,执行该程序后输出的结果是?( )

n = 5
def fun():
    global n
    n = n*2
    print(n)
fun()
print(n)
15.

小明需要升级安装最新版本的 numpy 库用于数据分析。正确的安装命令是?( )

16.

在Python语言中,当不确定需要传入的值是多少时,可以用*args来表示,执行如下程序段后的结果是?( )

def fun(*args):
    t = 0
    for x in args:
        t += x
    return t
print(fun(1) + fun(2, 3))
17.

下列有关递归与递推的描述中,正确的是?( )

18.

社团活动中,小明给小伙伴们出了一道编程题,请阅读Python程序,下列哪个选项描述是正确的?( )

def demo(n):
  s=1
  for i in range(1,n):
      s*=i
  return s
19.

下列生活问题中,不适合用分治策略解决的是?( )

20.

有如下Python程序段,执行该程序段后的结果是?( )

def mul(x, y=1):
    return x ** y
print(mul(2), mul(1, 2))
21.

在Python语言中,以下哪个函数调用可以正确输出"计算结果=9"?( )

函数定义如下:

def calc(x, y, z):
    ans = (x + y) * z
    print(f"计算结果={ans}")
22.

在学习完函数如何传递参数后,老师给出以下Python程序,让大家试运行一下,输出结果是?( )

def demo(x):
    return x * 2

print(demo(demo(2)))
23.

小明正在用枚举算法解决一个问题:找出所有满足各位数字之积等于12的三位数。为了提高程序运行效率,他需要选择一个合适的数值范围进行枚举。在以下选项中,哪种数值范围能让算法的执行效率最高?( )

24.

下列Python代码的输出结果是?( )

>>>s=lambda a,b:a*b
>>>s(4,4)
25.

有如下Python程序,执行该程序后,输出的结果是?( )

def f(n):
    if n == 1:
        return n
    else:
        return n + f(n//2)
print(f(10))
判断题 共 10 题
1.

小明用Python语言写了一个程序,计算从1加到n的总和,他分别用两种方法实现了这个功能:

# 方法一

total = 0
for i in range(1, n+1):
    total += i

# 方法二

total = n * (n+1) // 2

小明说,方法2比方法1快得多,因为方法1的时间复杂度是O(n+1),而方法2的时间复杂度是O(1)。( )

2.

小明正在学习求正方形的面积,他用Python语言创建了如下函数,他认为函数没有return返回值运行会错误。( )

fun = lambda x : x ** 2

3.

Python语言编程中,如果参数输入的类型不匹配,运行时程序会报错。( )

4.

在Python语言中,函数的核心意义在于将代码模块化、提高代码执行效率,并通过抽象化逻辑降低复杂性。( )

5.

递推基本思想是通过已知条件,利用递推关系(或递推公式)来求解问题。递推关系通常是一个或多个前项与当前项之间的关系式。( )

6.

分治算法的必要条件之一,是分解后的子问题可以独立求解。( )

7.

在Python语言中,函数的关键字实参是通过“关键字=值”方式,将实参与形参关联映射,实参顺序要严格按照形参顺序传递,否则运行结果会发生改变。( )

8.

使用pip list命令可以查看当前Python环境中所有已安装的第三方库及版本信息。( )

9.

Python语言编程中,函数如果没有return语句,默认返回None。( )

10.

递归思想是一种直接或间接地调用自身的算法设计方法,通常用于解决那些问题本身可以被分解为更小的相同类型问题的情况。( )

C++ 编辑器
输入
输出