浙江省绍兴市柯桥镇2023年5月信息技术二模试卷
试卷更新日期:2023-05-30 类型:高考模拟
一、选择题(本大题共12小题,每小题2分,共24分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
-
1. 阅读下列材料,回答问题。
ChatGPT开发团队收集了海量的优质文档作为语料库,并对语料属性进行标注,使用神经网络算法进行训练,使其能像人类一样聊天、编写文案、编程等。ChatGPT还引入了强化学习,实现了在与人类互动时,能根据用户反馈进行迭代优化。
(1)、下列关于ChatGPT中语料库的说法,正确的是( )A、开发团队收集的海量优质文档是一种动态数据 B、ChatGPT的语料库是大数据,价值密度高 C、如果语料库中有个别知识点错误,会影响系统推理的结果 D、ChatGPT通过海量语料库的学习才能具备聊天、编写文案等能力(2)、下列关于ChatGPT人工智能技术的说法,正确的是( )A、ChatGPT的智能应用不会带来社会担忧 B、ChatGPT用到了联结主义和行为主义的人工智能方法 C、网络收集的文字材料可直接“喂”给ChatGPT进行训练学习 D、ChatGPT在与人类互动时,从反馈中开展深度学习2. 阅读下列材料,回答问题。某校园大门出入口“智能门禁系统”采用人脸识别或刷校园卡的方式识别出入人员。本校人员识别通过,自动开启闸机,并将学生出入学校的相关信息发送给家长:外来人员需通过闸机伴侣拍照登记后方可开启闸机,相关数据上传到服务器;系统管理员具备设置门禁参数、查看出入记录、管理数据库等特殊权限。该系统的主要组成部分如图所示:
(1)、下列关于该信息系统组成的说法,不正确的是( )A、服务器属于该系统的硬件设备 B、Unix属于该系统的系统软件 C、系统管理员设置门禁参数使用到了系统的数据输入和存储功能 D、本校人员信息属于该系统的用户(2)、下列关于该信息系统安全性的说法,不正确的是( )A、对数据进行加密,以提高数据的保密性 B、开启服务器防火墙后,仍需安装杀毒软件 C、访客登记的手机号码信息属于个人一般信息 D、不同的授权用户授予不同的操作权限(3)、下列关于该信息系统中数据的说法,不正确的是( )A、采集的数据被临时存储在 ROM 直到被处理 B、该系统中输入的数据都已从模拟信号转为数字信号 C、系统管理员查看出入记录,属于信息系统的数据查询功能 D、校园卡使用无源电子标签,具有唯一的电子编码3. 下列关于网络技术的说法,正确的是( )A、网络具有数据通信、资源共享和并行处理三个主要功能 B、5G 移动通信技术是指数据的传输速率达到 5G C、传输控制协议是负责将信息从一个地方传送到另一个地方 D、传输介质是传输数据信号的物理通道4. 某算法的流程图如图所示。执行这部分流程,输入41,则输出的值是( )
A、0 B、19 C、22 D、325. 已知一棵二叉树的前序遍历序列为ABCDEFG,则该二叉树中序遍历序列可能为( )A、CABDEFG B、ABCDEFG C、DACEFBG D、ADBCFEG6. 有一个环形队列,长度为10,头指针为head,尾指针为tail,则下列选项中队列元素个数与其它三项不同的是( )A、head=1,tail=6 B、head=3,tail=8 C、head=6,tail=0 D、head=9,tail=47. 有如下Python程序段:import random
d=[28, 37, 39, 42, 45, 50, 70, 80]
i, j, n=0, len(d)-1, 0
key=random.randint(20, 35)*2
while i<=j:
m=(i+j)//2; n+=1
if key==d[m]:
break
elif key<d[m]:
j=m-1
else:
i=m+1
print(i, j, m, n)
执行该程序段后,下列说法正确的是( )
A、n的值可能为4 B、若n值为2,则必定满足i<=j C、m的值可能为1 D、若n值为3,则key的值可能是458. 有如下Python程序段:def f(s):
if len(s)==1:
return True
elif len(s)==2:
return s[0]==s[l]
elif s[0]==s[-l]:
return f(s[l:-l])
else:
return False
print(f("1234321"))
执行该程序段后,下列说法正确的是( )
A、输出结果为 False B、函数 f 运用了迭代算法 C、函数 f 的调用次数为 4 D、函数 f 的时间夏杂度为 O(n2)9. 有如下Python程序段:lst=[3, 5, 6, 7, 10, 11, 14, 16]
i=len(lst)-1
stk=[0]*len(lst)
top=-1
while i>=0:
if lst[i]%2==0:
top+=1
stk[top]=lst[i]
else:
lst[i+top+1]=lst[i]
i-=1
i=0
while top>-1:
lst[i]=stk[top]
top-=1
i+=l
执行该程序段后,lst[3]的值是( )
A、3 B、6 C、14 D、16二、非选择题(本大题共3小题,8+9+9,共26分)
-
10. 小明为他们教室搭建了环境温湿度监测系统,该系统结构示意图如图所示。该系统可实时监测教室温湿度数据,并持续运行一周,数据由智能终端经loT模块发送至Web服务器,若环境温湿度监测值超过设定阀值区间,则控制执行器调节温湿度,用户可以使用浏览器查看实时数据。本系统服务器端程序采用FlaskWeb框架编写,数据库管理系统选择sqlite3,服务器的IP地址是192.168.0.1,端口是5000。网站功能页面规划如下:

序号
子页面路径
功能说明
1
/
实时显示温湿度数据
2
/input
提交温湿度数据
3
lcount
显示温湿度统计数据
4
/search
查询显示某一天的历史数据
(1)、上述页面规划属于搭建信息系统的前期准备的哪个阶段?( )。A、需求分析 B、可行性分析 C、概要设计 D、详细设计(2)、根据该系统的功能要求,图中①②处的设备分别为、。(3)、教空里的学生最舒服的温度是范围是 tmin~tmax,现要实现温度 t 正常、非正常(偏高或偏低)时,将对应的状态 sta 的值设为 0 和 1。下列Python程序段中符合要求的有( )(多选,填字母)。A、if t<tmin:sta=1
if t>tmax:
sta=1
sta=0
B、sta=0if t<tmin:
sta=1
elif t>tmax:
sta=1
C、if t<tmin or t>tmax:sta=1
else:
sta=0
D、sta=1if t<=tmax:
sta=0
elif t>=tmin:
sta=0
(4)、小明在某次系统调试时,输入URL后浏览器出现“404”错误信息(服务器反锁404信息表示服务器端无法找到对应的网页),简要说明系统中可能造成上述问题的原因:。11. 一球迷收集了近3个赛季的CBA比赛数据,每个赛季的数据分别保存在独立文件中,如图a所示,文件中数据记录格式如图b所示,以球员“布莱克尼”的“二分”数据“7.9-16.3”为例,7.9表示二分球平均命中数量,16.3表示二分球平均投篮次数。
该球迷想根据历史赛季数据预测各球队下个赛季的首发阵容,编写了如下Python程序,请回答下列问题:
import pandas as pd
def readData(file):
df=pd.read_excel(file) #读取文件 file 中的数据
cols={"二分":2,"三分":3,"罚球":1}
for i in range(len(df)): #计算每个队员的得分
for col in cols:
p=df[col][i].find("-")#在字符串中找到“-”的位置
n=float(df[col][i][:p])
return df
(1)、定义readData函数,功能为:读取某赛季的excel文件,返回每个队员的得分(得分=二分球命中数量*2+三分球命中数量*3+罚球命中数量。函数代码如下,划线处应填入的代码为 (单选,填字母)。A、df["得分"][i]+=n*cols[col] B、df["得分"][i]=n*cols[co1] C、df["得分"]+=n*cols[col] D、df["得分"]=df.二分*2+df.三分*3+df.罚球(2)、定义select函数,功能为:筛选各球队得分最高的5名球员作为首发阵容,并把球员名字及得分存入列表members后返回。其中n号球队各球员名字存入members[2*n]中,得分存入members[2*n+1]中,请在划线处填写合适的代码。def select(teams) :
#teams 是字典变量,如:{"浙江":0,"上海":1},字典的值代表球队编号
seasons=["20-21","21-22","22-23"]
members=[0]*len(teams)*2
df=readData(seasons[0]+".x1sx")
for season in :
file=season+".xlsx"
df1=readData(file)
df=pd.concat([df, df1])#合并两个 DataFrame 对象数据
for team in teams:
df1=
df1=df1.groupby("球员" , as_index=False).mean()#计算各球员平均得分
df1=df1.sort_values("得分",ascending=False).head(5)#按得分降序排序并选取前5名
members[2*n]=df1["球员"].values
members[2*n+1]=df1["得分"].values
return members
(3)、定义showChart函数,功能为:查询某球队的首发阵容,绘制柱形图,图表如图c所示,程序如下,请在划线处填写合适的代码。import matplotlib.pyplot as plt
def showChart(tean, menbers) :
n=teams[team]
plt.bar(,)
plt.title(team+"队首发阵容")
plt.show()
⑷主程序代码如下。
teams={"浙江":0,"上海":1,"山东":2,"广东":3,"北京":4}
members=select (teams)
while True:
team=input("输入球队:")
if team=="" : break
showChart(team, members)
12. 操作系统在管理磁盘时,会将磁盘分为一个个“盘块”。在为文件分配空间时,可以将文件装到离散的盘块中。读取一个文件时,首先在目录结构中找到文件项。从文件项中可以获取文件名、存储时间、该文件在存储块中的起始地址等基本信息,但不包含文件具体内容,然后在磁盘文件分配表中找到对应的文件。磁盘文件分配表如图 1 所示。文件结束块用-1 表示,空闲盘块用 0xff 表示。
(1)、根据文件的起始地址,能方便地找到文件的其它盘块。如图 1中,文件abc在磁盘中的盘块号依次是(注:各盘块号用→分隔)。(2)、如果目录结构损坏,就不能获取文件的基本信息和起始地址。但我们可以借助文件分配表来恢复部分数据(不考虑恢复文件名、存储时间等信息)。函数 regain 的功能是模拟数据恢复,找到各个文件的起始地址和大小(盘块数量),并返回以[[起始地址, 文件大小], …]形式的列表 lst。变量 allot 存储文件分配表信息。
def regain(allot):
lst=[]
visited=[] #记录 allot 的访问情况
for i in range(len(allot)):
if allot[i] != 0xff and i not in visited: #盘块 i 需要处理
fsize=0
p=i
while p!=-1 and p not in visited:
visited.append(p)
fsize+=l
p=allot[p]
if p==-1:
lst.append([i,fsize])
else:
for j in range(len(Ist)):
if lst[j][0]==p:
lst[j][0]=i
lst[j][1]=lst[j][1]+fsize
return lst
若allot为[3,7,13,9,0xff,0xff,0xff,8,-l,-l,0xff,l,0,1l,0xff,0xff],调用regain函数,
①则语句 lst[j][1]=lst[j][1]+fsize 一共会被执行次。
②如果把 while p!=-1 and p not in visited 改写为 while p!=-1,对程序的影响是(多选,填字母)。
A.会增加 while 的循环体执行次数
B.返回的 lst 中的节点数量保持不变
C.while 循环不能正常结束
D.返回的 lst 中,文件的起始地址部分不正确
(3)、在创建文件时,若新文件需要占据 5 个盘块大小,只需要从头到尾找到空闲盘块,并依次链接,并把首地址存放到文件项中。为了有效管理空闲块,我们可以将所有空闲盘区(每个空闲盘区可以包括若干个空闲盘块)构建到一条空闲链 freelst 中。freelst 每个节点存储本空闲盘区的盘块号、长度和指向下个盘块的指针,创建时把新节点链接到 freelst 尾部。
如图 2所示,共有3个空闲盘区,盘块号依次为 4、5、6、10、14、15请在划线处填上合适的代码。
def mergefree(allot): #mergefree 的功能是从头到尾扫描文件分配表,创建空白盘区链
freeh=-1:freelst=[]
n=len(allot)
i=0
while i<n:
if allot[i]==0xff:
j=i+1
while
j+1
freelst.append([i,j-i,-1])
if freeh==-1:
freeh=cur=len(freelst)-1
else:
freelst[cur][2]=len(freelst)-1
i=j+l
else:
i+=l
return freeh,freelst
#读取文件分配表信息存储到 a11ot 中,代码略
head,freelst=mergefree(allot)
p=head
whi1e p!=-1: #打印出所有空闲盘块号
for i in range(freelst[p][1]):
print(,end=',')
p=freelst[p][2]