内容正文:
绝密★考试结束前
2023学年第二学期浙南名校联盟期中联考
高二年级技术学科试题
考生须知:
1.本卷共7页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1.下列关于数据、信息的说法,不正确的是
A.信息可以通过模拟信号或数字信号来表示
B.数字是数据的唯一表现方式
C.对数据进行加工处理有利于发掘其中蕴含的价值
D.大数据技术可以处理结构化、半结构化和非结构化数据
2.下列关于信息编码的说法,正确的是
A.十进制数37转换为二进制数后,该二进制数中1的个数为4
B.二进制整数最右边增加1位后,奇偶性不会发生变化
C.某字符的ASCII码十六进制表示为63,在计算机中存储为二进制编码1100011
D.扫描某文章生成只有黑、白两种颜色的图像,每个像素用一位二进制数编码
阅读以下材料,完成第3~6题:
随着科技的不断进步,智能家居设备正逐渐成为我们日常生活的一部分,通过各种传感器、控制器和执行器,智能家居系统能够实现对家中设备的智能控制。通过手机、平板等设备,与互联网连接,可以随时随地控制家中的灯光、空调、电视、扫地机器人等,让生活更加便捷。安全系统不仅能监控家庭安全,还能通过面部识别技术识别访客,甚至在紧急情况下自动报警。集成的全屋语音控制系统将使得控制家中的各种智能设备变得前所未有地简单,从播放音乐到调节温度,一切尽在语言之间。
3.以下关于材料中智能家居系统说法正确的是
A.智能家居系统中的硬件就是指计算机硬件
B.智能家居系统只是由硬件、网络、用户构成的人机交互系统
C.通过连网控制家中设备,断网后发现无法控制,说明系统对外部设备有依赖
D.传感器在智能家居系统中属于信息输出设备
4.智能家居系统中应用了人工智能技术提升生活品质,以下关于材料中人工智能理解正确的是
A.系统中扫地机器人是应用了“手工构造知识库+推理引擎”的“专家系统”
B.安全系统通过面部识别技术识别访客,属于联结主义人工智能方法
C.系统通过人工智能技术的应用提升生活品质,说明人工智能对人类只有益处
D.通过语音实现控制家中灯光、空调等设备,属于行为主义人工智能方法
5.智能家居系统通过手机、平板设备,利用网络控制家中设备,以下关于网络理解不正确的是
A.网络系统最基本的功能是数据通信
B.计算机网络最基本的协议是TCP/IP
C.家庭组网时,调制解调器通过双绞线接入路由器的LAN口
D.网络是由计算机系统、数据通信系统、网络软件和网络协议三个部分组成
6.假设室内合适的温度是16~24℃,用tmin~tmax表示,通过传感器获取的室内环境温度存放在变量t内,系统根据获取的温度,控制空调调节温度,用k来表示空调调温,k为1时表示上调温度,为-1时表示下调温度,为0表示温度合适,关闭空调。以下代码不能正常调控的是
A.if t>tmax:
k=-1
if t<tmin:
k=1
if tmin<=t<=tmax:
k=0
B.if t>tmax:
k=-1
elif t>=tmin:
k=0
else:
k=1
C.if t>tmax:
k=-1
if t<tmin:
k=1
else:
k=0
D.k=0
if t>max:
k=-1
elif t<min:
k=1
7.下列表达式的值为 True 的是
A.2**3<2*3 B."st" in "Student"
C.not 1==1 and 0!=1 D.len(["a","ab"])==3 or int(5/2)==5//2
8.以下对数据结构理解正确的是
A.有字符串 s="Lost",可通过 s[3]="e",将其修改为"Lose"
B.数组、链表、队列、栈、树是几种常见的线性结构
C.队列可在队首和队尾操作,栈也可在栈顶和栈底进行操作
D.每个链表必定有一个头指针,相邻节点存储时不需要连续空间
9.某二叉树前序遍历为 ABDGHECF;中序遍历为 GDHBEAFC,以下说法正确的是
A.此二叉树为完全二叉树
B.此二叉树有 5 个叶子节点
C.此二叉树的后序遍历结果为 GHDEBFCA
D.将二叉树以数组方式存储结果如下图
0
1
2
3
4
5
6
7
A
B
C
D
E
F
G
H
10.有如下 Python 程序:
import random
a=[0]*6
i=0
while i<6:
a[i]=random.randint(1,10)
if a[i] in a[0:i]:
i-=1
i+=1
for i in range(6):
if i%2==0 and a[i]>a[i+1]:
a[i],a[i+1]=a[i+1],a[i]
else:
a[i]+=a[i]%2
print(a)
执行此程序后,数组 a 中不可能的结果为
A.[4, 6, 4, 8, 7, 10] B.[3, 11, 6, 8, 1, 4]
C.[1, 4, 4, 8, 6, 8] D.[4, 8, 2, 4, 6, 8]
11.执行以下 Python 程序,输入"985c9q39s211",输出结果为
s=input("请输入字符串:")
n=len(s); ch=""; max=""
for i in range(n-1,-1,-1):
c=s[i]
if "0"<=c<="9":
ch=c+ch
else:
if ch>max:
max=ch
ch=""
print(max)
A.9 B.39 C.211 D.985
12.单向链表 data 中的节点由[数据区域,指针区域]构成,其中数据有重复,执行以下 Python 程序,去除链表中的重复数据,代码如下:
原始数据:data= [[3,1],[3,2],[1,3],[5,4],[1,5],[3,6],[2,7],[3,8],[8,9],[2,-1]]
去重后输出:[3,2],[1,3],[5,6],[2,8],[8,-1]
head = 0
cur = head
while (1) :
p = cur
q = data[cur][1]
while q!= -1:
if data[q][0] == data[cur][0]:
(2)
else:
p = q
(3)
cur = data[cur][1]
# 输出链表,代码略
请选择合适的代码组合填入划线处
①data[cur][1] != -1 ②cur != -1 ③data[p][1] = data[q][1]
④data[q][1] = data[p][1] ⑤q = data[q][1] ⑥p = data[p][1]
A.①③⑤ B.②④⑥ C.①④⑤ D.②③⑥
二、非选择题(本大题共3小题,其中第13小题9分,第14小题8分,第15小题9分,共26分)
13.为了解大学录取情况,小陆下载了浙江省2023年普通高校招生普通类第一段平行投档分数线存放在“分数线.xlsx”文件中,数据部分截图如第13题图a所示,利用所学的技术对数据进行分析。请回答下列问题:
第13题图a
(1)数据处理的核心是数据,数据的质量直接影响数据分析的结果。但获取的数据并不都是优质的,
常常存在一些问题。以下对常见的数据问题处理正确的是。(多选,填字母)(注:全
部选对的得2分,选对但不全的得1分,不选或有选错的得0分)
A.数据缺失通常采用平均值、中间值或概率统计值来填充缺失值。
B.多数据源合并集成时产生的数据重复,可以直接删除重复的数据
C.数据异常可根据实际情况进行修改
D.不同来源的数据格式不一致,保留一种格式的数据,其他格式的数据删掉即可
(2)读取文件中的所有数据,存入df,进行分析,请完成以下各题代码的填写。
import pandas as pd
import matplotlib.pyplot as plt
plt.rc("font",**{"family":"SimHei"})
df=pd.read_excel("分数线.xlsx")
#输入学校名称,了解该校2023年最高与最低录取分数线,程序运行效果如第13题图b所示;
第13题图b
school=input("请输入学校名称:")
if school in list(df.学校名称): #读取 df 中的学校名称,并转成列表
zz=_________________ #找出相应学校的所有数据
maxsc=zz.分数线.max()
minsc=zz.分数线.min()
print("录取最高分:",maxsc,"录取最低分:",minsc)
else:
print("请正确输入学校名称")
(3)按“地区”统计招生计划数,并按计划数降序排序,程序运行效果如第13题图c所示。请为加框①处选择合适的代码___________(单选,填字母),并在划线②处填入适当的代码,
第13题图c
df1=①
A.df.groupby("地区",as_index=False).计划数.count()
B.df.groupby("地区",as_index=False).计划数.sum()
C.df.groupby("地区").计划数.count()
D.df.groupby("地区").计划数.sum()
df2=df1.② ("计划数",ascending=False)
(4)分析外省对浙江招生人数情况,制作如第13题图d所示图表,请在划线处填入合适的代码:
第13题图d
data=③
plt.④ (data.地区,data.计划数,label="计划数")
plt.title("对浙招生数最少的地区对比图")
plt.legend()
plt.show()
14.在运算数学计算式时,经常要考虑括号匹配的问题,假设给定只包括3种括号“{}、[]、()”的数学计算式,设计一个Python程序,判断计算式中的括号是否匹配。
程序运行效果如第14题图a、图b所示,请根据功能要求,在划线处填入合适的代码。
图a 图b
def check(expr):
bracket="{[()]}"
op={"}":"{","]":"[",")":"("}
st=[""]*100; top=-1
for ch in expr:
if ch in bracket:
if ch in bracket[:3]:
top+=1
①
elif top==-1 or ② :
return False
else:
③
④
s=input("请输入数学计算式:")
if check(s):
print("括号匹配")
else:
print("括号不匹配")
15.某加工厂进行来料加工,每个材料需经过三个步骤完成:裁切→打磨→组合,其中“裁切”和“组合”由人工完成,“打磨”由机器自动完成。工厂有两位师傅来完成这些材料的加工,现有每个材料各个加工步骤所需的时间,加工要求如下:
①“裁切”根据师傅完成情况按顺序安排
②“组合”应由裁切的同一个师傅来完成
说明:师傅在裁切完成后,下一步优先组合打磨好的材料,如果此时没有打磨好的材料,则继续按序安排新材料进行裁切;组合完成后下一步优先裁切新材料,如果此时已没有新材料,则按裁切顺序对打磨完成的材料进行组合。
现尝试编写Python程序来模拟加工过程,假设两位师傅分别为张师傅、李师傅,所有等待加工的材料数据为[材料编号,裁切耗时,打磨耗时,组合耗时],如["材料 1",6,10,15]。
现有等待加工的材料数据:["材料 1",13,10,16],["材料 2",11,9,11],["材料 3",12,11,14],["材料 4",9,6,13],["材料 5",12,11,11],["材料 6",13,10,11],["材料 7",13,7,11]
(1)由题意可知,给"材料3"进行裁切的师傅是(选填字母:A.张师傅/B.李师傅)。
(2)实现上述过程的Python程序如下,请在划线处填入合适的代码:
函数与方法
功能
w.append(x)
在列表w末尾添加元素x
x=w.pop(i)
将列表w下标为i的元素赋值给x,并将其从w中删除
mats=[["材料1",13,10,16],["材料2",11,9,11],["材料3",12,11,14],["材料4",9,6,13],["材料5",12,11,11],["材料 6",13,10,11],["材料 7",13,7,11]]
masters=[["张师傅",0],["李师傅",0]]; q_dic={"张师傅":[],"李师傅":[]}
start_time=[0,0]; cur_time=0
def cut(master,index,mat): # 裁切
print(f"时间:{start_time[index]},{master}给{mat[0]}进行裁切,结束时间{start_time[index]+mat[1]}")
start_time[index]=①
q_dic[masters[index][0]].append([mat[0],start_time[index]+mat[2],mat[3]])
masters[index][1]=1
def pol(master,index): # 组合
cur=q_dic[masters[index][0]].pop(0)
print(f"时间:{start_time[index]},{master}给{cur[0]}进行组合,结束时间{start_time[index]+cur[2]}")
start_time[index]+=cur[2]
masters[index][1]=0
def judge(master):
#判断某位师傅“组合”材料队列中是否还有等待加工的材料,如有返回 True,否则返回 False
def judge_all():
#判断所有师傅“组合”材料队列中是否还有等待加工的材料,如有返回 True,否则返回 False
i=0;n=len(mats)-1
while ② :
for index in range(len(masters)):
if ③ : #当前师傅尚未完成当前材料的加工
continue
que=q_dic[masters[index][0]]
if i>n and judge(masters[index][0]):
if que[0][1]<=start_time[index]:
pol(masters[index][0],index)
else:
start_time[index]+=que[0][1]
elif masters[index][1]==1 and que[0][1]<=start_time[index]:
pol(masters[index][0],index)
elif i>n:
continue
else:
④
cut(masters[index][0],index,mat)
i+=1
cur_time = -1
for index in range(len(masters)):
if judge(masters[index][0]):
if cur_time==-1 or cur_time>start_time[index]:
cur_time=start_time[index]
2023学年第二学期浙南名校联盟期中联考
高二年级技术学科参考答案
第一部 分信息技术
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
题号
1
2
3
4
5
6
7
8
9
10
11
12
答案
B
D
C
B
C
C
D
D
C
B
A
A
二、非选择题(本大题共3小题,其中第13小题9分,第14小题8分,第15小题9分,共26分)
13.(1)AC (2 分)
(2)df[df["学校名称"]==school] (2 分)
或 df[df.学校名称==school]
(3)①B (1 分)
②sort_values (1 分)
(4)③df2.tail() 或 df2[-5:] (2 分)
④bar (1 分)
14.①st[top]=ch (2 分)
②op[ch]!=st[top] (2 分)
③top-=1 (2 分)
④return top<0 或 return top==-1 (2 分)
15.(1)B (1 分)
(2)①start_time[index]+mat[1] (2 分)
②i<=n or judge_all() (2 分)
③cur_time<start_time[index] (2 分)
④mat=mats[i] (2 分)
学科网(北京)股份有限公司
$$