浙江省绍兴市柯桥镇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]