浙江省杭州及周边重点中学2023届高三下学期信息技术3月联考卷
试卷更新日期:2023-03-22 类型:月考试卷
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个选项中只有一个是符合题目要求的,不选、错选、多选均不得分。)
-
1. 去年过年东北局地遭遇极寒天气,素有“神州北极”之称的漠河最低气温达到-53°,刷新漠河 1969 年以来的最低气温纪录,漠河道路多为冰雪路面。下列说法中不正确的是( )A、为防止摔伤,漠河居民走路时两手放在衣服外,摔倒时起到缓冲作用,这是智慧的体现 B、“-53”是数字,是最简单的一种数据 C、前段时间爆火的《漠河舞厅》,更是让这座边境小城一夜火出圈,体现信息的共享性 D、当气温在-30°时将热水泼到空气中,形成“泼水成冰”的景象,这是知识的体现2. 在抗击疫情中,大数据技术发挥了重大作用,下列关于大数据的说法正确的是( )A、某校学生填写是否做过核酸的信息,由学校汇总后的数据属于大数据 B、基于大数据技术,个别数据不准确会影响数据分析 C、处理大数据的基本思想是并行处理的思想 D、在手机上填写个人资料后申领“健康码”的过程,涉及到数据库技术3. 人工智能技术正逐渐广泛应用于教育行业,大数据分析、人脸识别、扫描系统,算法优化等新科技正在应用于智慧课堂中,改变了传统教学模式。下说法中正确的是( )A、通过摄像头捕捉学生表情动作,并对这些行为进行分析采用了行为主义的人工智能方法 B、将老师的语音识别成字幕显示在课件上采用了符号主义的人工智能方法 C、智慧课堂技术对社会的影响并不都是正面的 D、智慧课堂中刷脸考勤功能没有用到人工智能技术4. 阅读材料,回答问题
小馨搭建了“学生运动实时监测系统”,该系统的结构如右图所示,能够采集学生的运动和心率数据,并实时上传至服务器中进行备份。体育老师可以随时查看学生运动和心率等方面的数据,根据实际情况及时调整运动强度,以达到课程目标。
(1)、为了增强该信息系统的安全性,下列操作不正确的是( )A、用户进入信息系统时,系统对用户身份进行鉴别 B、经常对系统和重要的数据进行备份,还可以将重要的数据存放在云盘上 C、为服务器和客户端都安装防病毒软件 D、在内部网络和外部网络之间构造防火墙,防止非法分子入侵(2)、有关搭建该系统所采用的开发模式特点描述中,不正确的是( )A、应用程序的升级和维护都可以在服务器端,降低了成本和工作量 B、对服务器的负荷较重,对网络的依赖性较高 C、B/S 架构是对 C/S 架构改进后产生对一种软件系统体系结构 D、该系统会将任务分配到客户端和服务器端,应用程序的升级和维护较困难(3)、下列关于上面“学生运动实时监测系统”的说法中不正确的是( )A、组成该系统的硬件部分包含PC客户端、移动客户端、Web服务器、智能终端等 B、搭建该系统时,与“智能终端”相连的传感器无需安装驱动程序 C、根据该系统的结构图判断,①和②处的设备依次为交换机和路由器 D、若该系统使用数据库存储数据,则服务器端需要安装数据库管理系统5. 某算法流程图如图所示。若输入x的值为15,则输出cnt的值是( )A、2 B、3 C、4 D、56. 表达式树是包含表达式的数据结构,表达式树对于一些高性能的场景下有较大实用性。如图所示,一个数学表达式可以用一棵表达式树来表示。下列关于该表达式树的描述中不正确的是( )A、表达式树的根节点左右子树的深度不会超过1 B、对该表达式树进行后序遍历得到的后序表达式,实现了无括号处理和优先级处理 C、该表达式树对应的表达式为(6-3)/2+5*(7+2)/8 D、该表达式树中的内部节点比分支节点少一个7. 已知队列元素的的个数为5,则队首指针head和队尾指针tail的值不可能是( )A、head=1,tail=6 B、head=2,tail=6 C、head=5,tail=0 D、head=3,tail=28. 有如下Python程序段:#程序段1
def fac (n):
s = 1
for i in range(1, n+1):
s =s*i
return s
print(fac(5))
#程序段2
def fac (n):
if n == 1:
return 1
else:
return n *fac (n - 1) #①
print(fac(5))
下列关于两个程序段的说法,正确的是( )
A、程序1和程序2都使用了递归算法 B、若问题规模为n,程序1和程序2的时间复杂度不同 C、若程序1中问题规模为n,则n的值就是其循环执行的次数 D、若程序2中自定义函数内的代码只保留①处语句,也能获取到目标值9. 有如下 python 程序段:a=[18,2,-1,-7,16,-2,12,8]
k1,k2=1,1
for i in range(len(a)):
if a[i]>a[k1]:
k2=k1;k1=i
elif a[i]>a[k2]:
k2=i
该程序段运行后,变量k1,k2的值分别为( )
A、2,5 B、4,0 C、5,2 D、0,410. 某二分查找算法的程序段如下:key=int(input('待查数据为:'))
i=0;j=10;n=0
while i<=j:
m=(i+j+1)//2
if a[m]==key:
break
elif a[m]>key:
j=m-1;n=n-1
else:
i=m+1;n=n+1
执行该程序段后,下列说法正确的是( )
A、该程序若要实现对分查找,要求数组a按降序排列 B、若n为-2,则查找key值可能等于a[3]的值 C、若n为2,则查找key的值可能小于a[10] D、n的值最小为-4,最大为 4二、非选择题(本大题共3小题,8+9+9,共26分)
-
11. 小袁搭建了一个简易化学实验室温度监测系统,该系统结构示意图如图所示。Web服务器程序采用Flask Web框架开发,使用micro:bit作为智能终端,连接温湿度传感器采集温度数据。传感器采集的数据由智能终端经IOT模块发送到Web服务器,执行器用于实现温湿度的控制。
该系统服务器上的部分代码如下:
import sqlite3
from flask import Flask,render_template, request
DATABASE = 'data/data.db'
app = Flask(__name__)
@app.route("/")
def index():
#代码略
@app.route("/input")
def add_data():
id = int(request.args.get('id'))
tem = float(request.args.get('val'))
db = sqlite3.connect(DATABASE)
cur = db.cursor()
cur.execute("INSERT INTO sensor(sensor,sensorvalue) VALUES(%d,%f)" %(id, ____) )
_________________
cur.close()
db.close()
#代码略
if __name__ == "__main__":
app.run(host="10.8.251.173", port=8080)
请回答下列问题:
(1)、在搭建“简易化学实验室温度”监测系统的前期准备中,下列说法正确的是( )(多选,填字母)A、明确系统“先干什么,后干什么”属于搭建信息系统前期准备中的概要设计 B、可行性分析主要对信息系统的必要性和可行性进行分析 C、确定采用什么终端设备,具体传感器型号等属于详细设计 D、明确用户对所搭建信息系统的目标期待这一过程属于需求分析(2)、①处应填写的代码为 , ②处应填写的代码为。(3)、分析程序可知,该系统中存储温湿度数据数据库名为 , 数据表名为。(4)、服务器采用(选填:POST 或 GET)方式接受温度、湿度的数据。若某时刻传感器的编号为1,温度数值为29,则传输数据时使用的URL是。12. 小明利用“在线社团报名系统”收集了全校学生的社团报名信息,并将报名数据导出到“社团报名.xlsx”中,如图 1 所示。然后编写 Python 程序对报名数据进行处理,生成分别以班级名和社团名为文件名的 Excel 文件,以便分发给相应的社团指导老师和班主任。图 1
图 2
(1)、在对表格进行数据整理时发现,关于“Jacky.Y” 同学的记录可能存在的数据问题是(选填:A .数据缺失 B .数据异常 C .逻辑错误 D .数据格式不一致)。(2)、其中生成每个社团名单文件的过程是:先对报名数据按社团名称进行分类,并对选报同一社团的学生按班级进行升序排序,然后生成各个社团名单文件,如图 2所示。对应的程序代码如下,请在划线处填写合适的代码。import pandas as pd
def read_file(filename):
#读入报名数据的原始文件,并将表中的数据转换成列表,代码略
def save_file(a): #保存名单到相应社团的 Excel 电子表格文件
df = pd.DataFrame(a,columns=[“班级”,“姓名”,“选报社团”])
df.to_excel( +“.xlsx”,index=False)
a = read_file(“社团报名.xlsx”)
n = len(a)
# 按社团名(参照拼音的字母顺序)进行升序排序,代码略
# 统计各社团人数,存在列表 rs 中,rs=[[“滑板社”,36],…],代码略
s = 0
for i in range(len(rs)):
left,right = s, s+num-1
while left < right:
imin = imax = left
for k in range(left+1,right+1):
if a[k][0] < a[imax][0]:
imin = k
elif a[k][0] > a[imax][0]:
imax = k
if imin != left:
a[imin],a[left] = a[left],a[imin]
if imax == left:
if imax != right:
a[imax],a[right] = a[right],a[imax]
left = left + 1; right = right–1
s += num
13. 一列货运列车有n节车厢,每节车厢将停放在不同车站。假定n个车站的编号分别为1~n,列车按照第n站至第1站的顺序停靠,车厢编号与目的站序号相同。为了到每个站时只需卸掉最后一节车厢,必须将任意次序的车厢进行重排,使得各车厢从前往后的编号是1~n。重排车厢的工作在一个转轨站里完成,如图所示,在转轨站中有一个入轨,一个出轨和k(k=3)个缓冲轨H1,H2,H3。开始时n节车厢从入轨处进入转轨站,转轨结束后车厢按编号1~n的次序离开转轨站。编写程序模拟有n(n=9)节车厢的“入轨”和“出轨”过程,(入轨车厢次序满足缓冲轨为3的情况)。车厢可以从入轨的前部移动到一个缓冲轨的顶部或者是出轨处的后部。进入缓冲轨的车厢编号要满足:
①小于要进入的缓冲轨的栈顶元素编号。
②满足条件①里面栈顶元素编号最小的缓冲轨。
③若没有满足条件①的缓冲轨,则进入空的缓冲轨。
(1)、若在入轨处的车厢次序是3,6,9,2,4,7,1,8,5,则2号车厢进入的缓冲轨是__(填:H1或H2或H3)。(2)、实现上述功能的程序如下,请在划线处填入合适的代码。def inputStack(bh,stacks,n): # 将车厢移到缓冲轨处
global minNum, minStack,k
bestStack = -1 # bestStack 记录最小车厢编号所在的缓冲轨编号
bestTop = n + 1 # bestTop 记录缓冲轨中的最小车厢编号
for i in range(k):
if len(stacks[i])>0:
top = stacks[i][-1]
if :
bestTop = top
bestStack = i
else:
if bestStack == -1:
bestStack = i
if bestStack == -1:
return False
stacks[bestStack].append(bh)
print('将 %d 号车厢从入轨处移到缓冲轨道 H%d 处。' % (bh, bestStack+1))
if bh < minNum:
minNum = bh
minStack = bestStack
return True
def output(stacks,n):
# 将缓冲轨中的剩余车厢按顺序依次移到出轨处,代码略
# 主程序开始
list = [3,6,9,2,4,7,1,8,5] #车厢的原始编号存放在列表 list 中
n = len(list)
k = 3
hStacks=[ for i in range(k)]
curBH=1
minStack = -1
print("车厢重排过程如下:")
i=0
while i < n:
if list[i] == curBH:
print("将 %d 号车厢从入轨处直接移到出轨处。" % list[i])
i += 1
continue
while True:
minNum = n + 1
for j in range(k):
if len(hStacks[j]) > 0:
if hStacks[j][-1] < minNum:
minNum = hStacks[j][-1]
minStack=j
if minNum == curBH:
print("将%d号车厢从缓冲轨道H%d移到出轨处。" %(minNum,minStack+1))
hStacks[minStack].pop()
curBH += 1
else:
i += 1; break
while curBH<n+1:
output(hStacks,n); curBH += 1
print("完成车厢重排!")