2024年3月电子学会Python编程等级考试(四级)真题题库

2024年3月青少年软件编程Python等级考试(四级)真题试卷

题目总数:38    总分数:100

选择题

第 1 题    单选题

运行如下Python代码,若输入整数3,则最终输出的结果为?( )

def f(x):if x==1:s=1else:s=f(x-1)*xreturn s
n=int(input("请输入一个大于1的整数:"))
print(f(n)+f(n-1))

A.

2

B.

4

C.

8

D.

16

第 2 题    单选题

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

def fun(x):if x > 3:return x * fun(x-1)else:return xprint(fun(6))

A.

120

B.

360

C.

720

D.

60

第 3 题    单选题

下列关于递归的描述不正确的是?( )

A.

递归函数一定包含if语句

B.

递归函数体内一定包含调用自身的语句

C.

在调用自身函数时需要明确的边界终止条件与边界值

D.

递归算法一般代码简洁,执行效率高,空间复杂度低

第 4 题    单选题

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

def fun(a, n):s = 0for i in range(1, n+1):temp = str(a)*is += int(temp)return s
print(fun(1, 3))

A.

3

B.

6

C.

12

D.

123

第 5 题    单选题

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

def fun(a, b):s = 0a = a[::-1]for i in range(len(a)):s += int(a[i])*b**ireturn s
print(fun('45', 16))

A.

69

B.

45

C.

64

D.

61

第 6 题    单选题

一个荷花池,第一天荷花开放得很少,第二天开放的数量是第一天的两倍,之后的每一天,荷花都会以前一天两倍的数量开放。如果到第30天,荷花就开满了整个池塘,设第一天开一朵,编程求第30天共开了多少朵荷花。下面空白处的python代码填写正确的是?( )

s = 0
t = 1
for i in range(1,        ①        ):    s += t②        
print(s)

A.

30, t = t*2

B.

31, t = t*2

C.

31, t+=2

D.

30, t*=2

第 7 题    单选题

解决下列问题时,时间复杂度最大的是?( )

A.

输入n个不同的包含两位小数的实数,计算这n个数的和

B.

在n个数据中,查找数据k

C.

将n个数据用冒泡排序实现排序

D.

计算算式1-2+3-4+...-n的结果,n为偶数

第 8 题    单选题

以下关于分治算法的描述正确的是?( )

A.

各个子问题既相互独立又相互联系

B.

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

C.

可以直接对问题进行求解

D.

子问题的解不能合并成原问题的解

第 9 题    单选题

下列选项中哪一项使用了分治算法?( )

A.

二分搜索

B.

选择搜索

C.

插入搜索

D.

顺序搜索

第 10 题    单选题

不超过20个元素的降序数列,使用对分查找能找到指定的元素,可能的查找次数不包括?( )

A.

3

B.

4

C.

5

D.

6

第 11 题    单选题

下面python程序段的输出结果是?( )

def add_Run(L=None):if L is None:L = ['Lying']else:L.append('Run')return L
add_Run()
print(add_Run())
print(add_Run(['Lying']))

A.

['Lying']

['Run']

B.

['Lying']

['Lying']

['Lying', 'Run']

C.

['Lying']

['Lying', 'Run']

D.

[]

['Lying', 'Run']

第 12 题    单选题

下面关于计数器的python程序,输出结果正确的是?( )

count = 0
def increment():global countcount += 1print("计数器的值:", count)
increment()
increment() 
increment()

A.

计数器的值: 1

计数器的值: 2

计数器的值: 3

B.

计数器的值:0

计数器的值:1

计数器的值:2

C.

计数器的值: 1

计数器的值: 1

计数器的值: 1

D.

计数器的值:3

第 13 题    单选题

下列Python程序段的输出结果是?( )

L = []
x = 3
def  test(x):L.append(x)x = 5
test(x)
print('L = {}, x = {}'.format(L, x))

A.

L = [3], x = 3

B.

L = [5], x = 5

C.

L = [3], x = 5

D.

L = 3, x = 5

第 14 题    单选题

以下Python程序,运行程序输出结果正确的是?( )

def demo(x):  return x*2 
print(demo(demo(1)))

A.

return  None

B.

2

C.

4

D.

8

第 15 题    单选题

Python使用下列哪个函数接收用户输入的数据?( )

A.

accept()

B.

input()

C.

print()

D.

login()

第 16 题    单选题

下面Python程序段的输出结果正确的是?( )

def  power():x ='python'y = 'world'z = x + " " + yreturn z
print(power())

A.

z

B.

x + " " + y

