浙江强基联盟2022-2023学年高二下学期信息技术5月试卷
试卷更新日期:2023-07-17 类型:月考试卷
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
-
1. 阅读下面材料,回答问题
ChatGPT 是基于数据训练生成的大型语言模型人工智能,并且基于强化学习进行了完善,在代码 编写、文章概括、上下文关联等方面表现出惊人的能力。其训练数据主要是来自于互联网的文本数据, 并由数百个高性能服务器进行分布式计算,训练成本近千万美元。
(1)、结合材料,下列关于数据和大数据的说法正确的是( )A、互联网上的文本属于结构化数据 B、分布式处理的目的之一是解决算力问题 C、大数据的价值密度低,导致大数据技术价值低 D、图像和视频数据无法作为 ChatGPT 的训练数据(2)、关于 ChatGPT 的说法正确的是( )A、ChatGPT具有人的思维和意识 B、人工智能将替代所有人的工作 C、ChatGPT的原理包含了联结主义人工智能 D、若训练数据不再增加,则ChatGPT的智能将无法继续提高2. 具有网络连接功能的电器必须具备的要素有( )①有线或者无线网络硬件 ②网络协议 ③文件共享
A、①② B、①③ C、②③ D、①②③3. 数据在传输过程中容易受到干扰导致接收的数据不完整,针对这一问题的有效手段是( )A、数据备份 B、异地容灾 C、CRC 校验码 D、保护存储介质4. 一些学校的图书馆或宿舍有RFID门禁系统,学生经过门禁机时可以刷卡进入,由系统记录信息,该信息系统不涉及的硬件是( )A、数据库服务器 B、光敏传感器 C、电子标签 D、RFID 读写器5. 小王每次用浏览器访问网页时,速度都很慢,以下情况不会导致该现象的是( )A、网速较慢,导致网页传输效率低 B、系统中存在安全漏洞,导致系统运行响应慢 C、感染计算机病毒,导致系统运行效率低下 D、计算机硬盘性能较弱,导致数据读写慢6. 某算法的部分流程图如图所示。执行这部分流程后,输出s的值为( )A、5 B、-5 C、1 D、- 17. 下列Python表达式结果最小的是( )A、2**3//3+8%4*3 B、5**2%3+11%2**2 C、1311//100%10 D、int("1"+"1")//38. 下列关于数据结构的说法不正确的是( )A、数据结构是指数据的组织形式 B、二维数组属于线性数据结构 C、链表是一种优于数组的数据结构 D、队列是限定仅在一端进行插入,在另-端进行删除的线性数据结构9. 现有栈S和队列Q,初始状态均为空,现将数据元素a1,a2,a3,a4,a5,a6依次进入队列Q,再将出队的元素依次进入栈S,若出栈的顺序为a2,a4,a3,a6,a5,a1,则栈S的容量至少应该为( )A、2 B、3 C、4 D、510. 在整数序列1到10(含1和10)中找出连续的数字,使其相加后的结果为20,Python程序如下:for i in range(1, 10):
sum = 0; j = i
while ① and j <= 10:
sum += j
j += 1
if sum == 20:
print("从", ② , "到", ③ )
该程序的输出结果是“从 2 到 6”,则划线处的代码为( )
A、①sum <= 20 ②i+1 ③j- 1 B、①sum < 20 ②i ③j C、①sum <= 20 ②i+1 ③j D、①sum < 20 ②i ③j- 111. 编写Python程序,功能是提取字符串中二维列表结构的数据,例如字符串 s="[[11,2],[2,31,2],[1]]", 经过处理转化成列表[[11,2],[2,31,2],[1]]并输出,程序如下:s = "[[11,2],[2,31,2],[1]]"
res = []; num = 0
for i in s[1:- 1]:
if i=="[":
tmp = []; flag = True
elif i =="]":
flag = False
tmp.append(num); res.append(tmp) #①
elif i==",":
if :tmp.append(num)
num = 0
else:
num = num*10+int(i)
print(res)
关于上述代码,下列说法正确的是( )
A、加框处代码可以替换为 len(tmp)>0 B、将①处的两句代码对换,程序不受影响 C、若字符串 s 为"[[]]",则程序的输出不正确 D、若字符串 s 中存在空格,则程序运行依然正确二、非选择题(本大题共3小题,其中第13小题8分,第14小题9分,第15小题9分,共26分)
-
12. 模拟搭建“室内烟雾实时监控系统”,该系统结构示意图如第13题图所示。智能终端接收烟雾传感器采集的数据,IoT模块传送数据到Web服务器并保存到数据库。Web服务器将数据处理的结果经IoT模块传给智能终端,由智能终端启动继电器实现对水泵的控制,并且用户可以通过浏览器访问网页,查看实时数据。(1)、在设计系统的前期准备中,需要确定所需的软硬件配置,这一过程属于 (单选,填字 母:A .需求分析 /B .概要设计 /C .详细设计)(2)、“室内烟雾实时监控系统”的开发模式是 (单选,填字母:A .B/S模式 /B .C/S模式)(3)、烟雾传感器每隔1秒采集一次数据,在数据处理的代码中,有函数check(a,b,c)用于检测最近3 次烟雾浓度值a、b、c,若至少有两次超过100,则认为有火情,函数返回True,否则返回False。
下面是check函数的部分代码,请从选项中选择合适的语句完成填空 (单选,填字母)。
def check(a,b,c):
x = a>100; y = b>100; z = c>100
if :
return True
return False
A、(x and y and z) or (x or y or z) B、x and y or x and z or y and z C、x or y and x or z and y or z D、not x or not y or not z(4)、在服务器端,配置IP和端口号的语句为server=Server(host="192.168.1.1",port=80,threaded=True),设置路由函数的语句为@app.route("/warn"),则用户访问的URL为 http://。(5)、小明用高浓度的烟雾测试系统,通过客户端查看到烟雾浓度数据已连续超过阈值,但是水泵 没有运行,若服务器和终端的代码均正确,则可能的原因是。13. 小吴收集了2020年之前历届世界杯数据并进行汇总,制作了“历年世界杯各国数据.xlsx文件,具体内容结构如图a(部分数据)所示。图 a
(1)、从图a中可看到土耳其的比赛场数为“20”,与胜、平、负场数之和不相等,该问题属于 。A、数据缺失 B、数据重复 C、逻辑错误 D、格式不一致(2)、现要找出非洲总进球数前 3 名的国家(不考虑并列情况),核心代码如下:df = pd.read_excel("历年世界杯各国数据.xlsx")
print(df)
则方框处可选代码是 (按数据处理先后顺序填序号)。
①df = df.groupby("所属大洲")
②df = df[:3]
③df = df.sort_values("进球数", ascending=False)
④df = df[df["所属大洲"]=="非洲"]
⑤df = df["非洲"]
(3)、小吴收集了英格兰在2022年世界杯中的5场比赛的数据并存储在文件“英格兰.xlsx”中,结构如图b所示。现编写程序,将数据处理后合并到“历年世界杯各国数据.xlsx”文件中,核代码如下,请在划线处填写合适的代码。图 b
df1 = pd.read_excel("历年世界杯各国数据.xlsx")
df2 = pd.read_excel("英格兰.xlsx")
for i in range(len(df1)):
if df1.at[i, "球队"]=="英格兰":
break
for line in df2.values:
goal = line[2]; lost = line[3]
if goal>lost:
df1.at[index, "胜"] += 1
elif
goal<lost:
df1.at[index, "负"] += 1
else:
df1.at[index, "平"] += 1
df1.at[index, "进球数"] += goal
df1.at[index, "失球数"] += lost
df1.at[index, "净胜球"] += goal - lost
df1.to_excel("(new)历年世界杯各国数据.xlsx", index=False) #去除索引保存文件
(4)、读入文件“(new)历年世界杯各国数据.xlsx”并制作了如图c所示的柱形图,核心代码如下。若要更换图表类型,则应修改 (单选,填序号) 处的代码图 c
df1 = pd.read_excel("(new)历年世界杯各国数据.xlsx")
df1 = df1.sort_values("进球数",ascending=False) #①
df1 = df1[df1["所属大洲"]=="南美洲"]
df1 = df1[["球队", "进球数"]] #②
df1.plot.bar(x="球队", y="进球数") #③
plt.show() #④
14. 编写一个Python程序对学校所有空教室进行管理,当申请教室时,将分配一个空教室,使用结束后归还教室,若已无空教室则申请失败。现在模拟这一过程。初始有n个空教室,输入请求,每个请求包括请求类型(申请或归还)和请求人。程序输出对于每次请求的处理结果。例,当前有2个空教室,输入输出如图 a
图 a
图b
(1)、以3个空教室为例,对于如图b所示的输入数据,请求失败的人数是 。(2)、请修改程序加框处的错误。(3)、请完成划线处的填空。n = 10 #以初始有 10 个空教室为例
top = n; stack = [i for i in range(n+1)]
head = - 1; node = [[i, - 1, - 1] #定义栈,存储空教室编号
for i in range(n+1)] #定义链表节点,存储已用教室
def apply(name): #申请,从栈中弹出空教室添加至链表,并将请求人作为链表节点的内容
global top, head #声明 top 和 head 为函数外部的全局变量,下同
if top==0: return - 1
node[stack[top]][1] = name
node[stack[top]][2] = head
top -= 1
return head
def back(name): #归还,在链表中找到请求人所在的节点,删除后压入栈中
global top, head
p = head
if node[p][1]==name:
top += 1; stack[top] = head
head = node[head][2]
return stack[top]
while and node[p][2]!=- 1:
p = node[p][2]
if node[p][2]==- 1: return - 1
top += 1; stack[top] = node[p][2]
node[p][2] = node[node[p][2]][2]
return
s = input("请输入请求:")
while s!="- 1":
#下面语句对输入进行分割后存入request
#其中 request[0]表示请求类型(申请或归还),request[1]表示请求人
request = list(map(str, s.split(",")))
if request[0]=="申请":
c = apply(request[1])
if :
print("教室已满, 申请失败!")
else:
print(request[1],"已申请",node[c][0],"号教室")
elif request[0]=="归还":
c = back(request[1])
if c!=- 1: print(request[1],"已归还",node[c][0],"号教室")
s = input("请输入请求:")