浙江省衢州、丽水、湖州三地市2023年11月高三上学期信息技术教学质量检测试卷
试卷更新日期:2023-11-29 类型:期中考试
一、选择题(本大题共12小题,每小题2分,共24分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分。)
-
1. 下列关于数据与信息的说法,正确的是( )A、计算机中的数据是以二进制形式存储的 B、观看在线影视时点播的视频不是数据 C、信息的价值亘古不变 D、同一信息只能依附于同一载体2. 某种编码共有128种符号,表示该编码至少所需的二进制位数是( )A、7 B、8 C、64 D、1283. 阅读下列材料,回答第3至5题:
某养老机构使用智能服务系统监测老人健康状况。该系统可用身份证识别仪采集老人姓名、住址等个人信息,通过传感器获取老人日常健康、运动等数据,并存储在服务器数据库中;老人家属可通过网页或手机APP,使用账号密码登录系统,随时了解老人的相关信息;机构内员工(如管理人员、护工等)可通过手机APP刷脸认证,完成签到等操作。
(1)、该系统的下列应用中,体现人工智能技术的是( )A、用身份证识别仪采集老人个人信息 B、通过传感器获取老人日常健康数据 C、家属通过账号密码登录系统 D、员工通过刷脸认证完成签到(2)、下列说法正确的是( )A、材料中描述的手机 APP 属于系统软件 B、该系统的用户只有老人、家属和护工 C、该系统只支持数据输入输出操作 D、根据监测数据可提供个性化服务(3)、为了增强该系统的安全性,下列做法不正确的是( )A、将老人个人信息数据加密后再存储于数据库 B、对机构内的所有员工设置相同的系统访问权限 C、定时更新服务器中杀毒软件的病毒库 D、定期备份服务器中的数据4. 下列关于网络系统的说法不正确的是( )A、网络技术使信息系统的作用范围超越地理和时空的限制 B、局域网内只能通过无线通信方式进行数据通信 C、网络操作系统、通信软件是常见的网络软件 D、光调制解调器是组建家庭网络的常用设备5. 栈s的最大长度为3,初始为空,经过一系列的入栈、出栈操作,若元素入栈的顺序是 a,b,c,d,e,则可能的出栈序列为( )A、a,e,d,c,b B、c,a,b,d,e C、a,d,c,e,b D、e,d,c,b,a6. 某二叉树的树形结构如图所示,其后序遍历结果为 DBGEFCA,前序遍历的结果为( )A、ABCDEFG B、ABDCEGF C、DBEGCFA D、ABDCGFE7. 有如下 Python 程序段:s=[2,3,8,7,5]
for i in range(len(s)-1):
for j in range(len(s)-1,i,-1):
if s[j]<s[j-1]:
执行该程序段,加框处语句被执行的次数是( )
A、3 B、6 C、8 D、108. 定义如下函数:def f(a,b):
if a<b:
return a+b
else:
return f(a-b,a+b)
执行语句 x=f(18,-2)后, x 的值为( )
A、40 B、36 C、20 D、169. 若 a,b,c为互不相同的整数, 要找出它们中最小的数。以下 Python 程序段不可行的是( )A、k=aif k>b and b<c:
k=b
elif k>c:
k=c
print(k)
B、k=aif k>b:
k=b
if b<c:
k=b
else:
k=c
print(k)
C、if a<b and a<c:k=a
elif b<c:
k=b
else:
k=c
print(k)
D、if a<b:k=a
else:
k=b
if c<k:
k=c
print(k)
10. 有如下 Python 程序段:import random
q=[0]*8 ; head,tail=0,4
for i in range(4):
k=random.randint(0,10)
if k%2==0:
q[tail]=k%5
tail+=1
else:
head+=1
while head<tail:
print(q[head],end=" ")
head+=1
程序运行后,输出结果可能为( )
A、0 0 0 0 2 3 0 6 B、0 1 2 3 4 C、0 0 0 0 D、2 4二、非选择题(本大题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分。)
-
11. 世界卫生组织推荐认为成年人正常血压标准:收缩压在90-140之间并且舒张压在60-90之间(包含端点值)。现有监测到的连续若干天的血压值,编程计算正常血压持续的最长天数并输出起止日期,若有多段最长天数 , .则输出最后一段的起止日期。(1)、某段时间测量的血压值如图所示,则正常血压持续的最长天数为。(2)、实现上述功能的部分 Python 程序如下,请在划线处填入合适的代码。
'''
数组a中保存每天监测到的血压值,a[2*i]和 a[2*i+1]分别表示第 i 天的收缩压和舒张压,数组 b 保存日期数据,代码略;
'''
n=len(a)
t,ans,end=0,0,0
for i in range(n//2):
if 90<=a[2*i]<=140 and 60<=a[2*i+1]<=90:
t+=1
if :
ans=t
end=i
else:
print("正常血压持续的最长天数为:",ans)
beg=
print("起止日期:",b[beg],"--",b[end])
12. 小明搭建花房环境监测系统。该系统能通过传感器获取花房的温度及湿度,出现异常时,通过执行器发出警报。用户通过浏览器可查看实时数据及历史数据,系统结构示意图如图a所示。请回答下列问题:(1)、该系统结构示意图中,虚线框处应是 (单选,填字母)。A、 B、 C、(2)、下列设备中, 实现该系统数据输入和输出功能的是 (多选,填字母)。A、传感器 B、执行器 C、IoT 模块 D、无线路由器 E、Web 服务器(3)、小明基于 Flask Web 框架编写服务器端的程序,部分代码如下。测试系统时,在浏览 器地址栏中输入“http://196.168.1.10 :5000/”显示首页数据,与该 URL 中路由关联的视图函数是。#导入 Flask 框架模块及其他相关模块,代码略
app=Flask(__name__)
@app.route("/")
def index():
#从数据库读取温度和湿度数据,并返回页面,代码略
@app.route("/search")
def search():
#根据日期查询相应数据,并返回页面,代码略
#服务器其他功能,代码略
(4)、运行该系统,在浏览器地址栏中输入 URL 访问系统,系统无法正确显示当前的温度等数据。简要说明系统可能造成上述问题的原因(本系统中,传感器等硬件设备及浏览器,不会造成上述问题)。(注:回答 2 项)(5)、小明导出系统中某天24小时的温湿度数据,部分如图b所示。分析一天内每小时的平均温度,部分Python程序如下。import pandas as pd
import matplotlib.pyplot as plt df=pd.read_csv("data.csv") #读取文件 data.csv 中的数据
df.insert(0,"小时","") #插入列
for i in df.index: #通过行标签和列标签选取单个值
t=df.at[i,"时间"]
df.at[i,"小时"]=t[:2]
df=df.groupby("小时",as_index=False).▲ #以“小时”分组求均值
plt.bar(df.小时,df.温度)
#设置绘图参数,显示如图 c 所示柱形图,代码略
①程序中划线处合适的代码是(单选, 填字母: A .sum()/B .mean()/C .count())。
②加框处的语句作用:实现获取当天平均温度高于30的所有时间段中温度最高的5个,该处代码由以下三部分组成:
A .df=df.sort_values("温度") B .df=df.tail(5) C .df=df[df.温度>30]
则加框处代码依次为 (填字母)。
13. 某快递驿站有A、B两类货架,收到的包裹重量小于等于10存放于A货架,其余存放于B货架。编写程序模拟生成取件码和顾客的取件过程,取件码是根据当前已处理的包裹数量生成,如A-0001表示当天第一个处理的包裹存放在A货架,B-0003表示当天第三个处理的包裹存放在B货架。取件码与顾客手机号关联,程序根据输入的手机号显示其所有包裹的取件码,并允许顾客一次性提取或者部分提取。程序的部分运行界面如图a和图b所示。(1)、当前已处理的包裹取件码是 A-0158,若下一个包裹重量是 12,其取件码为。(2)、定义函数save(pnum,code),参数pnum为手机号,code为取件码。函数功能是将一条包裹信息存储到列表goods和列表dic中。如图a的包裹数据,手机号“180****1215”在两个列表中的数据分别为goods[4]=["B-0005",-1]、goods[9]=["A-0010",4]和 dic[2]=["180****1215",9,2]。①若调用该函数继续存储手机号“180****1215 ”的包裹, 其取件码是“B-0011 ”,则对应 dic[2]的值变为["180****1215", ▲ ,▲]。
②函数 save 代码如下,程序中加框处代码有错,请改正。
def save(pnum,code):
goods.append([code,-1])
n=len(goods)-1
print(n,"号包裹的手机号:",pnum,"取件码:",code)
num=search(dic,pnum) #函数返回手机号 pnum 在 dic 中的索引号,未找到返回-1
if num==-1:
dic.append([pnum,n,1]) #新增一个包裹信息
else:
goods[n][1]=dic[num][1]
dic[num][1]=n
(3)、实现取件功能的部分 Python 程序如下,请在划线处填入合适的代码。x=input("请输入您的手机号:")
num=search(dic,x)
if num!=-1:
#输出手机号为 x 的当前所有包裹信息,代码略
op=int(input("输入 0 取全部包裹,输入 1 取部分包裹:"))
if op==0:
print("您的包裹已经取完! ")
del dic[num] #删除 dic 中索引为 num 的元素
else:
order=input("请输入本次的取件码,只输入#表示结束取件:")
while order!="#":
p,q=head,head
while goods[q][0]!=order:
p=q
if p==head:
dic[num][1]=goods[q][1]
else:
goods[p][1]=goods[q][1]
dic[num][2]-=1
if dic[num][2]==0:
print("您的包裹已经取完!")
break
#输出手机号为 x 的当前所有包裹信息,代码略
order=input("请输入本次的取件码, 只输入#表示结束取件:")
else:
print("查无此号,请检查后重新输入!")