C.

python world

D.

python" "world

第 17 题    单选题

下列关于Python函数的描述中,不正确的是?( )

A.

自定义函数时用到的关键字是def

B.

在python函数中,至少有一条return语句

C.

函数print()可以一次输出多个参数,如print('1',"2",3,[4])

D.

用函数eval()可以用于求字符串里表达式的值,如eval('3+5-1')

第 18 题    单选题

关于以下Python代码的描述中,正确的是?( )

#求两个正方形的面积差
def MianJiCha(a,b):s=a**2-b**2 return s
a=5
b=10
c=MianJiCha(b,a)+a

A.

代码运行后,变量c的值是80

B.

函数名是MianJiCha(a,b)

C.

可以用MianJiCha(100)的形式调用此函数

D.

代码运行时会报错

第 19 题    单选题

下列关于Python函数的说法中,错误的是?( )

A.

利用函数可以降低编程复杂度,增加代码可读性

B.

函数可以重复调用

C.

函数可以降低修改代码的工作量

D.

调用函数时,每次都必须输入相同的参数值

第 20 题    单选题

下列选项中,调用下列代码定义的函数时,程序会报错的是?( )

def ShuChu(a,b,c):

    print(c,b,a)

A.

ShuChu('1','2','3')

B.

ShuChu('1','2','3,4')

C.

ShuChu(1,2,3)

D.

ShuChu(1,2,3,4)

第 21 题    单选题

下列选项中,调用以下代码定义的函数时,程序会报错的是?( )

 def kp(a,b,c): 

    print(a,b,c)

A.

kp(1,b=2,3)

B.

kp(a=3,b=1,c=2)

C.

kp(1,2,3)

D.

kp(1,b=2,c=3)

第 22 题    单选题

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

>>>s=lambda m,n:m*n

>>>s(6,6)

A.

6

B.

6,6

C.

36

D.

12

第 23 题    单选题

以下函数定义错误的选项是?( )

A.

def aFunc(m,n):

    print(m,n)

B.

def aFunc(m,n=2):

    print(m,n)

C.

def aFunc(*m,n):

    print(m,n)

D.

def aFunc(m,*n):

    print(m,n)

第 24 题    单选题

用于安装Python第三方库的工具是?

A.

install

B.

pip

C.

Wheel

D.

setup

第 25 题    单选题

编程时,如果只需要导入某第三方库中的某个成员,需要使用到的关键字是?( )

A.

from

B.

as

C.

into

D.

inport

判断题

第 26 题    判断题

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

A.

正确

B.

错误

第 27 题    判断题

如下代码因为递归的边界条件设置错误,产生了无限递归程序报错。( )

def fun(n):if n > 10:return 0else:return n + fun(n-1)
print(fun(10))

A.

正确

B.

错误

第 28 题    判断题

算法的时间复杂度与空间复杂度没有必然关系。( )

A.

正确

B.

错误

第 29 题    判断题

已知有n本按照书名拼音排序好的图书,使用对分查找法搜索其中任何一本书,最多查找次数为4次,则n的值有可能为10。( )

A.

正确

B.

错误

第 30 题    判断题

函数定义语句def  f(c=1,d=2,a,b):是正确的,因为默认值形参要放在前面。( )

A.

正确

B.

错误

第 31 题    判断题

return语句可以返回任何数据类型的值,包括整数、浮点数、字符串、列表、元组、字典等。( )

A.

正确

B.

错误

第 32 题    判断题

def ZiDian(**kwargs):print(kwargs)
ZiDian(a=1)

运行上面的Python代码后,输出结果为{'a':1}。( )

A.

正确

B.

错误

第 33 题    判断题

以下Python代码可以正常运行,输出8。( )

def qh(a,b=3):print(a+b)
qh(b=2,6)

A.

正确

B.

错误

第 34 题    判断题

python代码>>>lambda:x=2,y=3:x+y 的运行结果是5。( )

A.

正确

B.

错误

第 35 题    判断题

使用pip install --upgrade numpy命令能够升级numpy科学计算库。( )

A.

正确

B.

错误

编程题

第 36 题    问答题

数的分解

 给出一个正整数a,要求分解成若干个正整数的乘积,即a=a1×a2×a3×...×an,并且1<a1≤a2≤a3≤...≤an,问这样分解的种类有多少。注意到a=a也是一种分解。

例如,8可以分解成8=2*2*2,8=2*4,8=8总共3种。  

python代码如下,完善划线处的代码:

