万卷网> 电子学会考级 >Python等级考试 > 2023年3月电子学会青少年软件编程(Python四级)等级考试试卷

2023年3月电子学会青少年软件编程(Python四级)等级考试试卷
客观题 四级 2023 2023-04-06 12:54:20 85

一、单选题

1.

甲同学第一天跳绳100下,第二天开始每天增加5下;乙同学第一天跳绳100下,每隔一天增加10下。计算30天两人的跳绳总数。

甲的跳绳数:100、105、110、115、120……

乙的跳绳数:100、100、110、110、120……

请补全程序代码?( )

a=100    #甲同学第一天跳绳次数
b=100    #乙同学第一天跳绳次数
x=a      #甲同学累计跳绳次数,初始值是第一天的次数
y=b      #乙同学累计跳绳次数,初始值是第一天的次数
#从第二天开始迭代计算
for i in range(2,31):
    a=     ①            #甲同学每天增加5次
    if i%2==1:    #当天数为奇数时
        b=     ②        #乙同学增加10次
    x=x+a
    y=y+b
print("甲同学30天跳绳",x,"下")
print("乙同学30天跳绳",y,"下")


A.

a+5;b+10

B.

+5;+10

C.

a+10;b+5

D.

+10;+5

2.

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

A.

递归函数中肯定有循环结构;

B.

递归没有体现“大事化小”的思想;

C.

递归有明确的结束递归的边界条件;

D.

递归执行效率较高。

3.

某人将自己密码旅行箱的密码遗忘了。当事人记起密码是一个三位自然数,并且密码个位数是8,其它位含1但不能确定是哪一位。请将所有可能的密码遍历出来。

请完成程序并运行?( )

 for x in range(100,__ ①__): #三位密码的范围
         if ____ ②___ and "1" in str(x): #符合条件的密码
                 print(x)


A.

999;x%10=8

B.

999:x%10==8

C.

1000;x%10=8

D.

1000;x%10==8

4.

用分治法查找列表中是否存在指定的数字。给定的列表已升序排序。请补全程序代码?( )

#在列表cards中查找数字x,返回下标值,若未找到,返回-1
def serch(cards=list,x=int):
    a=0             #定义左端点下标
    b=len(cards)-1  #定义右端点下标
    #逐级分割查找范围,缩小查找规模
    while a<=b:
        m=(a+b)//2       #定义中点下标
        if x==cards[m]:  #x刚好等于中点值
            return m
        elif      ①     : #x<中点值,说明x位于左段位置
            b=m-1        #重新定义右端点
        else:
            a=m+1        #重新定义左端点
    return -1            #未找到,返回-1
#主程序
#在列表d中查找用户输入的数字r
d=[1,6,16,24,44,46,79,80,81,82,87,102,134,151,156,188,196,202,212,226,228,248,272,274,286,306,321,351,363]
print(d)    #显示一下列表d
r=int(input("请输入要查找的数字:"))
y=serch(d,r)  #调用子函数,d,r是实参
if y>=0:
    print("已找到",r,",它是列表中第",y+1,"个数字")
else:
    print("未找到",r)


A.

x<cards[m-1]

B.

x<cards[m]

C.

x>cards[m-1]

D.

x>cards[m]

5.

下列关于函数返回值的描述中,正确的是?( )

A.

Python函数的返回值使用很灵活,可以没有返回值,可以有一个或多个返回值。

B.

函数定义中最多含有一个return语句。

C.

在函数定义中使用return语句时,至少给一个返回值

D.

函数只能通过print语句和return语句给出运行结果

6.

小方要在程序中生成[10,99]之间的随机整数,下列程序不能实现的是?( )

A.

 import random

a = random.randint(10,99)

B.

 import random as t

a = t.randint(10,99)

C.

 from random import randint

a = randint(10,99)

D.

 from random import randint as t

a = t.randint(10,99)

7.

运行下列程序后,输出的结果是?( )

def fun(s):
    if len(s) == 1:
        return s
    else:
        return fun(s[1:]) + s[0]
print(fun('CIE2023'))


A.

3202EIC

B.

EIC3202

C.

3220EIC

D.

EIC2023

8.

运行下列程序,输出的结果是?( )

Sum=1
for i in range (1,5):
    Sum=Sum*i
print(Sum,i)


A.

24;5

B.

120;5

C.

24;4

D.

120;4

9.

运行下列程序,输出的结果是?( )

s = 0
def f(n):
    global s
    for i in range(n):
        s = s + i
    return s
print(f(f(3)))


A.

3

B.

6

C.

9

D.

0

10.

下列哪个关键字可用来创建自定义函数?( )

A.

function;

B.

def;

C.

class;

D.

procedure。

11.

运行下列程序,运行的结果是?( )

def leijia(x):
    x += 1
    return x
x=10
y=leijia(x)
print(y)


A.

1

B.

10

C.

11

D.

None

12.

运行下列程序,输出的结果是?( )

rst = lambda a,b=5:a*b

print(rst(5))

A.

5

B.

15

C.

25

D.

35

13.

关于下列代码的描述,错误的是?( )

def fact(n):
    s=1
    for i in range(1,n+1):
        s*=i
    return s


A.

s不能在函数外使用

B.

range()函数是Python内置函数

C.

如果n=4,返回的值为24

