选择题 共25道

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25


判断题 共10道

26 27 28 29 30 31 32 33 34 35


编程题 共3道

36 37 38

124 | 202406Python四级真题-考试
选择题 共25道
01

执行以下程序后所输出的结果是?( )

def f(n):
   s=0
   for i in range(2, n+1):
       p = True
       for j in range(2, int(i**0.5)+1):
           if i % j == 0:
               p = False
               break    
       if p==True and i%3==1:
           s=s+i
   return s
print(f(13))

2分
登录后查看选项
02

以下说法错误的是?( )

2分
登录后查看选项
03

当程序运行时,如果自定义函数内某个变量与程序的全局变量使用相同的变量名,程序会如何处理?( )

2分
登录后查看选项
04

如下代码,运行之后,最终打印结果是?( )

def f(x):        
   color=["红","橙","黄","绿","青","蓝","紫"]
   def lucky(x,y):    
       n=x+y
       return n
   m=x*int(lucky(5,6))%7
   print("幸运颜色是:",color[m])
f(5)

2分
登录后查看选项
05

以下有关return 语句的表述中错误的是?( )

2分
登录后查看选项
06

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

2分
登录后查看选项
07

用枚举算法求解“各位数之和等于8的所有三位数”时,下列枚举范围中效率最高的是?( )

2分
登录后查看选项
08

下列关于分治算法的描述中,错误的是?( )

2分
登录后查看选项
09

解决下列问题体现分治算法思想的是?( )

2分
登录后查看选项
10

有6位学生的身高分别为“166、168、169、171、172、175”,其中小王的身高为172,若采用二分查找,则需要找多少次才能够找到小王?( )

2分
登录后查看选项
11

阶乘是一个数与所有小于它的正整数的乘积。例如,5的阶乘(写作5!)是5 * 4 * 3 * 2 * 1 = 120。以下是用递归方法编写求阶乘的代码,横线处填写的代码是?( )
def fun(n):
   if n == 1:
       return 1
   else:
       return ________
print(fun(5))

2分
登录后查看选项
12

运行如下代码,请输出运算结果?( )
def fun(lst):
   if len(lst) == 0:
       return 0
   return lst[0] + fun(lst[1:])
x = [1,2,3,4,5]
print(fun(x))

2分
登录后查看选项
13

以下是编写一个Python函数,使用递归方法实现字符串的反转,请在横线处填写正确的代码?( )

def fun(s):
   if len(s) <= 1:
       return s
   else:
       return _____________
x = "abcde"
print(fun(x))


2分
登录后查看选项
14

运行以下代码,请输出运算结果?( )
def fun(s, n):
   if n == 0:
       return ""
   else:
       return s + fun(s, n-1)
s = "abc"
n = 3
print(fun(s, n))

2分
登录后查看选项
15

运行以下代码,请输出运算结果?( )
x = 1
while x < 100:
   if  x % 3 != 0:
       print(x, end=',')
   elif x // 10:
       break
   x += 2
print(x)

2分
登录后查看选项
16

下面图形每一行从字母A开始,以ABC方式重复。行数为输入的整数。请在python代码段横线处填入合适的代码?( )

A

AB

ABC

ABCA

ABCAB

ABCABC

ABCABCA

n = int(input())
for i in range(1, n+1):
   for j in range(0, i):
       print("%s" % _____________, end='')
   print()

2分
登录后查看选项
17

以下哪种情况下适合使用自定义函数?( )

2分
登录后查看选项
18

调用自定义函数时,以下哪种情况下程序运行时一定会出错?( )

2分
登录后查看选项
19

以下程序语句中,存在语法错误的是?( )

2分
登录后查看选项
20

对于如下自定义的函数:
def myfunc(a,b,c)
   return a+b+c
以下调用该函数的语句中,能正确执行的是?( )

2分
登录后查看选项
21

对于以下自定义函数及程序,运行后的结果是?( )

def prts( str ):

  print (str)

  return str

s="Py"

prts(prts(s))

2分
登录后查看选项
22