def fun(x, y=2):if x == 1:global ans①        for i in range(y, x+1):if         ②        :fun(x//i,i)
lst = [2, 8, 9, 20] #测试数据
for i in lst:ans = 0③        print(ans)

程序运行结果如下:

1
3
2
4

第 37 题    问答题

购物组合

小明单位发了100元的购物卡,小明到超市买三类洗化用品:洗发水(15元)、香皂(2元)、牙刷(5元)。要把100元正好花掉,可有哪些购买组合?

def  gouwu(money):for i in range(0,money//15+1):for j in range(0,money//2+1):for  k  in  range(0,        ①        ):if           ②        :print('可选择的购买组合:\t购买洗发水 {} 瓶,香皂 {} 块,牙刷 {}个。'.format(        ③        ))
gouwu(100)

第 38 题    问答题

回文素数

回文素数是指一个不小于11的自然数n从左向右和从右向左读,其结果值相同且是素数,即称n为回文素数。一种求解的方法是先判断一个自然数是否为回文数,再判断它是否为素数。如果两个判断都成立,则该自然数是回文素数。请补全python代码,找出自然数1000以内的所有回文素数。

#判断是否为素数
def         ①        (n):             for i in range(2,n):if         ②        :breakelse:return True#判断是否为回文数
def HuiWenShu(n):n=str(n)if n==        ③        :return Trueelse:return False
for i in range(11,1001):if ZhiShu(i)==True         ④        :print('{}是回文素数!'.format(i))

少儿编程在线题库:http://www.6547.cn/paper/view/afgf9iv08x9ikvzs

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/846114.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java动态获取实体类字段的方法

1.使用反射&#xff08;Reflection&#xff09;API来动态地获取实体类的字段 在Java中&#xff0c;我们可以使用反射&#xff08;Reflection&#xff09;API来动态地获取实体类的字段。以下是一个详细的代码示例&#xff0c;演示了如何获取一个实体类的所有字段&#xff1a; …

arm cortex-m架构 SVC指令详解以及其在freertos的应用

1. 前置知识 本文基于arm cortex-m架构描述&#xff0c; 关于arm cortex-m的一些基础知识可以参考我另外几篇文章&#xff1a; arm cortex-m 架构简述arm异常处理分析c语言函数调用规范-基于arm 分析 2 SVC指令 2.1 SVC指令位域表示 bit15 - bit12&#xff1a;条件码&#…

SOFA-RPC学习记录

文章目录 需求分析模块划分微服务模块交互模块 可拓展架构插件机制 功能分析交互模块 学习微服务模块交互模块 dubbo与nacos集成学习Nacos配置中心实战 dubbo与apollo集成学习配置中心组件与k8s的抉择参考资料 结论 本报告旨在深入学习SOFA-RPC框架&#xff0c;特别是其动态配置…

LeetCode 每日一题 2024/5/27-2024/6/2

记录了初步解题思路 以及本地实现代码&#xff1b;并不一定为最优 也希望大家能一起探讨 一起进步 目录 5/27 2028. 找出缺失的观测数据5/28 2951. 找出峰值5/29 2981. 找出出现至少三次的最长特殊子字符串 I5/30 2982. 找出出现至少三次的最长特殊子字符串 II5/31 2965. 找出缺…

Linux综合实践(Ubuntu)

目录 一、配置任务 1.1 配置该服务器的软件源为中科大软件源 1.2 安装相关软件openssh-server和vim 1.3 设置双网卡&#xff0c;网卡1为NAT模式&#xff0c;网卡2为桥接模式(桥接模式下&#xff0c;使用静态ip&#xff0c;该网卡数据跟实验室主机网络设置相似&#xff0c;除…

如何搜索[仅有1个文件]或[指定个数范围、名称、类型文件等复杂情况]的文件夹

首先&#xff0c;需要用到的这个工具&#xff1a; 度娘网盘 提取码&#xff1a;qwu2 蓝奏云 提取码&#xff1a;2r1z 打开工具&#xff0c;切换到批量复制板块&#xff0c;用Ctrl5可以快速切换 然后鼠标移动到工具的贴边的右侧&#xff0c;不是移出工具外面&#xff0c;还在…

【赠书第22期】AI绘画全面精通

文章目录 前言 1 AI绘画基础知识 2 AI绘画技术应用 2.1 风格迁移 2.2 自动绘画 2.3 辅助绘画 3 AI绘画发展前景 3.1 艺术创作领域的变革 3.2 跨领域融合与创新 3.3 个性化艺术创作的普及 4 结语 5 推荐图书 6 粉丝福利 前言 随着科技的飞速发展&#xff0c;人工智…

自学 Java 怎么入门?

关于自学 Java 如何入门这一重要课题&#xff0c;在此为大家进行详细阐述。 在此之前&#xff0c;如果大家有兴趣的话&#xff0c;可以看看我自己精心整理的嵌入式入门资料&#xff0c;这些资料将全部免费送给大家。其中包含了编程教学内容、详细的视频讲解、实用的数据库资料…

锅炉智能制造工厂工业物联数字孪生平台,推进制造业数字化转型

在制造业快速发展的今天&#xff0c;数字化转型已经成为企业提升竞争力的关键途径。锅炉智能制造工厂工业物联数字孪生平台&#xff0c;作为一种创新的技术解决方案&#xff0c;正以其独特的优势&#xff0c;为制造业的数字化转型提供强大动力。锅炉智能制造工厂工业物联数字孪…

libevent源码跨平台编译(windows/macos/linux)

1.windows编译: 克隆: git clone https://github.com/libevent/libevent.git 克隆成功 生成makefile 生成成功 默认不支持OpenSSL,MbedTLS,ZLIB这三个库 编译: cmake --build . --config release

设计模式(一)单例模式

文章目录 单例模式简介单例模式实现饿汉式-静态常量饿汉式-静态代码块懒汉式-线程不安全线程安全-同步方法懒汉式-线程不安全-单一判断懒汉式-线程安全-双重判断&#xff08;推荐使用&#xff09;懒汉式-线程安全-静态内部类枚举类 单例模式简介 单例模式属于创建型设计模式&a…

深入分析 Android Service (完)

文章目录 深入分析 Android Service (完)1. Service 的生命周期管理2. Service 的生命周期方法2.1 onCreate()2.2 onStartCommand(Intent intent, int flags, int startId)2.3 onBind(Intent intent)2.4 onUnbind(Intent intent)2.5 onRebind(Intent intent)2.6 onDestroy() 3.…

centos系统上新建用户

目录 新建用户 设置密码 给予sudo权限 切换到新用户 新建用户 adduser 用户名 设置密码 passwd 用户名 给予sudo权限 usermod -aG wheel 用户名 切换到新用户 su 用户名

子集树与排列树的构造

排列树的构造&#xff1a; 无重复画法&#xff1a;一条线前面出现的不再出现。 有重复画法&#xff1a;一条线前面出现的不再出现&#xff0c;如果仅仅只是相似可以出现&#xff1b;兄弟不能相似。 目标函数是&#xff1a;cnt 总元素个数分支策略是全遍历&#xff0c;不过存…

如何在 JavaScript 中快速读取文件

假设您需要使用 JavaScript 在服务器上读取多个文件。Node.js 这样的运行时环境中有许多读取文件的方法。哪一种最好&#xff1f;让我们来考虑各种方法。 使用 fs.promises const fs require(fs/promises); const readFile fs.readFile; readFile("lipsum.txt", …

二级指针简单介绍

我们之前学习的&#xff1a;变量的地址是存入指针变量中的&#xff0c;然而指针变量也是变量&#xff0c;是变量就有地址&#xff0c;那么指针变量的地址存放在哪里 &#xff1f; 这也就是二级指针 #include<stdio.h> int main() {int a10;int*p&a;int**pp&p;re…

微软如何打造数字零售力航母系列科普12 - 使用Microsoft Fabric将客户数据带入人工智能时代

【世界上充斥着数据&#xff0c;在过去的2年里&#xff0c;我们都看到了人工智能如何有潜力彻底改变我们的日常业务。人们对利用生成性人工智能体验的力量的需求越来越大&#xff0c;但这样做需要一个干净的数据庄园&#xff0c;而且可能会因为各种技术堆栈、分散的团队和无处不…

如何让Google快速收录?

要让Google快速收录你的网站&#xff0c;可以考虑使用GSI服务&#xff0c;这是一种专门设计来加速网站被Google搜索引擎收录的服务&#xff0c;下面详细解释GSI服务的基本原理和具体好处&#xff1a; GSI服务通过一种名为GPC爬虫池的系统实现&#xff0c;这个系统是基于对Goog…

MySQL查询成本

MySQL查询成本 MySLQ会将优化后的语句分别计算成本&#xff0c;取最优SQL执行。MySQL查询成本分为&#xff1a; IO成本&#xff1a;将磁盘数据加载到内存的成本。在MySQL的InnoDB引擎中就是一个叶子页。默认成本1.0.CPU成本&#xff1a;数据读取检测是否复核搜索条件。默认成…