D.

代码中n是可选参数

14.

运行下列程序,输出的结果是?( )

def js(n):
    s = 0
    while n:
        s = s * 10+n % 10
        n //= 10
    return s
print(js(20230110))


A.

20230110

B.

01103202

C.

2301102

D.

1103202

15.

下列有关自定义函数的描述,正确的是?( )

A.

函数的定义必须在程序的开头;

B.

函数定义后,其中的程序可以自动执行;

C.

函数定义后需要调用才会执行;

D.

函数体与关键字必须左对齐。

16.

用递归算法计算10的阶乘10!的值#自定义阶乘函数。自定义函数fact(n)是求n的阶乘。

10!=1×2×3×…×10

请补全程序代码?( )

#自定义函数
def fact(n):      #求阶乘
    if(n==1):     #终止条件
        return 1  #结束递归
    else:         #递归条件
        p=__①____  #调用递归(自身)
        return p  #返回乘积
#主程序
print("10!=",fact(10))  #调用递归


A.

n*fact(n-1)

B.

n*fact(n)

C.

n*fact(n+1)

D.

n**fact(n)

17.

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

A.

当问题的规模缩小到一定的程度就可以容易地解决;

B.

问题可以分解为若干个规模较小的相同问题;

C.

该问题所分解出的各个子问题是可以相互独立,也可以相互交叉;

D.

该问题分解出的子问题的解可以合并为该问题的解。

18.

在传递信息的过程中, 通常会将一些敏感信息进行加密,以下是对数据进行加密的Python程序段,若输入数据为“cie0108”,则输出的结果是?( )

def jm(t):
    s = ""
    for ch in t:
        if "0" <= ch <= "9":
            x = int(ch) + 3
            if x >= 10:
                x = x % 10
            ch = str(x)
        s = s + ch
    return s
print(jm('cie0108'))


A.

1343eic

B.

0108cie

C.

cie3431

D.

3431cie

19.

下列不属于Python数据分析与可视化第三方库的是?( )

A.

pandas

B.

matplotlib

C.

opencv

D.

numpy

20.

下列排序算法中,时间复杂度最小的是?( )

A.

插入排序

B.

冒泡排序

C.

快速排序

D.

选择排序

21.

张老师有n(范围在1到15之间)个礼物分给同学们,他请同学们猜礼物的数量,请问同学们猜几次后肯定知道礼物的数量(不算运气成分第1次或第2次就猜到)?( )

A.

15

B.

7

C.

4

D.

3

22.

运行下列程序,输出的结果是?( )

def jsarea(r, PI = 3.14):
    area = PI * r * r
print(jsarea(1))


A.

3.14

B.

因缺失参数,不能计算

C.

None

D.

程序代码有错误

23.

运行下列程序,输出的结果是?( )

def wenhao(name='zhejiang'):  
    print('hello' + name)  
  
wenhao()


A.

hello

B.

hellozhejiang

C.

helloname

D.

程序将提示运行错误

24.

在 Python 语言中,求列表长度用下列哪个函数?( )

A.

size

B.

len

C.

length

D.

str

25.

运行下列程序后,输出的结果是?( )

def jsh(n):
    if n == 1:
        return 1
    else:
        return n + jsh(n-1)
print(jsh(10))


A.

1

B.

35

C.

45

D.

55

二、判断题

1.

某同学用天平称量的过程如下:先放置100克砝码,砝码偏重;再将砝码改为50克,砝码偏轻;又将砝码改为75克……通过这种策略,该同学很快完成物品称重工作,这体现了分治思想。( )

A.正确 B.错误
2.

Python中调用close()函数可实现对文件内容的读取。( )

A.正确 B.错误
3.

函数是将实现相同功能的代码封装在一起,实现代码复用。( )

A.正确 B.错误
4.

关键字实参通过“关键字=值”的方式传值,不需要考虑函数调用过程中形参的顺序。( )

A.正确 B.错误
5.

一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。如果所有兔子都不死,那么一年以后可以繁殖多少对兔子?

经分析,从第三个月起,每个月的兔子数是上个月与上上个月兔子之和。

请判读以下程序是否正确。( )

#自定义函数
def fib(n):      #斐波那契数列
    if n<=2:
        return 1
    else:
        return  fib(n-1)+fib(n-2)  #前两个数字之和
#主程序,显示每个月兔子数(斐波那契数列)
for i in range(1,13):
    print("第",i,"个月兔子对数为:",fib(i))


A.正确 B.错误
6.

下列两个代码块的功能一样。( )

A.

if(year%4)==0:                  
       if(year%100)==0:
            print(year)

B.

if(year%4)==0 and (year%100)==0:                  
     print(year)


A.正确 B.错误
7.

使用"pip install-upgrade pandas"命令能够升级pandas库。( )

A.正确 B.错误
8.

递推是按照一定的规律计算序列中的每一项,通常是通过计算前面的一些项来计算后一项的值。( )

A.正确 B.错误
9.

下面的程序会输出两个值。( )

def r(a,b):
   s=a+b
   b+=1
   return s
print(r(3,8))


A.正确 B.错误
10.

创建自定义函数时,不需要声明函数形参的类型,形参的类型由调用自定义函数时传递的实参类型确定。( )

A.正确 B.错误
公众号
客服 反馈
顶部