1. 小明要搭建教室环境监控系统,其结构示意图如图a 所示。小明采用了智能终端、 IoT 模块、传感器(如 PM2.5传感器)、执行器(如LED 灯)、服务器等硬件,该系统能实时 监测教室空气质量情况,用户可以通过浏览器实时监测当前和历史数据,传感器采集的数据 由智能终端经 IoT 模块发送到Web 服务器后保存到数据库,并对当前空气质量进行判断,根 据空气质量等级智能终端控制显示不同颜色的LED灯,该系统服务器上的部分代码如下:

#导入Flask框架模块及其他模块,代码略

app =Flask _name_ )

@app.route("/input")

def add_data():

    id  =int(request.args.get(id'))

    value =float(request args.get(val'))

    nowtime =datetime.datetime.now()

    nowtime =nowtime.strftime('%Y-%m-%d %H:%M:%S')

    db=sqlite3.connect("data.db")

    cur=db.cursor()

    cur.execute("INSERT INTO sensorlog(id,sensorvalue,updatetime)VALUES(%d,%f,'%s)" %(id,value,nowtime))

    db.commit()

    cur.close()

    db.close()

#服务器其他功能,代码略

if  _name_  =="_main_ ":

    app.run(host="6.56.102.4",port=8080)

请回答下列问题

(1) 在搭建该系统的前期准备中,明确用户对该环境监控系统的目标期待及后期的可扩展性需求这一过程属于 (单选,填字母,A .需求分析 B .可行性分析 C .详细设计)
(2) 在该系统硬件搭建及软件开发过程中,不正确的是         (单选,填字母) A. 智能终端与Web服务器之间的数据传输可以是双向的 B. 本系统 Web 服务器是采用GET方式接受传感器数据的 C. 更改视图函数 add_data()的名称将影响程序功能 D. 若 IoT 模块与智能终端断开连接,数据库中的数据将不再更新
(3) 若某时刻传感器编号为1,采集的PM2.5数值为30,则智能终端在传输数据时使用的URL 是 http:// ,服务器接受该数据后存储的数据库表名称为
(4) 小明将系统中近一年的数据导出,部分数据如图b所示,分析每月平均PM2.5浓度变化情况,线型图如图c所示,部分代码如下:

#导入数据处理相关模块,代码略

df=df[ ]

dfinsert( 0,"月份","")#插入列

for i in df index:

    data=str(dfat[i,"采集时间"])

    dfat[i,”月份"]=data[5:7]

gf=dfgroupby(" 月份",as_index=True).数值.mean()

plt.plot(  , gf.values)

#设置绘图参数,代码略

【考点】
编程处理数据与可视化; 信息系统的开发过程; 搭建信息系统的前期准备;
【答案】

您现在未登录,无法查看试题答案与解析。 登录
综合题 困难
能力提升
换一批
2. 某校在高一年级第一学期期末开展“小书虫”评选活动,评选规则如下:撰写“观后感”10篇及以上,并且“总借阅量”为年级前50(需要考虑“总借阅量”同为第50名的学生要同时取出)的学生获得“小书虫”称号,获得“小书虫”称号最多的班级获得“书香班级”称号。小王打开“高一年级借阅表.xlsx”文件(如图a所示),利用python编程实现统计分析功能。

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签

df=pd.read_excel("高一年级借阅表.xlsx")

(1) 统计每位学生的总借阅量。

for i in df.index:

    for j in range(9,14):

        s=+"月"

        df.at[i,'总借阅量']=df.at[i,'总借阅量']+df.at[i,s]

(2) 授予符合条件的学生“小书虫”称号,需要考虑“总借阅量”同为第50名的学生要同时取出,结果如图b所示。

data={'班级':df.班级, '借阅量':df.总借阅量,'观后感':df.观后感,'荣誉':""}

dftj=pd.DataFrame(data)

df_hz=dftj[dftj["观后感"]>=10]

df_hz=df_hz.sort_values("借阅量",ascending=False)

df_hz=______________________

df_hz['荣誉']='小书虫'

print(df_hz)

在程序中②处填写代码,正确的选项是(   )(单选,填字母)。

A. df_hz.head(50) B. df_hz.tail(50) C. df_hz[df_hz["借阅量"]>=df_hz.values[49][1]] D. df_hz[df_hz["借阅量"]>=df_hz.at[49,"借阅量"]]
(3) 授予符合条件的班级“书香班级”称号

df_g=df_hz.groupby('班级').荣誉.count()

bj="";max=0

for i in range(len(df_g)):

    x=

    if x>max:

        max=x

        bj=df_g.index[i]

print('书香班级为:'+bj+',该班共有小书虫'+str(max)+'人。')

(4) 绘制“书香班级排行榜”

plt.bar(df_g.index, )

plt.title('书香班级排行榜')

plt.show()

(5) 下列语句可实现方框处的代码功能的是(   )(单选,填字母) A. df.总借阅量=df.sum(axis=1) B. df.总借阅量=df.sum()-df.观后感 C. df.总借阅量=df.sum(axis=1)-df.观后感
综合题 普通