内容正文:
余姚中学2024年第二学期期中考试高二技术选考试卷
考生须知:
1.本试卷分两部分,第一部分信息技术,第二部分通用技术。满分100分,考试时间90分钟。
2.考生答题前,务必将自己的姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸上。
3.选择题的答案用2B铅笔将答题纸上对应题目的答案选项涂黑,如要改动,须将原填涂处用橡皮擦净。
4.非选择题的答案用黑色字迹的签字笔或钢笔写在答题纸上相应区域内,作图时可先使用2B铅笔,确定后用黑色字迹的签字笔或钢笔描黑,答案写在非答题纸上无效。
第一部分信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分。)
1. 下列有关数据、大数据和信息的说法正确的是( )
A. 同一数据在不同语境中承载的信息可能不同
B. 数据在计算机中可以采用十六进制方式进行存储
C. 信息的保存和传播必须依附于载体,信息的价值永恒不变
D. 若数据库中的数据量特别庞大,这样的数据就可以称为大数据
【答案】A
【解析】
【详解】本题考查的是数据、大数据及信息。数据本身是客观的,但信息的解释和理解依赖于语境,因此,同一数据在不同语境中可能承载不同的信息,选项A说法正确;数据在计算机中采用二进制方式进行存储,选项B说法错误;信息的价值会随着时间、语境和需求的变化而变化,选项C说法错误;大数据不仅仅是指数据量大,还包括数据的多样性、高速性和价值密度等特征,选项D说法错误。故选A。
2. 小李录制并保存了al.wav和a2.wav两段音频,再分别另存为al.mp3和a2.mp3,参数如下表所示。
文件名
格式
采样频率
量化位数
声道数
时长
al.wav
wave
44100Hz
16位
立体声
30s
a2.wav
wave
22050Hz
8位
立体声
60s
al.mp3
mp3
44100Hz
16位
立体声
30s
a2.mp3
mp3
22050Hz
8位
立体声
60s
下列说法正确的是( )
A. al.wav与a2.wav的存储容量一样大 B. al.wav与al.mp3的存储容量一样大
C. al.wav比a2.wav保真度高 D. a2.wav与a2.mp3的保真度一样
【答案】C
【解析】
【详解】本题考查音频属性相关内容。wav音频的存储容量=采样频率*量化位数*声道*时长/8(B),从参数可知:A选项,al.wav比a2.wav的存储容量大,选项错误。B选项,MP3是一种音频压缩技术,它被设计用来大幅度地降低音频数据量,al.wav比al.mp3的存储容量大,选项错误。wav音频的保真度和采样频率以及量化位数有关,采样频率越高,量化位数越大,保真度越好;wav格式是无损格式,保真度很好,mp3是有损格式,和wav比体积更小,但是体积小带来的确是保真度的损失;C选项,al.wav比a2.wav保真度高,选项正确。D选项,a2.wav的保真度高于a2.mp3。故本题答案是C选项。
3. 下列关于人工智能的说法,正确的是( )
A. 通过图灵测试可以评估机器智能水平的高低
B. 强化学习是根据事先知道的最终答案进行相应调整的学习方法
C. 有人参与的人工智能就属于混合增强智能
D. 深度学习是以数据驱动的人工智能方法,不需要事先构造知识库
【答案】D
【解析】
【详解】本题考查人工智能的基本概念。 A 选项错误,图灵测试的目的是判断机器是否能具有智能,而非评估智能水平的高低(智能水平评估还涉及其他维度,如图像识别、逻辑推理等)。 B 选项错误,强化学习是通过试错和奖励机制进行学习的方法,不依赖事先知道的最终答案(监督学习才需要标签数据)。 C 选项错误,混合增强智能强调人机协同决策、优势互补(如人类提供领域知识,机器处理海量数据),单纯 “有人参与”(如人工标注数据)不属于混合增强智能的定义范畴。 D 选项正确,深度学习基于大数据驱动,通过神经网络自动从数据中学习特征和规律,无需像传统专家系统那样事先手工构造显式知识库。 因此,本题选择 D 选项。
4. 下列关于网络技术的说法,正确的是( )
A. 应用终端与服务器建立连接不一定通过网关
B. 同一局域网内的不同设备,可以配置相同的IP地址
C. 移动终端通过Wi-Fi和服务器通信无需遵循TCP协议
D. 分处不同局域网中计算机不能相互通信
【答案】A
【解析】
【详解】本题考查网络技术的基本概念。 A 选项正确:应用终端与服务器若位于同一局域网内,可直接通过交换机 / 集线器建立连接,无需经过网关(网关主要用于不同网络间的通信,如局域网与广域网连接)。 B 选项错误:同一局域网内的设备必须配置唯一的 IP 地址,否则会导致 IP 地址冲突,无法正常通信。 C 选项错误:移动终端通过 Wi-Fi 与服务器通信时,若使用 TCP/IP 协议簇,必须遵循 TCP(或 UDP)协议。Wi-Fi 仅为数据链路层技术,上层通信仍需依赖传输层协议。 D 选项错误:分处不同局域网的计算机可通过路由器、网关等网络设备实现跨网络通信(如通过互联网连接)。 因此,本题选择 A 选项。
5. 某共享电瓶车租赁系统的工作原理:用户通过手机APP扫描电瓶车上的二维码,获取电瓶车的唯一编码并发送给云端服务器。云端服务器在验证用户身份和口令后,会向车控终端发送解锁命令。车控终端接收到解锁命令后对车辆进行解锁。用户骑行结束后,车控终端检测到锁车动作后,向云端服务器发送信号,云端服务器根据骑行时间计算费用,并通知用户。下列关于该共享电瓶车系统的组成说法不正确的是( )
A. 电控终端和扫码用的手机都属于该系统的硬件
B. 共享电瓶车的维修人员属于该系统的用户
C. 手机APP以及手机上安装的操作系统组成了共享单车的软件
D. 共享单车的唯一编号,开锁密码等都属于该信息系统中的数据
【答案】C
【解析】
【详解】本题考查信息系统组成。A选项,电控终端和扫码用的手机是系统中实际的物理设备,属于硬件;B选项,共享电瓶车的维修人员也是信息系统中的用户;C选项,除了手机APP以及手机上安装的操作系统以外,信息系统还包括数据库管理系统等软件;D选项,共享单车的唯一编号、开锁密码等是系统中用于识别、控制等操作的数据。因此,本题选择C选项。
6. 某共享电瓶车租赁系统的工作原理:用户通过手机APP扫描电瓶车上的二维码,获取电瓶车的唯一编码并发送给云端服务器。云端服务器在验证用户身份和口令后,会向车控终端发送解锁命令。车控终端接收到解锁命令后对车辆进行解锁。用户骑行结束后,车控终端检测到锁车动作后,向云端服务器发送信号,云端服务器根据骑行时间计算费用,并通知用户。下列关于该共享电瓶车系统应用的说法正确的( )
A. 结算时使用支付宝支付应用了NFC技术
B. 用户身份和账户等数据存储在数据库里
C. 用户扫描二维码获取编码的过程体现了信息的编码
D. 根据骑行时间计算费用体现了信息系统的数据传输功能
【答案】B
【解析】
【详解】本题考查的是信息系统功能。支付宝支付通常基于网络支付接口,并非必须使用NFC技术;用户身份、账户等数据需存储在数据库中以供云端服务器验证和调用;扫描二维码是解码过程(将图形转换为编码数据);根据时间计算费用属于信息系统的数据处理功能。故选B。
7. 下列Python表达式中,结果为True的是( )
A. int(-3.14)==round(float("-3.14"))
B. len("stu-dent")==7
C. "pen"in["book","pencil","ruler"]
D. "A321">"a3"
【答案】A
【解析】
【详解】本题考查 Python 表达式的逻辑判断。A 选项: int(-3.14) 会直接截断小数部分,结果为 -3。 float("-3.14") 转换为浮点数 -3.14,round(-3.14) 按四舍五入规则取整为 -3(因小数点后第一位是 1,小于 5)。 两边均为 -3,表达式结果为 True。B 选项: 字符串 "stu-dent" 包含字符 s、t、u、-、d、e、n、t,共 8 个字符,len() 结果为 8,与 7 不相等,结果为 False。 C 选项:列表中的元素为 "book"、"pencil"、"ruler",不包含 "pen",in 操作返回 False。 D 选项:字符串比较从第一个字符开始:'A' 的 ASCII 码为 65,'a' 的 ASCII 码为 97,因 65 < 97,故 "A321" < "a3",结果为 False。 因此,本题选择 A 选项。
8. 某二叉树的前序遍历结果为GFDECAB,中序遍历结果为DFGCAEB。关于该二叉树,以下说法,正确的是( )
A. 该二叉树的后序遍历为ADFCBEG
B. 该二叉树的深度为4,节点C在第3层
C. 该二叉树的叶子节点数比非叶子节点数多一个
D. 该二叉树可以通过添加3个节点后变为完全二叉树
【答案】B
【解析】
【详解】本题主要考查二叉树的遍历。根据前序和中序遍历结果,可画出该二叉树如下,因此该二叉树的后序遍历为DFACBEG;该二叉树的深度为4,节点C在第3层;该二叉树的叶子节点数比非叶子节点数少一个;该二叉树可以通过添加6个节点后变为完全二叉树,故本题选B选项。
9. 有如下Python程序段:
def fab(a,b):
if a%b==0:
return
elif a>b:
fab(a-b,b)
print('1',end="")
else:
fab(a,b-a)
print('2',end="")
x=fab(16,36)
以下说法正确的是( )
A. 函数fab调用的次数是4次 B. 程序运行后,x的值为4
C. 程序运行后,输出值为"22" D. 该程序的时间复杂度为0(1)
【答案】C
【解析】
【详解】本题考查递归。逐步分析函数 fab 调用过程: 初始调用 fab(16, 36),因为 16 < 36,所以调用 fab(16, 36 - 16) = fab(16, 20),并在递归返回后打印 2。 对于 fab(16, 20),因为 16 < 20,所以调用 fab(16, 20 - 16) = fab(16, 4),并在递归返回后打印 2。 对于 fab(16, 4),因为 16 % 4 == 0,函数直接返回,不进行后续递归。A 选项错误, 总共调用了 3 次,而不是 4 次。B 选项错误,函数 fab 中,当 a % b == 0 时直接返回,没有明确指定返回值,在 Python 中这种情况下函数默认返回 None,所以 x 的值为 None,而不是 4。C 选项正确,根据上述调用过程分析,第一次递归返回后打印 2,第二次递归返回后又打印 2,所以程序运行后输出值为 "22"。D 选项错误,该函数是递归函数,其时间复杂度不是常数级别的 O(1)。每次递归调用时,函数的参数会发生变化,函数的执行次数与输入的参数有关,时间复杂度会随着参数的增大而增加,不是固定的常数时间。因此,本题选择 C 选项。
10. 有如下Python程序段:
for i in range(0,len(a)-1,2):
if i > 0 and a[i] < a[i-1]:
a[i],a[i-1] = a[i-1],a[i]
if a[i] < a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
列表a有6个元素,运行该程序段后,a可能的值是( )
A. [2,9,8,6,9,3] B. [9,9,8,6,3,2] C. [9,3,6,2,8,9] D. [6,3,9,2,9,8]
【答案】D
【解析】
【详解】本题考查Python程序设计相关内容。分析程序段,推知:列表a有6个元素,由“for i in range(0,len(a)-1,2)”知,列表a的索引i为0、2、4,且当i的值为2、4时,若a[i] < a[i-1],则交换两个元素,若a[i] < a[i+1],则交换两个元素,即:a[2]的值不能小于前面的a[1]和后面的a[3];a[4]的值不能小于前面的a[3]和后面的a[5]。AB选项中,8比前面相邻的9小,选项结果不可能。C选项,8比后面相邻的9小,选项结果不可能。D选项为可能结果,故本题答案是D选项。
11. 某对分查找算法Python程序段如下:
from random import randint
a=[8, 12,15,18, 18, 25, 25, 35, 47]
i=0; j=8
key=randint(8, 48)
while i<=j:
m=(i+j)//2
if key<=a[m]:
j=m-1
else:
i=m+l
print(i)
该程序执行完成后输出值为3,以下说法错误的是( )
A. key值可能是16到18的整数
B. 该程序m=(i+j)//2被执行4次
C. 该程序可实现查找第一个大于等于key值的位置
D. 若key〈=a[m]改为key<a[m],且key=25,则程序执行完后i值为6
【答案】D
【解析】
【详解】本题考查对分查找相关内容。其查找过程可以用一棵二叉树来描述,树中的每个根结点对应当前查找区间的中点记录。同关键字进行比较的次数就等于待查结点所处的层数,8个元素可以构造一棵深度为4的二叉树。故m=(i+j)//2可被执行4次,B选项正确;由key=randint(8,48)可知,key的取值范围是[8,47)的整数,key值可能是16到18的整数,A选项正确;若key<=18,第一次求得m=(i+j)//2=4,此时a[4]=18,大于等于key的值,C选项正确;若key<=a[m]改为key<a[m],且key=25,则程序执行完后,i的值为7。D选项错误。故本题答案是D。
12. 有如下Python程序段:
tmps=[32,28,26,29]
n=len(tmps);top=-1
ans=[0]*n
stk=[-1]*n
for i in range(n):
t=tmps[i]
while top>-1 and t>tmps[stk[top]]:
d=stk[top]
top-=1
ans[d]=i-d
top+=1
stk[top]=i
print(ans)
执行该程序段后,输出结果是( )
A. [1,0,0,1] B. [1,1,0,0]
C. [0,2,1,0] D. [0,1,2,0]
【答案】C
【解析】
【详解】本题主要考查Python程序的执行与调试。分析程序可知,当i=0、1、2时,均不满足while循环条件,此时top=2,stk=[0,1,2,-1]。当i=3时,第一次while循环结束,top=1,d=stk[2]=2,ans[2]=3-2=1;第二次while循环结束,top=0,d=stk[1]=1,ans[1]=3-1=2,while循环结束,for循环也结束,因此,执行该程序段后,输出ans的结果是[0,2,1,0],故本题选C选项。
二、非选择题(本大题共3小题,其中第13小题7分,第14小题8分,第15小题11分,共26分)
13. 有些数字旋转180度后仍是有效数字,如0、1、8旋转后仍是0、1、8,6和9旋转后分别变成9和6。一些数字字符串在旋转后不仅有效,而且和原数串相同。如5位数字字符串“98186”旋转180度后仍是“98186”。统计由5位数字组成数串中,旋转后仍和原数相同的数串的个数。
(1)以“99”开头5位数串中,旋转后和原串相同的数串有__________个。
(2)实现上述功能的部分Python程序如下,请在划线处填入合适的代码。
dic={'0':'0',1':'1','6':9','8':'8',9':'6'}
count=0
i=0
while i<100000:
①____
t=str(i)
t='0'*(5-len(t))+t
②____
if c!='0' and c!='1' and c!='8':
flag=False
for j in range(2):
if t[j]not in dic or③____
flag=False
if flag:
count+=1
i+=1
print("旋转后和原串相同的五位数串的数量是:",count)
【答案】 ①. 3 ②. flag=True ③. c=t[2] ④. dic[t[j]]!=t[-j-1]
【解析】
【详解】本题考查python程序设计。
(1)以 “99” 开头的 5 位数串,第一位是 9,第二位是 9。旋转后第五位是 6,第四位是 6,中间第三位只能是 0、1、8,共 3 种情况,所以有 3 个。
(2) ① 程序需要一个标志位来标记数串是否符合 “旋转后和原串相同” 的条件,初始化为 True,即 flag = True; ② 取数串的中间位(第三位),中间位(第三位)的索引是 2 ,即 c = t[2]; ③ 判断对称位是否符合旋转关系,例如,对于第 j 位( j=0,1 ), t[j] 通过字典 dic 转换后应等于 t[-j-1] ,否则不符合条件,即 dic[t[j]] != t[-j-1]。
14. 小华要搭建仓库温湿度监控系统,分布在仓库各处的智能终端(编号0-9)每隔一定时间将传感器采集的温湿度数据,经过处理后通过无线方式发送到服务器并保存到数据库中,系统若检测到温湿度异常,则发出报警信息,管理员可以通过浏览器查看相关数据。请回答下列问题:
(1)搭建该系统时,下列__________设备(单选,填字母)不能与智能终端直接连接。
A.温湿度传感器 B.IoT模块 C.蜂鸣器 D.无线路由器
(2)下列关于该系统支撑技术的说法,正确的有________(单选,填字母)。
A.智能终端具有一定的程序存储和数据处理的能力
B.服务器端运行的软件均为系统软件
C.在服务器端无法使用浏览器访问该系统
(3)小华基于FlaskWeb框架编写服务器端的程序,部分代码如下。编写完成后,若要通过浏览器获取视图函数index()的返回页面,则应访问的URL是http://__________。
#导入Flask框架模块及其他相关模块,代码略
app=Flask(__name__)
@app.route("/select")
def index():
#从数据库读取温湿度数据,并返回页面,代码略
#服务器其他功能,代码略
if__name__=="__main__":
app.run(host="192.168.1.1",port=8000)
(4)智能终端程序。
#导入microbit模块及其他相关模块以及通过串口配置Wi-Fi模块部分,代码略
whileTrue:
t1=pin0.read_analog()
h1=pin1.read_analog()
errno,resp=Obloq.get("input?id=1&val1="+str(t1)+"&val2="+str(h1),10000)
#数据上传成功或失败后续处理,代码略
sleep(1000)
阅读上述代码,传感器每隔____________(填时间)采集一次数据,并通过_________的形式提交上传数据。
(5)不同的角色的用户登录时,分配不同权限和管理模块,请例举两个系统管理员可用功能模块。_________
【答案】 ①. D ②. A ③. http:// 192.168.1.1:8000/select ④. 1秒 ⑤. GET ⑥. 用户管理、数据分析模块、报警规则与通知管理模块等
【解析】
【详解】本题考查搭建信息系统。
(1)温湿度传感器(A)用于采集数据,需与智能终端直接连接。IoT 模块(B)处理无线通信,可与智能终端直接连接。蜂鸣器(C)用于报警,可直接连接智能终端。无线路由器(D)用于网络连接,智能终端通过 IoT 模块等间接连接网络,而非直接连接无线路由器。 所以答案为 D。(2)A 选项:智能终端需运行程序、处理数据,具有程序存储和数据处理能力,正确。B 选项:服务器端不仅有系统软件,还有业务相关的应用软件,错误。C 选项:服务器端也可通过浏览器访问系统(若有相应网页界面),错误。 所以答案为 A。(3)Flask 中,app.run(host="192.168.1.1", port=8000) 确定服务器地址和端口,@app.route("/select") 装饰 index 函数,因此访问 URL 为 http://192.168.1.1:8000/select。(4)代码中 sleep(1000),单位为毫秒,1000毫秒=1秒,故每隔 1 秒采集一次数据。上传数据时,参数以 id=1&val1=...&val2=... 形式在 URL 中提交,属于GET形式。(5)系统管理员可用功能模块示例:用户管理、数据分析模块、报警规则与通知管理模块等。
15. 根据社会学研究表明,人们都喜欢找和自己身高相近的人做朋友。现在有n名身高各不相同的同学依次走入教室,调查人员想预测每个人在走入教室的瞬间最想和已经进入教室的哪个人做朋友。当有两名同学和这名同学的身高差一样时,这名同学会更想和高的那个人做朋友,对于第1个走入教室的同学我们不做预测。
比如第1个进入教室的人身高为172;
第2个走入教室的人身高为175,他只能选择第1人做朋友;
第3个走入教室的人身高为190,与172的差值为18,与175的差值为15,他选择第2人做朋友。
第4个走入教室的人身高为176,他选择第2人做朋友;
第5个走入教室的人身高为180,他选择第4人做朋友;
第6个走入教室的人身高为185,与190的差值为5,与180的差值也为5,但他选择身高更高的190,即第3人做朋友。
(1)在以上数据的基础上,如果再走入第7人,他的身高为182,他将选择第__________人做朋友。
(2)定义如下bsort(n,a)函数,n为人数,a列表为依次走入的同学身高。
def bsort(n,a):
b=[i for i in range(n)]
for i in range(n-1):
for j in range(n-i-1):
if a[b[j]]>a[b[j+1]]:
b[j],b[j+1]=b[j+1],b[j]
flag=True
if flag==False:
break
return b
若n为6,a的值为[172,175,190,176,180,185],调用该函数,加框处的语句执行次数为_________。
(3)程序运行时,若读入的数据[172,175,190,176,180,185],程序界面如图所示:
实现该功能的部分Python程序如下,在程序中划线处填入合适的代码。
'''读取人数存入n;
读取依次走入教室的第1至第n人的身高存入列表a;
代码略
'''
for i in range(n):
print("走入教室的",i+1,"人,身髙为",a[i],";")
index=bsort(n,a)
lst=[[-1,-1]for i in range(n)]
for i in range(1,n-1):
lst[index[i]]=[index[i-1],index[i+1]]
lst[index[0]][1]=index[1]
①________
ans=[-1]*n
for cur in range(n-1,0,-1):
if lst[cur][0]!=-1:
ans[cur]=lst[cur][0]
②____
if lst[cur][1]!=-1:
lst[lst[cur][1]][0]=lst[cur][0]
if ans[cur]==-1:
ans[cur]=lst[cur][1]
if a[lst[cur][1]]-a[cur]<=a[cur]-a[lst[cur][0]]:
③____________
for i in range(1,n):
print("第",i+1,"人选择第",ans[i]+1,"人做朋友!")
(4)将程序的划线处的代码替换为“range(1,n,1)”,程序的运行结果__________(填字母,选填:A.会B.不会)发生变化。
【答案】 ①. 5 ②. 2 ③. lst[index[-1]][0]=index[-2] ④. lst[lst[cur][0]][1]=lst[cur][1] ⑤. ans[cur]=lst[cur][1] ⑥. A
【解析】
【详解】本题考查链表。
(1)第 7 人身高 182,与已有人的身高差值分别为:10,7,8,6,2,3;差值最小的是 2,对应第 5 人(身高 180),所以第 7 人将选择第 5 人做朋友。
(2)对于 n=6,a=[172,175,190,176,180,185]:第一次循环 i=0,进入内层循环前执行 flag=False,内层循环有交换,flag=True,不执行 break。第二次循环 i=1,进入内层循环前执行 flag=False,内层循环无交换,flag=False,执行 break。所以 flag=False 语句执行次数为 2 次。
(3) ① 处:lst列表用于存储每个元素的前后相邻元素的索引,类似于双向链表的结构。lst[index[i]] = [index[i - 1], index[i + 1]]已经处理了中间元素的前后相邻关系,但最后一个元素的前一个相邻元素还未处理。 index[-1]表示排序后最后一个元素的原始索引,index[-2]表示排序后倒数第二个元素的原始索引,所以lst[index[-1]][0] = index[-2]的作用是将最后一个元素的前一个相邻元素的索引设置为倒数第二个元素的原始索引,完善双向链表的结构,填lst[index[-1]][0] = index[-2]。② 处:当我们确定了当前元素cur选择的朋友后,需要更新链表结构,以保证后续元素选择的正确性。 lst[cur][0]表示当前元素cur的前一个相邻元素的索引,lst[cur][1]表示当前元素cur的后一个相邻元素的索引。lst[lst[cur][0]][1]=lst[cur][1]的作用是将当前元素cur的前一个相邻元素的后一个相邻元素索引更新为当前元素cur的后一个相邻元素的索引,相当于在链表中删除了当前元素cur,填lst[lst[cur][0]][1]=lst[cur][1]。③ 处:当a[lst[cur][1]] - a[cur] <= a[cur] - a[lst[cur][0]]时,说明当前元素cur与后一个相邻元素的身高差小于等于与前一个相邻元素的身高差,根据规则,应该选择后一个相邻元素作为朋友,所以将ans[cur]赋值为lst[cur][1],填 ans[cur] = lst[cur][1]。
(4)原代码逆序处理(从后往前)保证后续节点已处理完毕,链表关系正确。若改为顺序处理(从前往后),可能因未处理后续节点导致逻辑错误。程序运行结果会发生变化。
第1页/共1页
学科网(北京)股份有限公司
$$
余姚中学2024年第二学期期中考试高二技术选考试卷
考生须知:
1.本试卷分两部分,第一部分信息技术,第二部分通用技术。满分100分,考试时间90分钟。
2.考生答题前,务必将自己的姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸上。
3.选择题的答案用2B铅笔将答题纸上对应题目的答案选项涂黑,如要改动,须将原填涂处用橡皮擦净。
4.非选择题的答案用黑色字迹的签字笔或钢笔写在答题纸上相应区域内,作图时可先使用2B铅笔,确定后用黑色字迹的签字笔或钢笔描黑,答案写在非答题纸上无效。
第一部分信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分。)
1. 下列有关数据、大数据和信息说法正确的是( )
A. 同一数据在不同语境中承载的信息可能不同
B. 数据在计算机中可以采用十六进制方式进行存储
C. 信息的保存和传播必须依附于载体,信息的价值永恒不变
D. 若数据库中的数据量特别庞大,这样的数据就可以称为大数据
2. 小李录制并保存了al.wav和a2.wav两段音频,再分别另存为al.mp3和a2.mp3,参数如下表所示。
文件名
格式
采样频率
量化位数
声道数
时长
al.wav
wave
44100Hz
16位
立体声
30s
a2.wav
wave
22050Hz
8位
立体声
60s
al.mp3
mp3
44100Hz
16位
立体声
30s
a2.mp3
mp3
22050Hz
8位
立体声
60s
下列说法正确的是( )
A. al.wav与a2.wav的存储容量一样大 B. al.wav与al.mp3的存储容量一样大
C. al.wav比a2.wav保真度高 D. a2.wav与a2.mp3的保真度一样
3. 下列关于人工智能的说法,正确的是( )
A. 通过图灵测试可以评估机器智能水平的高低
B. 强化学习是根据事先知道的最终答案进行相应调整的学习方法
C. 有人参与的人工智能就属于混合增强智能
D. 深度学习是以数据驱动的人工智能方法,不需要事先构造知识库
4. 下列关于网络技术的说法,正确的是( )
A. 应用终端与服务器建立连接不一定通过网关
B. 同一局域网内的不同设备,可以配置相同的IP地址
C. 移动终端通过Wi-Fi和服务器通信无需遵循TCP协议
D. 分处不同局域网中的计算机不能相互通信
5. 某共享电瓶车租赁系统的工作原理:用户通过手机APP扫描电瓶车上的二维码,获取电瓶车的唯一编码并发送给云端服务器。云端服务器在验证用户身份和口令后,会向车控终端发送解锁命令。车控终端接收到解锁命令后对车辆进行解锁。用户骑行结束后,车控终端检测到锁车动作后,向云端服务器发送信号,云端服务器根据骑行时间计算费用,并通知用户。下列关于该共享电瓶车系统的组成说法不正确的是( )
A. 电控终端和扫码用的手机都属于该系统的硬件
B. 共享电瓶车的维修人员属于该系统的用户
C. 手机APP以及手机上安装的操作系统组成了共享单车的软件
D. 共享单车的唯一编号,开锁密码等都属于该信息系统中的数据
6. 某共享电瓶车租赁系统的工作原理:用户通过手机APP扫描电瓶车上的二维码,获取电瓶车的唯一编码并发送给云端服务器。云端服务器在验证用户身份和口令后,会向车控终端发送解锁命令。车控终端接收到解锁命令后对车辆进行解锁。用户骑行结束后,车控终端检测到锁车动作后,向云端服务器发送信号,云端服务器根据骑行时间计算费用,并通知用户。下列关于该共享电瓶车系统应用的说法正确的( )
A. 结算时使用支付宝支付应用了NFC技术
B. 用户的身份和账户等数据存储在数据库里
C. 用户扫描二维码获取编码的过程体现了信息的编码
D. 根据骑行时间计算费用体现了信息系统的数据传输功能
7. 下列Python表达式中,结果为True的是( )
A. int(-3.14)==round(float("-3.14"))
B. len("stu-dent")==7
C. "pen"in["book","pencil","ruler"]
D. "A321">"a3"
8. 某二叉树的前序遍历结果为GFDECAB,中序遍历结果为DFGCAEB。关于该二叉树,以下说法,正确的是( )
A. 该二叉树的后序遍历为ADFCBEG
B. 该二叉树的深度为4,节点C在第3层
C. 该二叉树的叶子节点数比非叶子节点数多一个
D. 该二叉树可以通过添加3个节点后变为完全二叉树
9. 有如下Python程序段:
def fab(a,b):
if a%b==0:
return
elif a>b:
fab(a-b,b)
print('1',end="")
else:
fab(a,b-a)
print('2',end="")
x=fab(16,36)
以下说法正确的是( )
A. 函数fab调用的次数是4次 B. 程序运行后,x的值为4
C. 程序运行后,输出值为"22" D. 该程序的时间复杂度为0(1)
10. 有如下Python程序段:
for i in range(0,len(a)-1,2):
if i > 0 and a[i] < a[i-1]:
a[i],a[i-1] = a[i-1],a[i]
if a[i] < a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
列表a有6个元素,运行该程序段后,a可能的值是( )
A. [2,9,8,6,9,3] B. [9,9,8,6,3,2] C. [9,3,6,2,8,9] D. [6,3,9,2,9,8]
11. 某对分查找算法Python程序段如下:
from random import randint
a=[8, 12,15,18, 18, 25, 25, 35, 47]
i=0; j=8
key=randint(8, 48)
while i<=j:
m=(i+j)//2
if key<=a[m]:
j=m-1
else:
i=m+l
print(i)
该程序执行完成后输出值为3,以下说法错误的是( )
A. key值可能是16到18的整数
B. 该程序m=(i+j)//2被执行4次
C. 该程序可实现查找第一个大于等于key值的位置
D. 若key〈=a[m]改为key<a[m],且key=25,则程序执行完后i值为6
12. 有如下Python程序段:
tmps=[32,28,26,29]
n=len(tmps);top=-1
ans=[0]*n
stk=[-1]*n
for i in range(n):
t=tmps[i]
while top>-1 and t>tmps[stk[top]]:
d=stk[top]
top-=1
ans[d]=i-d
top+=1
stk[top]=i
print(ans)
执行该程序段后,输出的结果是( )
A. [1,0,0,1] B. [1,1,0,0]
C. [0,2,1,0] D. [0,1,2,0]
二、非选择题(本大题共3小题,其中第13小题7分,第14小题8分,第15小题11分,共26分)
13. 有些数字旋转180度后仍是有效数字,如0、1、8旋转后仍是0、1、8,6和9旋转后分别变成9和6。一些数字字符串在旋转后不仅有效,而且和原数串相同。如5位数字字符串“98186”旋转180度后仍是“98186”。统计由5位数字组成数串中,旋转后仍和原数相同的数串的个数。
(1)以“99”开头的5位数串中,旋转后和原串相同的数串有__________个。
(2)实现上述功能的部分Python程序如下,请在划线处填入合适的代码。
dic={'0':'0',1':'1','6':9','8':'8',9':'6'}
count=0
i=0
while i<100000:
①____
t=str(i)
t='0'*(5-len(t))+t
②____
if c!='0' and c!='1' and c!='8':
flag=False
for j in range(2):
if t[j]not in dic or③____
flag=False
if flag:
count+=1
i+=1
print("旋转后和原串相同的五位数串的数量是:",count)
14. 小华要搭建仓库温湿度监控系统,分布在仓库各处的智能终端(编号0-9)每隔一定时间将传感器采集的温湿度数据,经过处理后通过无线方式发送到服务器并保存到数据库中,系统若检测到温湿度异常,则发出报警信息,管理员可以通过浏览器查看相关数据。请回答下列问题:
(1)搭建该系统时,下列__________设备(单选,填字母)不能与智能终端直接连接。
A.温湿度传感器 B.IoT模块 C.蜂鸣器 D.无线路由器
(2)下列关于该系统支撑技术的说法,正确的有________(单选,填字母)。
A.智能终端具有一定程序存储和数据处理的能力
B.服务器端运行的软件均为系统软件
C.在服务器端无法使用浏览器访问该系统
(3)小华基于FlaskWeb框架编写服务器端的程序,部分代码如下。编写完成后,若要通过浏览器获取视图函数index()的返回页面,则应访问的URL是http://__________。
#导入Flask框架模块及其他相关模块,代码略
app=Flask(__name__)
@app.route("/select")
def index():
#从数据库读取温湿度数据,并返回页面,代码略
#服务器其他功能,代码略
if__name__=="__main__":
app.run(host="192.168.1.1",port=8000)
(4)智能终端程序。
#导入microbit模块及其他相关模块以及通过串口配置Wi-Fi模块部分,代码略
whileTrue:
t1=pin0.read_analog()
h1=pin1.read_analog()
errno,resp=Obloqget("input?id=1&val1="+str(t1)+"&val2="+str(h1),10000)
#数据上传成功或失败后续处理,代码略
sleep(1000)
阅读上述代码,传感器每隔____________(填时间)采集一次数据,并通过_________的形式提交上传数据。
(5)不同的角色的用户登录时,分配不同权限和管理模块,请例举两个系统管理员可用功能模块。_________
15. 根据社会学研究表明,人们都喜欢找和自己身高相近的人做朋友。现在有n名身高各不相同的同学依次走入教室,调查人员想预测每个人在走入教室的瞬间最想和已经进入教室的哪个人做朋友。当有两名同学和这名同学的身高差一样时,这名同学会更想和高的那个人做朋友,对于第1个走入教室的同学我们不做预测。
比如第1个进入教室的人身高为172;
第2个走入教室的人身高为175,他只能选择第1人做朋友;
第3个走入教室人身高为190,与172的差值为18,与175的差值为15,他选择第2人做朋友。
第4个走入教室的人身高为176,他选择第2人做朋友;
第5个走入教室的人身高为180,他选择第4人做朋友;
第6个走入教室的人身高为185,与190的差值为5,与180的差值也为5,但他选择身高更高的190,即第3人做朋友。
(1)在以上数据的基础上,如果再走入第7人,他的身高为182,他将选择第__________人做朋友。
(2)定义如下bsort(n,a)函数,n为人数,a列表为依次走入的同学身高。
def bsort(n,a):
b=[i for i in range(n)]
for i in range(n-1):
for j in range(n-i-1):
if a[b[j]]>a[b[j+1]]:
b[j],b[j+1]=b[j+1],b[j]
flag=True
if flag==False:
break
return b
若n为6,a的值为[172,175,190,176,180,185],调用该函数,加框处的语句执行次数为_________。
(3)程序运行时,若读入的数据[172,175,190,176,180,185],程序界面如图所示:
实现该功能的部分Python程序如下,在程序中划线处填入合适的代码。
'''读取人数存入n;
读取依次走入教室第1至第n人的身高存入列表a;
代码略
'''
for i in range(n):
print("走入教室的",i+1,"人,身髙为",a[i],";")
index=bsort(n,a)
lst=[[-1,-1]for i in range(n)]
for i in range(1,n-1):
lst[index[i]]=[index[i-1],index[i+1]]
lst[index[0]][1]=index[1]
①________
ans=[-1]*n
for cur in range(n-1,0,-1):
if lst[cur][0]!=-1:
ans[cur]=lst[cur][0]
②____
if lst[cur][1]!=-1:
lst[lst[cur][1]][0]=lst[cur][0]
if ans[cur]==-1:
ans[cur]=lst[cur][1]
if a[lst[cur][1]]-a[cur]<=a[cur]-a[lst[cur][0]]:
③____________
for i in range(1,n):
print("第",i+1,"人选择第",ans[i]+1,"人做朋友!")
(4)将程序的划线处的代码替换为“range(1,n,1)”,程序的运行结果__________(填字母,选填:A.会B.不会)发生变化。
第1页/共1页
学科网(北京)股份有限公司
$$