相关试卷
-
1、小李为某网吧做了一个网络拓扑设计图,如下图所示,为了提高消防安全性,利用Micro:bit开发板设计了一个烟雾报警系统,每隔10秒将信号发送到服务器并存入数据库,如果监测到烟雾值超标则打开报警装置。管理员可以通过浏览器查询所有记录。(1)、在网络拓扑结构中①处的设备为 (单选,填字母:A .路由器 / B .调制解调器 / C .交换机)(2)、为了让智能终端能够通过无线网络传递数据,需要在智能终端中连接 (单选,填字母: A .Wi-Fi / B .IoT / C .LAN )模块(3)、智能终端测量环境中的湿度和烟雾值的部分代码如下:
while True:
s = pin1.read_analog()
errno,resp = Obloq.get("putval?sv="+str(s),10000)
if errno == 200: pin8.write_digital(int(resp))
else: display.show(str(resp))
sleep(10*1000)
根据代码所示,报警装置连接在智能终端的引脚是
(4)、服务器端的部分代码如下,请在划线①处填入合适的代码。app = Flask(__name__)
@app.route('/search ')
def search'():
#从数据库中查询相关记录,并在网页中展示,代码略
@app.route( ① , methods=['GET'])
def putdata():
t=
#将收到的数据存入数据库,并从中查询报警的阈值,存入变量maxs,代码略
if int(t) > maxs:
return 1
else:
return 0
if __name__ == '__main__':
app.run(host='168.34.2.77',port=5000)
(5)、变量t用来接收数据,请为加框处选择合适的代码填入其中( ) (单选,填字母)A、request.args.get('sv') B、request.form.get('sv') C、request.args.get('s') D、request.form.get('s')(6)、根据上述代码,要查询相关记录,对应的URL为 -
2、小明利用Python对“足球世界杯历史进球前20名(图a)”数据进行分析,他先按国家分类,统计出各个国家的球员人数,并把球员人数最多国家的球员,按“场均进球”数进行排序,并用图形显示(图b)。请在划线处填入合适的代码。
图 a
图 b
列表 a 内容
字典 country 内容
import csv
import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams[ 'font.sans-serif ']=[ 'SimHei'] #用来正常显示中文标签
plt.rcParams[ 'axes.unicode_minus ']=False #用来正常显示负号
=open("历史进球 .csv", 'r')
reader=csv.reader(csvfile)
a=list(reader); country={}
for i in range(1,len(a)): #按国家分类
if a[i][1] not in country:
else:
country[a[i][1]].append(i)
max=0 ; country_max=""
for i in country.keys(): #找出前 20 名中人员最多的国家,country.keys()表示字典的键
if :
max=len(country[i])
country_max=i
df=pd.DataFrame(data=[ ],columns=["姓名","进球个数","出场次数"])
for i in country[country_max]:
df=df.append({"姓名":a[i][0],"进球个数":int(a[i][2]),"出场次数":int(a[i][3])},ignore_index=True) =df["进球个数"]/df["出场次数"] #df 最后插入 1 列”场均进球”
df=df.sort_values( ) #按“场均进球”排序
plt. (df["姓名"],df["场均进球"],label="场均进球")
plt.title("前 20 名中人数最多国家球员场均进球情况")
plt.legend()
plt.xlim(0,1.2)
plt.show()
csvfile.close()
-
3、已知链表结构 a [i][0]表示元素,a [i][1]表示下一个元素的下标,head 表示开头元素,在已知有序的链表 a 中插入数值 p 。代码如下,请在划线处依次填上合适代码( )
a=[[0,1],[3,2],[5,3],[6,-1]]
head=0
p=4
tmp=head
while a[tmp][1] !=-1 and :
tmp=a[tmp][1]
a.append([p, ])
a[tmp][1]=len(a)-1
①a[tmp][0]<p;②a[a[tmp][1]][0]<p;③tmp;④a[tmp][1]
A、①③ B、①④ C、②③ D、②④ -
4、有如下 python 程序段:
import random
a=[1,3,3,8,8,10,10,14,16,17]
key=random.randint(0,9)*2
ans=-1; f=0
L=0; R=9
while L<=R:
m=(L+R+1)//2
if a[m]==key:
ans=m
break
if a[m]>key:
R=m-1
f-=1
else:
L=m+1
f+=1
运行该程序段后,关于f和ans的结果,下列说法正确的是( )
A、f可能的最小值为-3 B、f的值可能为-1 C、ans的值可能为1 D、ans的值不可能为3 -
5、有如下 python 程序段:
s= 'ccbbac '
a=[i for i in range(6)]
for i in range(5):
for j in range(5-i) :
if s[a[j]]>s[a[j+1]]:
a[j],a[j+1]=a[j+1],a[j]
print(a)
运行该程序段输出的结果为( )
A、[4, 3, 2, 5, 1, 0] B、[4, 5, 3, 2, 1, 0] C、[4, 2, 3, 0, 1, 5] D、[4, 3, 2, 5, 0, 1] -
6、元素a,b,c,d,e,f依次入栈,若第1个出栈的元素是d,则不可能是第3个出栈的元素是( )A、a B、b C、c D、e
-
7、一幅分辨率为1600*512BMP图像,每一像素的颜色用256级灰度表示,该BMP图像文件以16:1的压缩比压缩为JPEG格式文件,则压缩后文件的存储容量约为( )A、50KB B、1600KB C、400KB D、800KB
-
8、已知某计算式的逆波兰表达式为 ab+c*ab+e/-,则该计算式为:( )A、(a+b)-(c*a+b)/e B、(a+b)*c-(a+b)/e C、(a+b*c+a)/b-e D、(a+b*c)-(a+b/e)
-
9、阅读下列材料,回答问 题
元宇宙是一个平行于现实世界的虚拟世界,人们可以通过VR、AR等技术访问这个虚拟世界。在“万物皆可元宇宙”这一全新的生活体验中,每一种场景都离不开数据的支持,每一种传感器设备以及扩展现实服务都需要对个人信息进行深度地收集及分析,无论乐意与否,人类都不可避免地被裹挟进爆发式增长的海量数据生活中。而一旦用户个人信息出现问题,元宇宙中依赖于用户个人信息存在的一切都会遭受颠覆性的影响,同时用户的个人利益乃至国家安全也都会遭受威胁。
(1)、根据阅读材料,下列说法正确的是( )A、元宇宙这个虚拟世界中的信息是脱离载体而独立存在的 B、元宇宙中涉及大量的大数据应用场景,不可能含有结构化数据 C、元宇宙的每种场景都离不开数据的支持说明信息技术已经发展到以数据为核心的阶段 D、玩家在元宇宙世界可以拥有与现实世界完全不同的虚拟身份,说明信息具有真伪性(2)、关于元宇宙中的信息安全,下列说法正确的是( )A、元宇宙中的用户个人信息属于一般信息 B、元宇宙服务器可以通过用户名+口令的认证技术进行访问控制 C、通过设置防火墙可以阻挡来自元宇宙外部的黑客入侵 D、要想保护用户的个人利益乃至国家安全,需从国家立法、行业自律两个层面着手(3)、某科技公司推出一款用于体验元宇宙的VR眼镜一体机,具有内置处理器,传感器,电池,存储内存和显示器,不需要连接到PC或智能手机即可使用。其参数如下:产品型号
PICO 4
主机重量
<300g
分辨率
4320×2160
运行内存
6G
存储内存
128GB
操作系统
Android 6DoF
视角
105°
手柄系统
红外光学
瞳距调节
无极电动调 节 62-72mm
外链内容
Wi- Fi 无线 USB 有线
下列说法正确的是( )
A、PICO4采用的Android系统是基于Linux的开源操作系统开发的 B、该屏幕每平方英寸上的像素数量为4320×2160 C、游戏手柄和屏幕都是VR眼镜一体机中主要的输出设备 D、断电后,PICO4理论上最多可以存储134G的软件与数据 -
10、阅读如下材料,回答第1至4题
随着安全意识的提高,很多家庭安装了智能监控系统,除了普通的视频监控功能,智能监控还增加了很多新功能,如移动侦测功能,当家里无人,有小偷入室盗窃,系统就自动报警。当快递员把物品送上门时,可以通过手机app远程观看快递员送货的画面并和快递员语音沟通。
(1)、下列关于信息系统的说法,正确的是( )A、智能监控系统运行过程包含了数据的输入、数据的加工和信息产生的过程。 B、摄像头、录像机、显示器、路由器组成了智能监控系统的全部硬件。 C、智能监控系统的软件仅指手机上的接收信息的app客户端 D、监控系统的使用者是该系统的唯一用户(2)、关于该智能监控系统,下列说法不正确的是( )A、图中录像机负责数据处理和网络控制,是智能监控系统的主要资源 B、图中的摄像头和录像机等通过WIFI连接构成了一个局域网 C、若路由器损坏,远程的监控、报警功能不能实现,但本地录像功能不受影响 D、用通过手机APP远程查看监控画面,不需要遵循TCP/IP协议(3)、监控系统实现“移动侦测”功能,最可能用到的传感器类型是( )A、霍尔传感器 B、加速度传感器 C、红外传感器 D、磁场传感器(4)、人工智能的运用,使监控系统更加智能,如移动侦测功能的实现,下列关于人工智能的说法正确的是( )A、监控系统从图像分析出移动的人物,属于数据驱动的人工智能方法 B、通过手机 APP 远程查看监控视频,属于行为主义人工智能方法的应用 C、系统发报警信息到手机 APP,属于符号主义人工智能方法的应用 D、人工智能改善人类生活,人工智能给人类带来的都是有益的影响 -
11、小明编写了一个将用户名通过加密生成密码的程序。用户名由小写字母和数字组成,加密的规则是:将用户名分成4位1组,按照密钥k分别做前移,其中字母在a到z之间循环前移,数字在0到9之间循环前移,密钥k的值为1到4之间的不重复随机整数(密钥k可以循环使用)。例如用户名为“abc3dey”,密钥k=[4,3,2,1],则生成的密码为“wya2zbw”。
名称
含义
random.randint(a,b)
随机产生一个[a,b]范围内的实数
random.choice(seq)
从序列seq中随机挑选一个元素
random.shuffle(seq)
将序列seq的所有元素随机排序
(1)、根据题意,若输入用户名为“jqd25k”,密钥k=[1,4,2,3],则生成的密码是。(2)、以下程序实现输入用户名,输出生成的密码,请在划线处填入合适的代码。import random
k=[1,2,3,4]
random.shuffle(k)
s=list(input("请输入用户名:"))
for i in range(len(s)):
if "0"<=s[i]<="9":
s[i]=str((int(s[i])-k[t])%10)
elif "a"<=s[i]<="z":
s[i]=chr()
password="".join(s) # join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串
print("你的密码为:",password)
(3)、为了提高密码的安全等级,小明对上述代码进行了改进,若生成的密码只有一种类型的字符组成,则从特殊字符“!@#$%&”中随机选取一个字符作为密码的最后一位,例如生成的密码为“abcd”,则最终的密码可能为“abcd@”。python程序如下,请在划线处填入合适的代码。code="!@#$%&"
#isalpha():用于判断字符串是否全部为字母
#isdigit():用于判断字符串是否全部为数字
if password.isalpha( ) or password.isdigit():
password=
print("你的密码为:",password)
-
12、在平面坐标系中,给定一组有序的点。从原点出发,依次用线段连接这些点,构成一条折线。要求编写一个“计算折线长度”的程序,功能如下:依次输入这些点的坐标值(数据都用逗号分隔并以逗号结尾),运行程序计算这条折线的长度。
实现上述功能的代码如下,请回答下列问题。
from math import sqrt
s=input(″输入各个点的坐标,用逗号分开:″)
x1,y1,x2,y2,i,j,tot=0,0,0,0,0,0,0
k=1
for ch in s:
if ch==″,″:
___①__
j=i+1
if___②__:
x2=v
else:
y2=v
d=sqrt((x2-x1)**2+(y2-y1)**2)
tot+=d
x1=x2
y1=y2
k+=1
i+=1
print(″拆线总长度为:″+str(round(tot,2)))
(1)、请在划线处填入合适代码。①②
(2)、运行该程序,输入″5,10,8,12,6,17 ″,程序执行到循环结束时,变量k为。 -
13、有如下Python程序段:
s1="abcdefgh"; s2="0213"; res=""
j=0; m=0
for i in range(len(s1)):
k=m+int(s2[j])
res+=s1[k]
j+=1
if j==4:
m=4
j=0
该程序段运行后,res的值为( )
A、"acbdacbd" B、"acbdegfh" C、"acbdefgh" D、"abcdefgh" -
14、有下列Python程序段:
import random
s=input("请输入字符串:")
x=random.randint(3,6)
n=len(s)
if len(s[0:x])<len(s[x:n]):
r=s[x:n]+s[0:x]
else:
r=s[0:x]+s[x:n]
print(r)
执行该程序段,若输入“helloworld”(不包含双引号),则输出的结果不可能的是( )
A、loworldhel B、oworldhell C、helloworld D、worldhello -
15、有如下Python程序段:
s="Happy2022"
a={0:0,1:0}
for i in s:
m=0
if "0"<=i<="9":
m=1
a[m]+=1
print(a[1])
该程序段运行后,输出的内容是( )
A、9 B、5 C、4 D、2 -
16、已知字典 dict1={1:2, 2:[1,2], 'b':[1,3], 'b':'b1','b1':'b2' },运行dict1['b']的结果是( )A、2 B、b1 C、[1, 3] D、b2
-
17、地图染色问题可以根据四色定理来解决。所谓四色定理,就是指可以用不多于四种的颜色对地图着色,使相邻的行政区域不重色,因此我们可以用四色定理的结论,用回溯算法对一幅给定的地图染色。
算法的基本思想是:从第(1)号行政区域开始染色,每个区域逐次用颜色 1#、2#、3#、4#进行试探,若当前所取的颜色与周围已染色的行政区域不重色,则用栈记下该区域的颜色序号,否则依次用下一颜色进行试探;若出现用 1#到 4#颜色均与相邻区域的颜色重色,则需退栈回溯,修改当前栈顶的颜色序号,再进行试探。直到所有行政区域都已分配合适的颜色。某县行政地图如图所示:
(1)、若邻接矩阵 adjamat=[[0,1,1,1,1],[1,0,1,1,0],[1,1,0,1,1],[1,1,1,0,1],[1,0,1,1,0]],则下列涂色方案中可行的是( )(单选,填字母)A、1->1,2->2,3->3,4->4,5->2 B、1->1,2->2,3->3,4->1,5->2 C、1->1,2->2,3->3,4->2,5->4(2)、实现上述功能的Python程序如下,请在划线处填入合适的代码。def mapcolor(adjamat): #自定义填色函数部分
signcolor=[0]*N
color = 1
signcolor[0] = 1
area = 1
while area < N:
while color <= 4:
if area >= N:
break
k = 0
# 以下代码判断区域是否重色
while (k < area) and (signcolor[k] * adjamat[area][k] != color):
k += 1
if (k < area):
color += 1
else:
#给该区域上色
area += 1
color = 1
if color > 4: # 没有找到合适的颜色,需要进行回溯
color = signcolor[area] + 1
return signcolor
#主程序部分
city = {1: '海游街道', 2: '海润街道', 3: '沙柳街道', 4: '亭旁镇', 5: '珠岙镇', 6: '横渡镇', 7: '蛇蟠乡', 8: '健跳镇', 9: '花桥镇', 10: '浦坝港镇'}
N =
colordict = {1: '红色', 2: '橙色', 3: '黄色', 4: '青色'}
adjamat = [[0 , 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0]
[1 , 0 , 1 , 1 , 0 , 1 , 0 , 1 , 0 , 0]
[1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0]
[1 , 1 , 0 , 0 , 1 , 1 , 0 , 0 , 0 , 0]
[1 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0]
[0 , 1 , 0 , 1 , 0 , 0 , 0 , 0 , 1 , 1]
[0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0]
[0 , 1 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0]
[0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 1]
[0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 1 , 0]]
signcolor1 = mapcolor(adjamat)
print(signcolor1)
# zip 函数可以将多个序列,如列表、元组、字典、集合压缩成一个对象。
for key1,key2 in zip(city,signcolor1): #将相对应的区域与地图颜色输出
print(city[key1] + ":" + colordict[key2])
-
18、小明打算搭建一个教室温度报警控制系统,使用Microbit开发板自带的温度传感器获取的温度数据经IOT模块发送到服务器。系统结构如图所示。(1)、要搭建“教室温度报警控制系统”需要做一些前期准备,以下都是前期准备要完成的步骤:
①需求分析②详细设计③概要设计④开发模式选择⑤可行性分析
其正确的顺序是(填序号)。
(2)、根据信息系统的功能要求,图中①处的设备名称是(单选,填字母:A .交换机/B .温度传感器/C .智能终端)(3)、服务器端程序采用 Flask Web 框架编写, 网站的功能页面规划如下表所示:实现上述系统的服务器端程序部分代码如下:
import sqlite3
import datetime
from flask import Flask,render_template, request
DATABASE = 'data.db'
app = Flask(__name__)
@app.route("/")
#视图函数代码略
@app.route(" ⑴ ",methods=[' ⑵ ']) #提交数据功能页面的路由
def input_data():
value = float(request.args.get('temp'))
nowtime = datetime.datetime.now()
nowtime = nowtime.strftime('%Y-%m-%d %H:%M:%S')
db = sqlite3.connect(DATABASE)
cur = db.cursor()
cur.execute("INSERT INTO tempdata(value,updatetime)
VALUES(%f,'%s')" %(value,nowtime))
db.commit()
cur.close()
db.close()
if 16< value < 25:
return "当前温度适宜"
elif value <= 16:
return '当前温度较低'
elif value >= 25:
return '当前温度较高'
if __name__ == "__main__":
app.run(host="60.91.134.21", port=8080,debug=True)
①由以上代码可知访问主页的地址是。
②阅读代码可知提交的数据保存在文件中。
③要实现表中的功能,⑴处路由为 , ⑵处的请求方式为(填:GET 或 POST)
-
19、某校高二年级2022年12月的物理学考模拟考试成绩如图a所示,等级赋分标准如图b所示。
编写Python程序,统计各班的等第人数并进行可视化。
(1)、主程序。读取 xls 数据文件,简化班级名称,并按赋分标准填入等第数据(如图c)。请在程序划线处填入合适的代码。import pandas as pd
import matplotlib as plt
df=pd.read_excel("xkmn.xls")
df.insert(5,"等第","") #在数据表最后位置插入一列
df.drop(["准考证号","自定义考号"],axis=1,inplace=True) #删除数据表前二列数据
def dengdi(fs): #根据等第赋分标准获取相应等第
if fs>=76:d="A"
elif fs>=56:d="B"
elif fs>=41:d="C"
elif fs>=22:d="D"
else: d="E"
return d
for i in df.index:
if df.得分[i]=="未扫描":
#删除缺考考生数据
else:
df.班级[i]=df.班级[i][-2:]
df.等第[i]= #调用赋分函数填入相应等第数据
#相应成绩查询系统代码略
(2)、程序加框处的语句实现数据整理,删除缺考的考生,以下选项中可以实现的有( )(多选)。A、df=df.drop(i) B、df.drop(i,inplace=True) C、del df[i] D、df.pop(i)(3)、根据结定班级,分析该班的等第数据并可视化,可视化结果如图d所示。请在程序划线处填入合适的代码。bj=input("请输入班级号(1~6):")+ "班"
df1=df[df.班级==bj]
print(df1)
dd={"A":"A","B":"B","C":"C","D":"D","E":"E"}
for i in dd:
#统计各等第相应的人数
dd[i]=list(df1.等第).count(i)
dd=list(dd.values())
#获取字典中各等级的值并转换为列表
df2=pd.DataFrame(dd,columns=["人数"], )
plt.title(f"高二{bj}学考等第分布情况图")
plt.xlabel("等级")
plt.ylabel("人数")
plt.bar()
plt.show( )
-
20、用二分查找的方法求不等式 2x+3x-4<=n(n>=0)的最大正整数解,编写的程序如下:
n=int(input("请输入 n:"))
L,R=1,n+1
while L<R:
x=(L+R+1)//2
if 2**x+3*x-4<=n:
①
else:
②
print(f"方程 2^x+3*x-4<={n}的最大正整数解为:",R)
要使程序实现上述功能,则缺失的代码是( )
A、①L=x+1 ②R=x-1 B、①L=x②R=x-1 C、①R=x-1 ②L=x+1