内容正文:
百师联盟2025届高三开年摸底联考
技术试题
注意事项:
1.答卷前,考生务必将自己的姓名、考场号、座位号、准考证号填写在答题卡上。
2.回答选择题时,选出每小题答案后,用铅笔把答题卡上对应题目的答案标号涂黑,如需改动,用橡皮擦干净后,再选涂其他答案标号。回答非选择题时,将答案写在答题卡上,写在本试卷上无效。
3.考试结束后,将本试卷和答题卡一并交回。
考试时间为90分钟,满分100分
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1. 智能翻译工具通过学习海量语料数据(包括各种语言的词汇、语法结构、语义表达以及不同语境下的惯用表述)来建立预训练模型,进而掌握不同语言之间的语法、词汇和语境关系。当用户输入文字或文档或图片时,智能翻译工具会迅速在模型中检索和匹配相关内容,结合上下文和语言模式进行推理,从而生成准确的目标语言翻译。当智能翻译工具处理用户输入的内容时,其生成目标语言翻译的关键步骤不包括( )
A. 在模型中检索和匹配相关内容 B. 结合上下文和语言模式进行推理
C. 直接按照固定翻译规则进行翻译 D. 利用预训练模型中掌握的语言关系
2. 智能翻译工具通过学习海量的语料数据(包括各种语言的词汇、语法结构、语义表达以及不同语境下的惯用表述)来建立预训练模型,进而掌握不同语言之间的语法、词汇和语境关系。当用户输入文字或文档或图片时,智能翻译工具会迅速在模型中检索和匹配相关内容,结合上下文和语言模式进行推理,从而生成准确的目标语言翻译。智能翻译工具在建立预训练模型时,如何有效地组织和管理海量的语料数据( )
A. 根据数据的来源和时间顺序进行简单排序
B. 运用先进数据结构实施精细化分类与索引
C. 随意堆放数据,不进行任何分类或整理
D. 仅保留最新数据,删除所有旧数据以节省空间
3. 智能翻译工具通过学习海量的语料数据(包括各种语言的词汇、语法结构、语义表达以及不同语境下的惯用表述)来建立预训练模型,进而掌握不同语言之间的语法、词汇和语境关系。当用户输入文字或文档或图片时,智能翻译工具会迅速在模型中检索和匹配相关内容,结合上下文和语言模式进行推理,从而生成准确的目标语言翻译。下列关于智能翻译工具相关说法,正确的是( )
A. 智能翻译工具凭借先进技术能在任何情况下给出完全准确的翻译结果
B. 智能翻译工具可对多种语言的文本、语音及图像中文字内容进行翻译
C. 智能翻译工具技术和算法固定,无需更新维护就能保持良好性能
D. 智能翻译工具在翻译效率和准确性上均远超人工翻译,能替代人工翻译
4. 智慧停车系统采用“移动互联网+云计算+大数据”模式,该系统通过压力传感器和图像拍摄与识别获取车位状态和车牌号码等数据,经无线网络上传到数据库中,管理员通过浏览器对系统进行设置与管理,系统根据车牌号进行车位查找和停车费的在线支付等。关于智慧停车系统的描述,不正确的是( )
A. 智慧停车系统仅依靠压力传感器、图像拍摄与识别及无线网络技术来运行
B. 无线网络在智慧停车系统中负责将采集的数据传输至管理平台
C. 智慧停车系统的运行依赖软件与硬件协同,如传感器、软件、数据库等
D. 云计算和大数据技术为智慧停车系统的数据分析及决策提供支持
5. 智慧停车系统采用“移动互联网+云计算+大数据”模式,该系统通过压力传感器和图像拍摄与识别获取车位状态和车牌号码等数据,经无线网络上传到数据库中,管理员通过浏览器对系统进行设置与管理,系统根据车牌号进行车位查找和停车费的在线支付等。关于该智慧停车系统的网络系统及安全防护的说法,正确的( )
A. 采用数据加密技术主要目的是为了防止内部人员非法访问数据
B. 部署防火墙可以完全防止外部网络的所有恶意攻击
C. 该信息系统如果网络通信出故障将无法完成车位查找
D. 为了便于管理和维护,该停车系统的网络架构为C/S结构
6. 智慧停车系统采用“移动互联网+云计算+大数据”模式,该系统通过压力传感器和图像拍摄与识别获取车位状态和车牌号码等数据,经无线网络上传到数据库中,管理员通过浏览器对系统进行设置与管理,系统根据车牌号进行车位查找和停车费的在线支付等。该系统通过图像拍摄与识别获取车牌号码,下列说法不正确的是( )
A. 去噪滤波是图像预处理的一种方法,可以提高车牌号码识别的准确性
B. 若用数字0~127表示每个像素的颜色信息,则存储时需占用1个字节
C. 车牌号获取后保存的文件为jpg格式,放大后不会失真
D. 车牌号中的所有字符在计算机内存储采用二进制编码
7. 某算法的流程图如图所示,执行这部分流程,则输出的y值不可能是( )
A. 55 B. 37 C. 24 D. 61
8. 有一棵二叉树,后序遍历序列为GDIHEBFCA,中序遍历序列为DGBEIHAFC,则关于该二叉树的说法正确的是( )
A. 从节点A到节点G经过3条边 B. 该二叉树右子树的深度为3
C. 该二叉树左子树叶子结点数量为4 D. 该二叉树的前序遍历序列是ABDGEIHCF
9. 有如下Python程序段:
s = "GHI, DEF, ABC"
a = s.split(", ")
s1 = "20, 12, 02, 10, 21, 01"; s2 = ""
for i in range(len(s1) - 1):
ch = s1[i: i + 2]
if ", " not in ch:
if i % 2 == 0:
s2 = s2 + a[int(ch[0])][int(ch[1])]
else:
s2 = a[int(ch[1])][int(ch[0])] + s2
print(s2)
运行程序该段后,输出的内容为( )
A. HDFIAF B. FAIFDH C. BIABHD D. DHBAIB
10. 队列Q从队首到队尾的元素依次为6、2、8、4、7,栈S初始为空。约定:若栈为空或者队首元素小于栈顶元素,那么队首元素入栈;否则,把栈内所有小于队首元素的元素依次出栈并入队,再把队首元素入栈。反复执行上述操作,直到队列为空,则栈S中从栈顶到栈底的元素依次为( )
A. 6、2、8、4、7 B. 8、7、6、4、2
C. 2、4、6、7、8 D. 7、4、8、2、6
11. 某Python程序段如下
def f(n):
if n <= 1:
return 1
elif n % 2 == 1:
return n + f(n - 2)
else:
return f(n - 1)
n = int(input())
print(f(n))
对于函数f(n),以下说法正确的是( )
A. f(n)对于任意正整数n,其返回值都是奇数
B. 因f(n)有大量递归调用,其时间复杂度为O(n~2)
C. 当n为偶数时,f(n)的值等于f(n-1)的值
D. f(n)无法使用循环结构来实现相同功能
12. 有如下Python程序段:
import random
a = []; b = [0] * 6
for i in range(6):
a.append(random.randint(1, 20))
b[i] = i
for i in range(5):
for j in range(i + 1, 6):
if a[b[i]] > a[b[j]]:
b[i], b[j] = b[j], b[i]
i = 0; j = 5; s = ""
key = int(input("请输入待查找数:"))
while i <= j:
m = (i + j) // 2
if key == a[b[m]]: break
if key < a[b[m]]:
j = m - 1
else:
i = m + 1
s = s + str(m)
print(s)
当输入的key值为10,运行程序后s的结果为243,则a数组中的值可能是( )
A. 4,5,8,19,10,17 B. 9,2,11,21,5,16
C. 11,6,4,13,18,15 D. 2,11,7,6,3,18
二、非选择题(本大题共3小题,其中第13小题8分,第14小题9分,第15小题9分,共26分)
13. 某环境监测系统通过传感器获取信息,数据通过智能终端的无线模块汇总到数据库服务器,客户端通过浏览器访问服务器,获取各种数据信息。该系统的环境检测系统结构图及网站框架示意图如图所示。
服务器端程序基于Python的Flask Web框架编写,使用SQLite3数据库。
(1)以下代码实现了温度采集以及数据传输功能。传感器接在Pin0,蜂鸣器接在Pin8。请在划线处填入合适的代码。
from microbit import * #导入micro: bit包
import Obloq #导入IoT模块的OBLOQ包
IP="192.168.1.101"
PORT="8088"
SSID="lyeg"
PASSWORD="87123456"
uart. init(baudrate=9600,bits=8,parity=None,stop=1,tx=pin2,rx=pinl)
while Obloq. connect Wifi(SSID,PASSWORD,10000)!=True:
display. show("W")
display. scroll(Obloq. ifconfig())
Obloq. httpSet(IP,PORT)
while True:
temp= ______. read _ analog() #温度的采集
temp=temp*3.3/10.24
display. scroll(str(temp))
errno, resp=Obloq. get("input? id=1&val="+str( ), 10000)
if errno= =200:
display. scroll(resp)
else:
display. scroll(str(errno))
______ #每隔5秒采集一次温度数据
(2)下列关于该信息系统的描述,说法正确的是__________(多选)
A.该环境监测系统的开发模式是B/S模式
B.连接成功后终端传输的波特率为15200
C.如果WiFi连接失败会一直不断尝试连接
D.该无线IoT模块的接收端连接在Pin2接口
E.该智能终端的IP地址必须跟服务器同网段
(3)下列哪个故障不会影响用户手动控制执行器__________
A.互联网服务 B.路由器故障 C.智能终端故障 D.传感器故障
(4)为了使该系统在使用过程中更加安全,从保护数据本身的安全角度写出两种可行的措施:________、_______________。
14. 某校高二年级技术学考测试部分成绩如图1所示,小金老师使用Python对数据进行了处理。
(1)小金老师通过等级来代替同学的真实分数,划分为A、B、C、D四个等级,且对应比例为15%,35%,45%,5%,且同分的等级一定相同,因此D等级可能不足5%,运行效果如图2所示,请在划线处填入合适代码。
import pandas as pd
df=pd. read _ excel("data. xlsx")
d=[0.15, 0.35, 0.45, 0.5]
s=['A', 'B', 'C', 'D']
df["技术"]=df["信息"]+df["通用"]
df["等级"]=""
df _ sort=df. sort _ values('技术' ascending=False)
df=df _ sort. reset _ index(drop=True) #重置索引号
j=t=0
n= ______
for i in range(n):
t+=1
if ______ and df. at[i, "技术"]!=df. at[i-1, "技术"]:
j+=1
t=1
______
print(df)
(2)小金老师希望找出信息和通用存在偏科的同学,即一门成绩优异(>=40分),但另一门成绩不理想(<=25分)的同学。下列组合方法可行的是__________(多选)。
①先删除信息<40的记录,再删除通用>25的记录
②先筛选出信息<40的记录,再删除通用>25的记录
③先删除信息>25的记录,再筛选出通用<=25的记录
④先筛选出信息<=25的记录,再筛选出通用>=40的记录
(3)小金老师利用上题所用方法得到存在偏科的同学,发现其中一部分同学的赋分等级为A。请给出相关结论以合理解释这一情况。__________
15. 食物链是指生态系统中各种动植物和微生物之间由于摄食关系而形成的一种联系,因为这种联系就像链条一样,一环扣一环,所以被称为食物链。比如在草原上,青草—兔—狐狸—狼,就是一条食物链。
如果用不同的数字来表达不同的生物,若有生物之间的被吃与吃的关系如图1所示,我们可以画出如图2所示的食物链,且可以发现有3条不同的食物链,分别是1→2→3、1→3、4→3,其中最长的食物链是1→2→3,共3个生物。
如果有n个生物,用1~n来表示,有m个捕食关系,请编程求出最长食物链的长度。
(1)若有5个生物存在7个捕食关系(如图3所示),则最长食物链的长度为_________。
(2)若捕食关系存放在文件“FoodChain. txt”中,其中第一行为生物数n及捕食关系数m,从第二行开始存放各生物捕食关系情况如图4所示。以下代码实现食物链计算,请完成画线部分填空:
f=open("FoodChain. txt", encoding="utf-8")
line=f. readline()
n, m=map(int, line. split()) #读入n个生物, m条捕食关系
left=[0 for i in range(n+1)] # left[i]保存生物i处于食物链左侧的次数
right=[0 for i in range(n+1)] # right[i]保存生物i处于食物链右侧的次数
d=[0 for i in range(n+1)]
g=[[] for i in range(n+1)]
for line in f. readlines():
a, b=map(int, line. split())
left[a]+=1
right[b]+=1
g[a]. append(b)
q=[]
for i in range(1, n+1): # 寻找食物链起点
if ____________:
d[i]=1
q. append(i)
while ___________: # 取出列表 q 中的第一个元素
a=q. pop(0)
for b in g[a]:
right[b]-=1
d[b]=max(d[b], d[a]+1)
if right[b]==0:
q. append(b)
ans=0
for i in range(1, n+1):
if left[i]==0:
ans=________
print("最长食物链的长度为: ", ans)
第1页/共1页
学科网(北京)股份有限公司
$$
百师联盟2025届高三开年摸底联考
技术试题
注意事项:
1.答卷前,考生务必将自己的姓名、考场号、座位号、准考证号填写在答题卡上。
2.回答选择题时,选出每小题答案后,用铅笔把答题卡上对应题目的答案标号涂黑,如需改动,用橡皮擦干净后,再选涂其他答案标号。回答非选择题时,将答案写在答题卡上,写在本试卷上无效。
3.考试结束后,将本试卷和答题卡一并交回。
考试时间为90分钟,满分100分
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1. 智能翻译工具通过学习海量的语料数据(包括各种语言的词汇、语法结构、语义表达以及不同语境下的惯用表述)来建立预训练模型,进而掌握不同语言之间的语法、词汇和语境关系。当用户输入文字或文档或图片时,智能翻译工具会迅速在模型中检索和匹配相关内容,结合上下文和语言模式进行推理,从而生成准确的目标语言翻译。当智能翻译工具处理用户输入的内容时,其生成目标语言翻译的关键步骤不包括( )
A. 在模型中检索和匹配相关内容 B. 结合上下文和语言模式进行推理
C. 直接按照固定的翻译规则进行翻译 D. 利用预训练模型中掌握的语言关系
【答案】C
【解析】
【详解】本题考查的是人工智能。智能翻译工具是基于预训练模型和上下文进行推理,而不是依赖于固定的规则。故本题应选C。
2. 智能翻译工具通过学习海量的语料数据(包括各种语言的词汇、语法结构、语义表达以及不同语境下的惯用表述)来建立预训练模型,进而掌握不同语言之间的语法、词汇和语境关系。当用户输入文字或文档或图片时,智能翻译工具会迅速在模型中检索和匹配相关内容,结合上下文和语言模式进行推理,从而生成准确的目标语言翻译。智能翻译工具在建立预训练模型时,如何有效地组织和管理海量的语料数据( )
A. 根据数据的来源和时间顺序进行简单排序
B. 运用先进数据结构实施精细化分类与索引
C. 随意堆放数据,不进行任何分类或整理
D. 仅保留最新数据,删除所有旧数据以节省空间
【答案】B
【解析】
【详解】本题考查的是数据处理。根据数据的来源和时间顺序进行简单排序,这种方法虽然简单,但无法满足智能翻译工具对数据的高效检索和匹配需求;通过先进的数据结构(如哈希表、树结构等)对语料数据进行精细化分类和索引,可以高效地检索和匹配相关内容,结合上下文和语言模式进行推理,从而提高翻译的准确性;未经分类和整理的数据会导致检索效率极低,无法满足智能翻译工具的需求;仅保留最新数据,删除所有旧数据以节省空间,这种方法会丢失大量有价值的语料数据,导致模型的训练不充分,影响翻译的准确性和适用性。故选B。
3. 智能翻译工具通过学习海量的语料数据(包括各种语言的词汇、语法结构、语义表达以及不同语境下的惯用表述)来建立预训练模型,进而掌握不同语言之间的语法、词汇和语境关系。当用户输入文字或文档或图片时,智能翻译工具会迅速在模型中检索和匹配相关内容,结合上下文和语言模式进行推理,从而生成准确的目标语言翻译。下列关于智能翻译工具相关说法,正确的是( )
A. 智能翻译工具凭借先进技术能在任何情况下给出完全准确的翻译结果
B. 智能翻译工具可对多种语言的文本、语音及图像中文字内容进行翻译
C. 智能翻译工具技术和算法固定,无需更新维护就能保持良好性能
D. 智能翻译工具在翻译效率和准确性上均远超人工翻译,能替代人工翻译
【答案】B
【解析】
【详解】本题考查的是人工智能应用。智能翻译工具虽然能够通过大量语料数据进行学习和推理,但由于语言的复杂性、语境的多变性以及文化差异等因素,翻译工具在某些情况下仍然可能出现不准确或不完全符合语境的翻译结果;智能翻译工具通常支持多种语言的文本翻译,并且能够处理语音和图像中的文字内容(如OCR技术),从而进行翻译;智能翻译工具需要不断更新语料库、优化算法和模型,以适应语言的变化和用户的需求。如果技术和算法固定,翻译工具的性能可能会逐渐下降;虽然智能翻译工具在翻译效率上通常优于人工翻译,但在准确性方面,尤其是在处理复杂语境、专业术语或文化差异时,人工翻译仍然具有优势。故选B。
4. 智慧停车系统采用“移动互联网+云计算+大数据”模式,该系统通过压力传感器和图像拍摄与识别获取车位状态和车牌号码等数据,经无线网络上传到数据库中,管理员通过浏览器对系统进行设置与管理,系统根据车牌号进行车位查找和停车费的在线支付等。关于智慧停车系统的描述,不正确的是( )
A 智慧停车系统仅依靠压力传感器、图像拍摄与识别及无线网络技术来运行
B. 无线网络在智慧停车系统中负责将采集的数据传输至管理平台
C. 智慧停车系统的运行依赖软件与硬件协同,如传感器、软件、数据库等
D. 云计算和大数据技术为智慧停车系统的数据分析及决策提供支持
【答案】A
【解析】
【详解】本题考查的是信息系统功能。题干提到智慧停车系统采用“移动互联网+云计算+大数据”模式,因此系统不仅仅依靠传感器、图像识别和无线网络技术,还依赖云计算和大数据技术。故本题应选A。
5. 智慧停车系统采用“移动互联网+云计算+大数据”模式,该系统通过压力传感器和图像拍摄与识别获取车位状态和车牌号码等数据,经无线网络上传到数据库中,管理员通过浏览器对系统进行设置与管理,系统根据车牌号进行车位查找和停车费的在线支付等。关于该智慧停车系统的网络系统及安全防护的说法,正确的( )
A. 采用数据加密技术主要目的是为了防止内部人员非法访问数据
B. 部署防火墙可以完全防止外部网络的所有恶意攻击
C. 该信息系统如果网络通信出故障将无法完成车位查找
D. 为了便于管理和维护,该停车系统的网络架构为C/S结构
【答案】C
【解析】
【详解】本题考查的是信息系统安全。数据加密技术的主要目的是保护数据的机密性和完整性,防止未经授权的访问,无论是来自外部还是内部,选项A说法错误;防火墙可以有效地阻止大部分外部网络的恶意攻击,但不能完全防止所有攻击,选项B说法错误;智慧停车系统依赖网络通信来获取车位状态、车牌号码等信息,并进行车位查找和支付等操作,如果网络通信出现故障,这些功能将无法正常使用,选项C说法正确;题干中提到管理员通过浏览器对系统进行设置与管理,这表明系统可能采用B/S,选项D说法错误。故选C。
6. 智慧停车系统采用“移动互联网+云计算+大数据”模式,该系统通过压力传感器和图像拍摄与识别获取车位状态和车牌号码等数据,经无线网络上传到数据库中,管理员通过浏览器对系统进行设置与管理,系统根据车牌号进行车位查找和停车费的在线支付等。该系统通过图像拍摄与识别获取车牌号码,下列说法不正确的是( )
A. 去噪滤波是图像预处理的一种方法,可以提高车牌号码识别的准确性
B. 若用数字0~127表示每个像素的颜色信息,则存储时需占用1个字节
C. 车牌号获取后保存的文件为jpg格式,放大后不会失真
D. 车牌号中的所有字符在计算机内存储采用二进制编码
【答案】C
【解析】
【详解】本题考查的编码。jpg格式图像是位图图像。由于位图图像是由固定数量的像素组成的,放大图像会导致像素被拉伸,从而产生失真和模糊。故选C。
7. 某算法的流程图如图所示,执行这部分流程,则输出的y值不可能是( )
A. 55 B. 37 C. 24 D. 61
【答案】B
【解析】
【详解】本题考查的是流程图识读。算法中每次计算 t = x % 7,然后将 y 更新为 y×10 + t。由于 x%7 的结果只能是 0~6,因此 y 的每一位都只能是 0~6,含有 7 的数不可能输出。故选B。
8. 有一棵二叉树,后序遍历序列为GDIHEBFCA,中序遍历序列为DGBEIHAFC,则关于该二叉树的说法正确的是( )
A. 从节点A到节点G经过3条边 B. 该二叉树右子树的深度为3
C. 该二叉树左子树的叶子结点数量为4 D. 该二叉树的前序遍历序列是ABDGEIHCF
【答案】A
【解析】
【详解】本题考查的是二叉树。依据后序、中序遍历,可画出该二叉树如下:
由图中可知,从节点A到节点G经过3条边,该二叉树右子树的深度为2,该二叉树左子树的叶子结点数量为2,该二叉树的前序遍历序列是ABDGEHICF。故选A。
9. 有如下Python程序段:
s = "GHI, DEF, ABC"
a = s.split(", ")
s1 = "20, 12, 02, 10, 21, 01"; s2 = ""
for i in range(len(s1) - 1):
ch = s1[i: i + 2]
if ", " not in ch:
if i % 2 == 0:
s2 = s2 + a[int(ch[0])][int(ch[1])]
else:
s2 = a[int(ch[1])][int(ch[0])] + s2
print(s2)
运行程序该段后,输出的内容为( )
A. HDFIAF B. FAIFDH C. BIABHD D. DHBAIB
【答案】D
【解析】
【详解】本题考查的是python字符串处理。程序的功能:将字符串s转换为列表a(按","分隔),依次从s1读取两位数字字符(按","分隔),如果开头的数字字符在s1的偶数位上,则从列表a加入字符串s2的尾部,否则从列表a加入字符串s2的头部。(从列表a取字符,注意偶数位和奇数位取值方法的不同)
初始s = "GHI, DEF, ABC",转换后列表为:a=['GHI', 'DEF', 'ABC'],s1 = "20, 12, 02, 10, 21, 01",s2 = ""。
读取到20时,2在s1是在s1的偶数位上(第0位),则将a[2][0]加入字符串s2的尾部,s2="A";
读取到12时,1在s1的奇数位上(第3位),则将a[2][1]加入字符串s2的头部,s2="BA";
读取到02时,0在s1是在s1的偶数位上(第6位),则将a[0][2]加入字符串s2的尾部,s2="BAI";
读取到10时,1在s1的奇数位上(第9位),则将a[0][1]加入字符串s2的头部,s2="HBAI";
读取到21时,2在s1是在s1的偶数位上(第12位),则将a[2][1]加入字符串s2的尾部,s2="BAIB";
读取到01时,0在s1的奇数位上(第15位),则将a[1][0]加入字符串s2的头部,s2="DHBAIB";
故本题应选D。
10. 队列Q从队首到队尾的元素依次为6、2、8、4、7,栈S初始为空。约定:若栈为空或者队首元素小于栈顶元素,那么队首元素入栈;否则,把栈内所有小于队首元素的元素依次出栈并入队,再把队首元素入栈。反复执行上述操作,直到队列为空,则栈S中从栈顶到栈底的元素依次为( )
A. 6、2、8、4、7 B. 8、7、6、4、2
C. 2、4、6、7、8 D. 7、4、8、2、6
【答案】C
【解析】
【详解】本题考查的是队列和栈的操作。按题干约定,操作过程如下:
处理6:栈空,6入栈。队列→[2,8,4,7],栈→[6]。
处理2:2<6,入栈。队列→[8,4,7],栈→[6,2]。
处理8:8>2,弹出栈中所有<8的元素(2、6)并入队。队列→[4,7,2,6],8入栈。栈→[8]。
处理4:4<8,入栈。队列→[7,2,6],栈→[8,4]。
处理7:7>4,弹出4并入队。7入栈。队列→[2,6,4],栈→[8,7]。
处理2:2<7,入栈。队列→[6,4],栈→[8,7,2]。
处理6:6>2,弹出2并入队。6入栈。队列→[4,2],栈→[8,7,6]。
处理4:4<6,入栈。队列→[2],栈→[8,7,6,4]。
处理2:2<4,入栈。队列空,栈→[8,7,6,4,2]。
最终栈顶到栈底为2、4、6、7、8,故选C。
11. 某Python程序段如下
def f(n):
if n <= 1:
return 1
elif n % 2 == 1:
return n + f(n - 2)
else:
return f(n - 1)
n = int(input())
print(f(n))
对于函数f(n),以下说法正确的是( )
A. f(n)对于任意正整数n,其返回值都是奇数
B. 因f(n)有大量递归调用,其时间复杂度为O(n~2)
C. 当n为偶数时,f(n)的值等于f(n-1)的值
D. f(n)无法使用循环结构来实现相同功能
【答案】C
【解析】
【详解】本题考查的是递归函数。当n为奇数时,可能返回偶数,例如,n=3时,f(3)=3 + f(1)=4(偶数),因此返回值不全是奇数,选项A说法错误;每次递归调用 f(n) 会减少 n 的值(n - 1 或 n - 2),因此递归深度为 O(n),每次递归调用的时间复杂度是常数时间 O(1),因此总时间复杂度为 O(n),选项B说法错误;当n为偶数时,函数执行else分支,直接返回f(n-1),因此f(n)的值等于f(n-1)的值,选项C说法正确;可用循环累加奇数或直接返回f(n-1)的功能,选项D说法错误。故选C。
12. 有如下Python程序段:
import random
a = []; b = [0] * 6
for i in range(6):
a.append(random.randint(1, 20))
b[i] = i
for i in range(5):
for j in range(i + 1, 6):
if a[b[i]] > a[b[j]]:
b[i], b[j] = b[j], b[i]
i = 0; j = 5; s = ""
key = int(input("请输入待查找数:"))
while i <= j:
m = (i + j) // 2
if key == a[b[m]]: break
if key < a[b[m]]:
j = m - 1
else:
i = m + 1
s = s + str(m)
print(s)
当输入的key值为10,运行程序后s的结果为243,则a数组中的值可能是( )
A. 4,5,8,19,10,17 B. 9,2,11,21,5,16
C. 11,6,4,13,18,15 D. 2,11,7,6,3,18
【答案】D
【解析】
【详解】本题考查的是排序、二分查找。
由a.append(random.randint(1, 20))可知列表a中不能有21,故选项B排除;
若数组中的值为:4,5,8,19,10,17,则b值为:[0, 1, 2, 4, 5, 3],a[b[4]]=a[5]=10(此时找到key结束查找),故运行程序后s的结果为24,选项A排除;
若数组中的值为:11,6,4,13,18,15,则b值为:[2, 1, 0, 3, 5, 4],a[b[2]]=11>10,执行j=m-1=2-1=1,下次循环m=(i+j)//2=(0+1)//2=0,故程序后s的结果为20开始,故选项C排除。
排除ABC,故本题应选D。
二、非选择题(本大题共3小题,其中第13小题8分,第14小题9分,第15小题9分,共26分)
13. 某环境监测系统通过传感器获取信息,数据通过智能终端的无线模块汇总到数据库服务器,客户端通过浏览器访问服务器,获取各种数据信息。该系统的环境检测系统结构图及网站框架示意图如图所示。
服务器端程序基于Python的Flask Web框架编写,使用SQLite3数据库。
(1)以下代码实现了温度采集以及数据传输的功能。传感器接在Pin0,蜂鸣器接在Pin8。请在划线处填入合适的代码。
from microbit import * #导入micro: bit包
import Obloq #导入IoT模块的OBLOQ包
IP="192.168.1.101"
PORT="8088"
SSID="lyeg"
PASSWORD="87123456"
uart. init(baudrate=9600,bits=8,parity=None,stop=1,tx=pin2,rx=pinl)
while Obloq. connect Wifi(SSID,PASSWORD,10000)!=True:
display. show("W")
display. scroll(Obloq. ifconfig())
Obloq. httpSet(IP,PORT)
while True:
temp= ______. read _ analog() #温度的采集
temp=temp*3.3/10.24
display. scroll(str(temp))
errno, resp=Obloq. get("input? id=1&val="+str( ), 10000)
if errno= =200:
display. scroll(resp)
else:
display. scroll(str(errno))
______ #每隔5秒采集一次温度数据
(2)下列关于该信息系统的描述,说法正确的是__________(多选)
A.该环境监测系统的开发模式是B/S模式
B.连接成功后终端传输的波特率为15200
C.如果WiFi连接失败会一直不断尝试连接
D.该无线IoT模块的接收端连接在Pin2接口
E.该智能终端的IP地址必须跟服务器同网段
(3)下列哪个故障不会影响用户手动控制执行器__________
A.互联网服务 B.路由器故障 C.智能终端故障 D.传感器故障
(4)为了使该系统在使用过程中更加安全,从保护数据本身的安全角度写出两种可行的措施:________、_______________。
【答案】 ①. pin0 ②. temp ③. sleep(5000)或sleep(5*1000) ④. ACD ⑤. D ⑥. 传输过程中进行数据校验、对采集的数据进行加密再存储 ⑦. 定期备份数据库中的数据或其他合理答案
【解析】
【详解】本题考查的是信息系统搭建。
(1)① 传感器接在 Pin0,故此处应为:pin0;② “向服务器提交”处应当提交 temp 的值,故此处应填 temp;③ “每隔 5 秒采集一次”可用 micro:bit 提供的延时函数 sleep(5000)。
(2)由代码:baudrate=9600可知程序中波特率设为 9600;智能终端的IP地址可以跟服务器在不同网段。故选ACD。
(3)传感器损坏只会导致无法检测温度,不会妨碍手动发出控制指令;其余如网络或终端故障会导致无法控制,故选D。
(4)为了使该系统在使用过程中更加安全,从保护数据本身的安全角度措施有:对采集的数据进行加密再存储、传输过程中进行数据校验、定期备份数据库中的数据或其他合理答案。
14. 某校高二年级技术学考测试部分成绩如图1所示,小金老师使用Python对数据进行了处理。
(1)小金老师通过等级来代替同学的真实分数,划分为A、B、C、D四个等级,且对应比例为15%,35%,45%,5%,且同分的等级一定相同,因此D等级可能不足5%,运行效果如图2所示,请在划线处填入合适代码。
import pandas as pd
df=pd. read _ excel("data. xlsx")
d=[0.15, 0.35, 0.45, 0.5]
s=['A', 'B', 'C', 'D']
df["技术"]=df["信息"]+df["通用"]
df["等级"]=""
df _ sort=df. sort _ values('技术' ascending=False)
df=df _ sort. reset _ index(drop=True) #重置索引号
j=t=0
n= ______
for i in range(n):
t+=1
if ______ and df. at[i, "技术"]!=df. at[i-1, "技术"]:
j+=1
t=1
______
print(df)
(2)小金老师希望找出信息和通用存在偏科的同学,即一门成绩优异(>=40分),但另一门成绩不理想(<=25分)的同学。下列组合方法可行的是__________(多选)。
①先删除信息<40的记录,再删除通用>25的记录
②先筛选出信息<40的记录,再删除通用>25的记录
③先删除信息>25的记录,再筛选出通用<=25的记录
④先筛选出信息<=25的记录,再筛选出通用>=40的记录
(3)小金老师利用上题所用方法得到存在偏科的同学,发现其中一部分同学的赋分等级为A。请给出相关结论以合理解释这一情况。__________
【答案】 ①. len(df) ②. t>n*d[j] ③. df. at[i, "等级"]=s[j] ④. ①④ ⑤. 虽然存在偏科,但技术总分在全年级前15%以内。或相关言之有理结论
【解析】
【详解】本题考查的是数据分析。
(1)①处,由下一行循环可知,n应该是数据表的记录数,故此处应为:len(df);②处,同分的等级一定相同,故进入统计下一个等级的条件是:当前分数与上一个分数不同,同时占比人数超过对应比例,故此处应为:t>n*d[j];③处,循环处理的是分数转换等级,此处是写入等级,故代码为:df. at[i, "等级"]=s[j]。
(2)要找到“偏科”同学,即满足“信息≥40 且 通用≤25”或“信息≤25 且 通用≥40”这两种情况。题中给出的四种先后“删除/筛选”方法中,只有组合①和组合④能分别找出这两类学生,二者合并才能获得所有“偏科”记录,故正确选项是①和④。
(3)虽然有些同学“偏科”(一门较高,另一门较低),但只要两科总分足够高,仍能排到全体总分的前 15%,因此分级时就可能评到 A 等级。也就是说,“单科不平衡并不一定妨碍总分进入高分段”。
15. 食物链是指生态系统中各种动植物和微生物之间由于摄食关系而形成的一种联系,因为这种联系就像链条一样,一环扣一环,所以被称为食物链。比如在草原上,青草—兔—狐狸—狼,就是一条食物链。
如果用不同的数字来表达不同的生物,若有生物之间的被吃与吃的关系如图1所示,我们可以画出如图2所示的食物链,且可以发现有3条不同的食物链,分别是1→2→3、1→3、4→3,其中最长的食物链是1→2→3,共3个生物。
如果有n个生物,用1~n来表示,有m个捕食关系,请编程求出最长食物链的长度。
(1)若有5个生物存在7个捕食关系(如图3所示),则最长食物链的长度为_________。
(2)若捕食关系存放在文件“FoodChain. txt”中,其中第一行为生物数n及捕食关系数m,从第二行开始存放各生物捕食关系情况如图4所示。以下代码实现食物链计算,请完成画线部分填空:
f=open("FoodChain. txt", encoding="utf-8")
line=f. readline()
n, m=map(int, line. split()) #读入n个生物, m条捕食关系
left=[0 for i in range(n+1)] # left[i]保存生物i处于食物链左侧的次数
right=[0 for i in range(n+1)] # right[i]保存生物i处于食物链右侧次数
d=[0 for i in range(n+1)]
g=[[] for i in range(n+1)]
for line in f. readlines():
a, b=map(int, line. split())
left[a]+=1
right[b]+=1
g[a]. append(b)
q=[]
for i in range(1, n+1): # 寻找食物链起点
if ____________:
d[i]=1
q. append(i)
while ___________: # 取出列表 q 中第一个元素
a=q. pop(0)
for b in g[a]:
right[b]-=1
d[b]=max(d[b], d[a]+1)
if right[b]==0:
q. append(b)
ans=0
for i in range(1, n+1):
if left[i]==0:
ans=________
print("最长食物链的长度为: ", ans)
【答案】 ①. 5 ②. right[i]==0 ③. len(q)>0 ④. max(ans, d[i])
【解析】
【详解】本题考查是python综合应用。
(1)由图3画出捕食关系图如下:
最长食物链是:1→2→3→4→5,故最长食物链的长度为5。
(2)第一空,只有“入度”(right[i])为 0 的节点才能作为食物链的起点,因此应填 right[i]==0;第二空,循环条件是队列不为空时持续处理节点,故应填len(q)>0;最终答案是对“未被其他生物捕食”(left[i]==0)的顶点取最长距离 d[i] 的最大值,故应填 max(ans, d[i])。
第1页/共1页
学科网(北京)股份有限公司
$$