使用*args和**kwargs形参来定义函数时,正确的说法是?( )

2分
登录后查看选项
23

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

2分
登录后查看选项
24

用Python绘制y=x**2+6*x+2的函数图像,需要用到的模块是?( )

2分
登录后查看选项
25

陈明同学利用Python语言编写了一段“根据出生年月判断生肖属相”的程序,调试运行时,程序没有报错且顺利运行,但未能正确输出对应属相,造成这个结果的原因可能是?( )

2分
登录后查看选项
判断题 共10道
26

如果在函数内访问其作用域内不存在的变量,程序一定会报错。( )

2分
登录后查看选项
27

时间复杂度最小的是常数阶O(1)。( )

2分
登录后查看选项
28

某同学参加猜幸运数(幸运数范围是1-100之间)游戏:先猜50,主持人说偏大;然后猜25,主持人说偏小;然后又猜37……通过这种策略,该同学很快猜出幸运数,这体现了分治思想。( )

2分
登录后查看选项
29

某个问题既能用递归算法求解,又能用递推算法求解,则使用递归算法求解更容易,效率也高得多。( )

2分
登录后查看选项
30

执行如下代码,输出结果是95。( )
n = 100
while n > 0:
   if n % 2:
       break
   elif n % 3 == 0:
       n -= 5
   else:
       n -= 20
print(n)

2分
登录后查看选项
31

自定义函数中可以不使用return语句,但匿名函数中要通过return语句返回运算结果。( )

2分
登录后查看选项
32

如果允许形参设置默认值,则函数定义时要先列出没有默认值的形参,再列出有默认值的形参。( )

2分
登录后查看选项
33

Numpy是Python的一个第三方库,是一个科学计算库,提供各种数学运算和科学计算的方法。( )

2分
登录后查看选项
34

变量作用域的使用可提高程序逻辑的局部性,增强程序的可靠性,减少名字冲突,有效提高程序运行效率。( )

2分
登录后查看选项
35

编程时,必须把实现复杂功能的代码封装起来,设计成函数。( )

2分
登录后查看选项
编程题 共3道
36

计算问题

从1到n的数字(包含n),分别计算出能被k整除的数字之和与不能被k整除的数字之和,并输出它们差的绝对值,完成下列程序。

n=int(input("n="))
k=int(input("k="))
s1,s2=0,0
for i in range(1,                ):
   if(                ==0):
       s1=                
   else:
       s2=                
print(                )

10分
登录后作答
37

劳动实践基地

育才学校的劳动实践基地是一个巨大的矩形,参与劳动实践的同学们每次只能种一个正方形地块,每种一个正方形时所花的体力值是正方形的周长,本学期种过的地不可以再种,同学们想使用最少的体力值去种完这块田地,请帮助计算花费最小的体力值。

输入格式

两个正整数 x,y,表示田地的长和宽。

输出格式

输出最小体力值。

输入样例1

1 10

输出样例1

40

输入样例2

2 2

输出样例2

8

def solve(x, y):

   if x == y:

       return                

   if x > y:

       a, b = x, y

   else:

       a, b =                

   if                :

       return 4 * a

   else:

       return 4 * a + solve(                , b)

n, m = map(int, input().split())

print(solve(n, m))

10分
登录后作答
38

约瑟夫环

2024年春节联欢晚会上,刘谦表演了一个纸牌魔术,深受观众欢迎。这个魔术的内容其实是一个经典的约瑟夫环问题,相当于n张牌形成一个环,依次循环报数,每次报到m的那一张牌扔掉,直到剩下最后一张牌。小智编写了以下程序来模拟8张牌的淘汰过程,请补充完成该程序。

def Josephus(num,gap):

    location_list = [a for a in range(1,num+1)]

    if num ==   1 :

                       

    else:

        index = 0

        for i in                :

           index = (index + gap - 1 )%                

           print("本次淘汰的牌为:",location_list[index])

           del location_list[index]

        print( "最后剩下的牌为:",location_list[                ])

Josephus(8,2)

10分
登录后作答