#117. CIE Python 四级 2025年03月 客观题

CIE Python 四级 2025年03月 客观题

一、单选题(共25题,共50分)

  1. 下列程序段的运行结果是?( )
def s(n):
    if n==3:
        return 4
    else:
        return n+s(n-1)
print(s(5))

{{ select(1) }}

  • 1
  • 12
  • 13
  • 15
  1. 下列程序段的运行结果是16,则在①处填写的代码是?( )
def s(n):
    s=1
    for a in range(1,5):
              ①        
    return s
print(s(4))

{{ select(2) }}

  • s=s*2
  • s=s+n
  • s=s+a
  • s=s+1
  1. 下列程序功能是通过递归来实现将一个十进制数转换为八进制数,则在______处填写的代码是?( )
def s(n):
    if n < 8:
        return str(n)
    else:
        return _____________
m = s(int(input("输入十进制数字:")))
print("转换后八进制数是:",m)

{{ select(3) }}

  • s(n//8)+n
  • s(n//8)
  • s(n//8)+str(n%8)
  • str(n%8)
  1. 关于递归算法的特点,以下选项中描述错误的是?( )

{{ select(4) }}

  • 递归算法一定存在递归出口
  • 递归的特点就是反复调用自身,将大问题变为同类小问题
  • 递归可以避免使用复杂的循环结构,从而有效降低代码的复杂程度
  • 递归算法简洁,运行效率较高
  1. 有如下Python程序,执行该程序的结果是?( )
def nxs(n):
    s = 0
    while n >0:
        s = s * 10 + n % 10
        n //= 10
    return s
print(nxs(123))

{{ select(5) }}

  • 123
  • 6
  • 231
  • 321
  1. 有如下Python程序,执行该程序后变量c的值是?( )
def prime(n):
    for i in range(2,n):
        if n % i == 0:
            return 0
    return 1
c = 0
for i in range(2,10):
    if prime(i):
        c += 1

{{ select(6) }}

  • 3
  • 4
  • 5
  • 6
  1. 有如下Python程序,执行该程序后,输出的结果是?( )
def zdz(s):
    m = s[0]
    for i in s[1:]:
        if i > m:
            m = i
    return m
print(zdz('abc789XYZ'))

{{ select(7) }}

  • c
  • 9
  • Z
  • None
  1. 有如下Python程序,执行该程序后输出的结果是?( )
n = 10
def fun():
    global n
    n = n ** 2
    print(n)
fun()
print(n)

{{ select(8) }}

  • 100
    100
    
  • 20
    20
    
  • 100
    10
    
  • 10
    100
    
  1. 在Python中,可以通过什么语句导入现有的标准库或者其他人提供的第三方库来编程?( )

{{ select(9) }}

  • import
  • def
  • input
  • output
  1. Python程序中某函数使用了3个变量,其中2个变量都指定了默认值,调用该函数时,参数的个数最少为几个?( )

{{ select(10) }}

  • 0
  • 2
  • 1
  • 3
  1. 递归算法的基本思想是把规模较大的问题变成规模较小的问题,下列选项中哪一项必须要有?( )

{{ select(11) }}

  • 循环语句
  • 数学知识
  • 明确的结束递归的边界条件
  • 明确的开始递归的边界条件
  1. 图1是一个水平摆放的小正方体木块,图2,图3是由这样的小正方体木块叠放而成的,按照这样的规律放下去,第七个叠放的图形有多少个正方形木块?这个问题我们可以用以下什么算法解决?( )

{{ select(12) }}

  • 查找
  • 递推
  • 排序
  • 选择
  1. 以下算法中,不可以按照分治的策略问题由大化小的是?( )

{{ select(13) }}

  • 快速排序
  • 冒泡排序
  • 汉诺塔
  • 二分查找
  1. 以下函数的功能是求长方形面积,函数调用的正确方式是哪一项?( )
def fun(a, b):
    return a * b

{{ select(14) }}

  • fun(a = 1, 2)
  • fun(a = 1)
  • fun(2)
  • fun(1, b=2)
  1. 以下函数求圆的面积,运行如下代码结果正确的是哪一项?( )
def fun(r, pi=3.14):
    return r * r * pi
print(fun(10, 3))

{{ select(15) }}

  • 314
  • 300
  • 31.4
  • 程序会报错
  1. 以下函数用“分治算法”求列表元素之和,请补全代码?( )
def fun(arr):  
    if len(arr) == 1:
        return arr[0]
    mid = len(arr) // 2
    left = fun(arr[:mid])
    right = ____________
    return left + right
arr = [1,2,3,4,5,6,7,8,9,10]
print(fun(arr))

{{ select(16) }}

  • fun(arr[mid+1:])
  • sum([mid:])
  • fun(arr[mid:])
  • sum(arr[mid+1:])
  1. 下列关于创建词云图的是哪个模块?( )

{{ select(17) }}

  • pyquery
  • wordcloud
  • xlrd
  • wheel
  1. 下列正确导入海龟库的方式是?( )

{{ select(18) }}

  • import turtle as
  • from turtle as t
  • from turtle import t
  • import turtle
  1. 以下哪一项不属于分治算法的特征?( )

{{ select(19) }}

  • 一个复杂的问题可以划分成多个相同或相似的子问题
  • 划分出的子问题容易找到简单的求解方法
  • 将所有子问题的解合并起来可以得到原问题的解
  • 分治算法的执行效率很低
  1. 小明班上有50人,数学成绩已经由高到低排列,使用二分查找查找出小明的成绩,至多进行几次查找?( )

{{ select(20) }}

  • 50次
  • 8次
  • 7次
  • 6次
  1. 对于Python语句f=lambda x,y:x**y+x//yprint(f(7,2))的输出结果是?( )

{{ select(21) }}

  • 17
  • 18
  • 52
  • 53
  1. 运行下列程序,输出的结果是?( )
def  fn(x, y):
        if x >=y:
                return x-y
        else:
                return y
print(fn(4, 7),fn(8, 5))

{{ select(22) }}

  • 7 3
  • 7 5
  • -3 5
  • -3 3
  1. 下列有关函数的说法,不正确的是?( )

{{ select(23) }}

  • 使用random模块的函数randint(1, 100)获取随机数时,有可能会得到100
  • 如果Python程序包含一个函数main(),这个函数与其他函数地位相同
  • 函数是代码复用的一种方式
  • 已知 f = lambda x: 5,那么表达式 f(3)的值为3
  1. 运行下列程序,输出的结果是?( )
def f(x=2,y=0):
        return x-y
y=f(y=f(),x=5)
print(y)

{{ select(24) }}

  • -3
  • 3
  • 2
  • 5
  1. 当n为10时,运行下列Python程序后的结果是?( )
def  fn(num):
    if num % 2 == 0:
        return False
    else:
        return True
n=int(input("请输入一个正整数:"))
print(fn(n))

{{ select(25) }}

  • True
  • False
  • 出错不能运行
  • None

二、判断题(共10题,共20分)

  1. 递归算法需要设置递归终止条件,不然会进入无限递归的情况。( )

{{ select(26) }}

  • 正确
  • 错误
  1. 递归算法的特点是调用自身,所以占用的存储空间较小。( )

{{ select(27) }}

  • 正确
  • 错误
  1. 添加第三方库可以不用命令或集成开发工具,直接通过网络工具下载任意该库的.exe安装文件,运行安装即可。( )

{{ select(28) }}

  • 正确
  • 错误
  1. Python中return语句将函数值返回到调用函数的代码处。( )

{{ select(29) }}

  • 正确
  • 错误
  1. 函数的返回值可以是整数型、字符串型、列表等,不能是字典类型。( )

{{ select(30) }}

  • 正确
  • 错误
  1. 运行以下代码:
def fun(x, y, z):
    return x + y - z
print(fun(1, y=10, 3)

运行结果为:8。( )

{{ select(31) }}

  • 正确
  • 错误
  1. 一个袋子里有128枚硬币,其中一枚是假币,并且假币和真币外观一模一样,仅凭肉眼无法区分,仅知道假币比真币轻一些,我们现在借助天平来查找假币,最多称9次可以找到假币。( )

{{ select(32) }}

  • 正确
  • 错误
  1. 算法的空间复杂度越高,说明算法对应的程序代码量越多。( )

{{ select(33) }}

  • 正确
  • 错误
  1. 在Python中自定义函数时,形参与返回值不是必需的( )

{{ select(34) }}

  • 正确
  • 错误
  1. 在Python中,函数体return语句之后的代码行都不会被执行,return语句结束整个函数。( )

{{ select(35) }}

  • 正确
  • 错误