• 1、某单位实行每天单次打卡考勤制度,员工可通过手机APP查看指定时间段内个人的到岗天数、缺岗天数、缺岗工作日及迟到总时长。

    (1)若某员工一天内有多条打卡记录,则保留最早的一条。定义de_d(data)函数,实现删除无效记录功能,其Python程序如下,请在划线处填入合适代码。

    def de_d(data):

         i,k=1,0

         while :

              if data[i][1]==data[i-1][1]:

                   k+=1

              else:

                   

              i+=1

         data=data[0: len(data)-k]

         return data

    (2)实现考勤汇总功能的Python程序如下,运行程序后,某员工的考勤汇总如图所示,请在划线处填入合适代码。

    def count day(data):       #统计打卡记录中到岗、缺岗天数及缺岗工作日

         week=["周一“,”周二”,”周三”,”周四”,”周五”]

         i,j=0,0

         

         sum n, sum d=0,0

         while i<= len(data)-1 and j<= len(week)-1:

              if data[i][1]== week[j]:

                   sum n+=1

                   i+=1

              else:

                   day. append(

                   sum d+=1

              j+=1

         if j< len(week):

              day+= week[j:]

              sum d+= len(week)-j

         return sum n, sum d, day

    '''

    获取某员工一周内的打卡记录(由员工编号、工作日、打卡时间三项构成)按时间先后顺序存入列表data中,例如, data=[["A01", "周一", "08:30"],["A01", "周二", "08:40"],["A01", "周四", "09:10"],["A01", "周四", "09:20"],["A01", "周四", "09:21"],["A01", "周五“,”09:12”]],代码略

    '''

    data= de_d(data)

    n,d, day= count day(data)

    #统计一周迟到总时长并输出到岗、缺岗天数和缺岗工作日及迟到总时长,代码略

  • 2、某快递公司接收包裹后,称重并计算包裹快递费,快递费由基础费和附加费两项组成,具体计算方法如图所示,计费重量取包裹本身重量(kg)和体积重量(kg)的较大值,体积重量(kg)=长(cm)*宽(cm)*高(cm)/6000。包裹入库后根据重量调度车辆运输。

    (1)若某个包裹本身重量1kg,长40cm,宽15cm,高20cm,运输距离为1000km。计算该包裹体积重量并与本身重量比较,得到计费重量为2kg,则该包裹的快递费为元。

    (2)若要计算该公司某天所有包裹的快递费总和,应采用的算法控制结构是

    (3)计算单个包裹快递费的Python程序如下,请在划线处填入合适代码。

    def disf(fee, dis): # 计算附加费

         if dis<=500:

              return 0

         elif:

              return fee*0.1

         else:

              return fee*0.2

    #获取包裹的本身重量、长、宽、高、运输距离分别存入变量w、L、B、H、d,代码略

    bf=0

    vw=L*B*H/6000

    maxw= max(w, vw)

    if maxw<=1:

           bf=6

    else:

           bf=6+(maxw-1)*4

    sumf=       #计算快递费

    #快递费sumf保留两位小数并输出,代码略

    (4)运输车辆(最大载重相同)调度规则如下:按入库顺序对包裹装车,每个包裹按调度顺序查找剩余载重足够的车辆进行装载,当已调度车辆的剩余载重都不足时,调度新的车辆。若包裹按“A、B、C、D、E”编号顺序入库,其对应重量分别为40、45、70、50、10,每辆车最大载重为100,按上述规则,第一辆车装载的包裹编号为

    (5)实现车辆调度功能的Python程序如下,请在划线处填入合适代码。

    '''

    依据入库顺序,获取包裹编号和重量存储在列表packs中,如packs=[["KD01",12],["KD02",85],……],代码略

    '''

    max_w=1000       #车辆最大载重

    vehs=[]       #车辆信息

    for pack in packs:

         p_id,w=pack[0],pack[1]

         flag=False

         for veh in vehs:

              cur=

              if cur+w<=max_w:

                   veh[0].append(p_id)

                   veh[1]+=w

                   

                   break

         if not flag:

              n_veh=[[p_id],w]

              vehs.append(n_veh)

    #输出包裹装载情况,代码略

  • 3、某购物平台部分商品支持分期付款,不同的分期方案年利率不同,如表a所示。购买商品后分期付款,每期需还固定金额(本金+利息),每期利息=本金×年利率÷12,例如,本金30000元,按3期还款,其每期利息和还款金额如表b所示。

    期数(月)

    年利率

    3

    9.0%

    6

    9.2%

    12

    9.6%

    24

    9.8%

                表a

    项目

    本金(元)

    30000.00

    期数(月)

    3

    每期利息(元)

    225.00

    每期还款金额(元)

    10225.00

                     表b

    (1)若本金为p,期数为n,每期利息为g,请用p、n、g等符号写出每期还款金额a的计算公式

    (2)算每期还款金额应采用(单选,填字母:A.解析算法/B.枚举算法)。

    (3)存储每期还款金额应采用数据类型,组织不同期数与年利率对应关系合适的数据结构是

  • 4、有如下Python程序段:

    import random

    lst=[0,0,0,0,0,0]

    f=1

    i=0

    while i< len(lst):

         a= random. randint(1,100)

         if f==1 or a%2==0:

              lst[i]=a

              i+=1

              f=1-f

    print(lst)

    执行该程序段之后,变量lst的值不可能是(     )

    A、[11,56,89,22,5,90] B、[97,27,29,64,6,28] C、[80,36,68,16,38,48] D、[12,22,98,86,7,20]
  • 5、有如下Python程序段:

    s= input()

    key=[3,1,2]

    ss=""

    for i in range(len(s)//3):

         s1=s[i*3:(i+1)*3]

         for j in range(3):

              ss+=s1[key[j]-1]

    print(ss)

    若输入的s值为“HelloWorld”, 则输出的结果是(     )

    A、lHeWlolor B、lHeWlolord C、elHoWlrlo D、leHWollro
  • 6、定义peak()函数,程序如下:

    def peak(s):

         max_num, num=0, int(s[0])

         for i in range(1, len(s)):

              if s[i] < s[i-1]:

                 num= num*10+ int(s[i])

                 if num> max num:

                     maxnum= num

              else:

                 num= int(s[i])

         return max num

    执行peak("94732984"), 函数返回值为(     )

    A、94 B、732 C、984 D、998
  • 7、某网络公司服务器机房内安装的环境监测系统,按一定的时间间隔采集温度和湿度存储为日志文件,部分数据如图所示,并根据采集的数据自动控制执行器改善机房环境。某时刻采集温度值为t(℃),现要求当t超过25℃开启风扇一档,档位值f为1;超过30℃开启风扇二档,档位值f为2;否则关闭风扇,档位值f为0,下列Python程序段不符合要求的是(     )

    A:

    f=0

    if t>25:

       f=1

    if t>30:

       f=2

    B:

    if t<=25:

       f=0

    elif t<=30:

    f=1

    else:

    f=2

    C:

    if t<=25:

       f=0

    if t>30:

       f=2

    else:

       f=1

    D:

    if t<=25:

       f=0

    else:

       if t>30:

           f=2

    else:

         f=1

    A、A B、B C、C D、D
  • 8、某网络公司服务器机房内安装的环境监测系统,按一定的时间间隔采集温度和湿度存储为日志文件,部分数据如图所示,并根据采集的数据自动控制执行器改善机房环境。若逻辑变量p1与p2分别表示机房1和机房2的湿度是否处于适宜的范围内,p1、p2值为True表示机房的湿度适宜,若表示两个机房中的湿度只有一个处于适宜范围内,则下列逻辑表达式正确的是(     )

    A、p1 or p2 B、not (p1 and p2) C、p1== False and p2== True D、p1!=p2
  • 9、某网络公司服务器机房内安装的环境监测系统,按一定的时间间隔采集温度和湿度存储为日志文件,部分数据如图所示,并根据采集的数据自动控制执行器改善机房环境。现要统计机房日平均温度,若将某条记录的时间值存入变量date中,则获取日期(例如“2025-01-03”)的表达式是(     )

    A、date[1:11] B、date[1:10] C、date[0:11] D、date[0:10]
  • 10、为统计家庭宠物每日饮水总量,某宠物饮水机会自动记录每次加水或出水后的水位值。例如某一天的水位值a=[1000,800,300,1000,400],统计饮水总量的算法流程图如图所示,则①②处应填入的表达式为(     )

    A、①i < n?   ②sum←sum+s B、①i < n?   ②sum←sum+ abs(s) C、①i < n-1?   ②sum←sum+s D、①i <= n?   ②sum←sum+ abs(s)
  • 11、某农场采用无人机喷洒农药,通过数字指令控制无人机作业,作业过程中实时回传拍摄的画面。若无人机搭载的摄像头以1920﹡1080分辨率,RGB/8位,帧频30fps参数规格拍摄视频,压缩后每秒钟回传的视频容量约为18MB,则压缩比为(     )
    A、2:1 B、10:1 C、30:1 D、40:1
  • 12、某农场采用无人机喷洒农药,通过数字指令控制无人机作业,作业过程中实时回传拍摄的画面。若无人机的飞行路线由多组指令控制,每组指令采用8位二进制编码,前2位表示移动方向,其中00,01,10,11分别代表前进、后退、上升、下降;后6位二进制的值表示移动距离,则某组编码10101000表示的移动指令是(     )
    A、后退20 B、上升20 C、后退40 D、上升40
  • 13、某市智慧交通管理系统利用公交车位置、路口摄像头视频、地铁刷卡记录等数据,实时优化交通管理。该系统的公交车位置数据通过GPS模块采集后上传服务器。乘客可通过手机号码登陆小程序查看各班次公交车实时位置,并使用乘车码支付车费。下列关于大数据特征与思维描述,正确的是(     )
    A、分析交通事故只有少量视频数据发挥价值,体现了大数据价值低 B、系统根据路况信息实时更新导航路线,体现大数据速度快 C、交通大数据为调整交通信号提供依据,需要每个数据都准确无误 D、分析公交车等待时长与当地经济发展之间的相关性,需要了解其中的因果关系
  • 14、某市智慧交通管理系统利用公交车位置、路口摄像头视频、地铁刷卡记录等数据,实时优化交通管理。该系统的公交车位置数据通过GPS模块采集后上传服务器。乘客可通过手机号码登陆小程序查看各班次公交车实时位置,并使用乘车码支付车费。下列关于数据安全和保护的做法,合理的是(     )
    A、公交车位置数据传输过程中,对其进行完整性校验 B、乘客将支付车费的方式设为免密支付 C、乘客信息在系统中以明文的形式存储 D、为了保证乘客流畅访问数据,关闭服务器防火墙
  • 15、某市智慧交通管理系统利用公交车位置、路口摄像头视频、地铁刷卡记录等数据,实时优化交通管理。该系统的公交车位置数据通过GPS模块采集后上传服务器。乘客可通过手机号码登陆小程序查看各班次公交车实时位置,并使用乘车码支付车费。下列关于数据和信息的说法,不正确的是(     )
    A、乘客支付车费使用的乘车码是信息 B、路口摄像头拍摄的视频是非结构化数据 C、实时优化交通管理,体现了信息的可加工处理性 D、不同乘客都可以查看公交车班次信息,体现了信息的共享性
  • 16、某社区共有n个小区,现打算在这n个小区里设置k个快递驿站(0<k<n),为了使驿站的设置尽可能合理,从以下两个方面进行考虑:(a)人口多的小区可能需要更多的快递服务,因此驿站更倾向于设置在人口多的小区;(b)快递驿站尽量靠近其他小区,以减少派送的总距离成本。

    示例:如有A、B、C、D四个小区,人口数分别为10、20、30、40,小区之间的距离用矩阵表示如图a表格所示:

                        图a

    若4个小区设置1个快递驿站,则选择A小区设置驿站的派送成本为:10×0+20×2+30×5+40×7=470;选B小区的成本为:10×2+20×0+30×3+40×5=310同理算出选C和D小区的成本分别为190和230。因此可以把驿站设置在成本最低的C小区。请回答以下问题:

    (1)示例中若A小区的人口是60,则把驿站设置在(填字母)小区的成本最低。

    (2)若示例中4个小区要设置2个快递驿站,则根据成本计算先选出C小区设置快递驿站,然后在剩下的3个小区中再选出成本最低的小区设置驿站(计算成本时,其他小区可就近选择C小区):选A的成本为10×0+20×2+30×0+40×2=120,选B的成本为10×2+20×0+30×0+40×2=100,选D的成本为10×5+20×3+30×0+40×0=110,因此选B,也即四个小区选择C和B设置2个快递驿站。为实现程序功能,设计如下算法:n个小区,编号0至n-1,通过成本计算,在所有小区里挑选出成本最低的小区设置为驿站,然后在剩下的小区里再挑选成本最低的小区设置为驿站,重复这个步骤,直到挑出k个小区。在计算成本的时候,所有小区选择最近的驿站。主程序代码如下,运行界面如图b所示,请补充程序划线处:

                                图b

    n=int(input("小区数:"))

    k=int(input("快递驿站数:"))

    #读取各小区的人口数,存入列表p中,代码略

    #读取小区间的距离数据,存入二维列表dis中,代码略

    f=[1]*n

    print("设置站点位置:",end="")

    for i in range(k):

           found=False

           for j in range(n):

                 if f[j]==1:

                        cos=cost(j,dis,p,f)#自定义函数cost计算派送成本

                        if ① or cos < mincost:

                               mincost=cos

                               minpos=j

                               found=True

           ②

           print(minpos,end="")

    (3)以下自定义函数计算成本,请补充程序划线处:

    def cost(x,dis,p,f):

           s=0

           for i in range(len(dis)):

                 min_i=p[i]*dis[x][i]*f[i]

                 for j in range(len(dis)):

                        if j != i and f[j] == 0:

                               

                               if k < min_i:

                                     min_i=k

                 

           return s

    (4)若方框处代码改为k=p[i]*dis[i][j],是否会对程序有影响(填:是/否)。

  • 17、小明为了解自己家乡的天气情况,收集了该市2024年的气象数据存于data.xlsx文件,部分数据如图a所示,现用pandas打开该数据表,并将数据保存在DataFrame对象df中。请回答下列问题:

                                                                   图a                                                                                  图b

    (1)小明整理图a中的数据,并用pandas读取整理后的数据,保存到df中,以下操作或说法正确的是(多选,填字母)

    A.1月5日的最低气温数据缺失,可以用1月最低气温的平均值填充

    B.有少数数据行“风力”列格式不一致,为了不影响后续的数据处理,直接删除这些数据行

    C.执行df=df.sort_values("最高气温",ascending=False)后,df.values的第一行数据可看到全年最高气温的最大值

    D.执行df[df["天气"]="晴"]可以筛选出全年中晴天的数据行

    (2)绘制1-6月的月均气温(一个月内每天的日均温相加除以该月的总天数)的线形图,如图b所示。部分Python程序如下,请选择合适的代码填入划线处(填字母)。

    import pandas as pd

    import matplotlib.pyplot as plt                           #导入绘图模块

    plt.rcParams["font.sans-serif"]=["SimHei"]             #中文字体显示

    df=pd.read_excel("data.xlsx")

    for i in df.index:

           ①     #从日期中提取月份并存入新建的“月份”列

    df1=②     #按月份分组求月平均气温

    df2=df1.head(6)

    plt.plot(③)

    plt.title("2024年1-6月的月均温变化图")

    plt.show()

    ①②③处可选代码有:

    A.df.at[i,"月份"]=df.at[i,"日期"][6:8]

    B.df.at[i,"月份"]=df.at[i,"日期"][5:7]

    C.df.groupby("月份",as_index=False).日均温.mean()

    D.df.groupby("日均温",as_index=False).月份.mean()

    E.df2.月份,df2.日均温

    F.df2.日均温,df2.月份

    (3)小明的家乡四季分明,小明想通过数据分析2024年春季开始的日期,根据近代学者张宝塑提出的分季标准:以候平均气温(任意连续5天的日均温的平均值)从10℃以下升到10℃及以上时作为春季开始,并以该候中首次达到10℃的日期作为春季起始日。小明家乡1月份确定为冬季,以下代码用于求出该城市2024年春季起始日,代码运行结果如图c所示,请在程序划线处填入合适的代码。

                                     图c

    s=0;f=False

    for i in range(len(df)-4):

           j=0

           while j < 5:

                 t=df.at[①]

                 if t >= 10 and not f:

                        pos=i+j

                        f=True

                 s+=t;j+=1

           if s/5 >= 10:

                 print("春季起始日:"+df.at[pos,"日期"])

                 break

           ②

           f=False

  • 18、某团队开发了一套智能水族箱监控系统,用于实时监测水族箱内水温、光线强度、氧含量及水位等数据。智能终端连接各类传感器,通过Wi-Fi将数据上传至服务器。服务器分析数据后,可通过智能终端控制多个执行器调节水族箱环境。用户可通过浏览器访问服务器,查询各项数据指标以及调整设备参数。请回答下列问题:

    (1)该智能水族箱系统计划新增远程视频监控功能,用户可通过浏览器实时查看水族箱状态。为实现该功能,系统需要优先增加的硬件设备是(单选,填字母:A.服务器内存条/B.摄像头/C.蜂鸣器)。

    (2)下列关于该系统程序设计的说法,正确的是(单选,填字母)

    A.该系统需要编写客户端应用程序

    B.服务器与数据库之间的数据传输是单向的

    C.搭建完成后在服务器上运行程序发现其中错误属于动态测试

    (3)假设某时刻智能终端上传光线强度数据到服务器端的URL是:

    http://192.168.123.100:5000/gxqd?light=25。则服务器端应用实例app中与该URL关联的路由设置语句是@app.route("")

    (4)智能终端上的程序实现如下功能:每隔5秒从传感器采集1次温度,为了减少冗余数据传输,仅当本次采集的数据与最近一次上报数据的变化量超出阈值T时才上报。实现上述功能的部分Python程序如下,请在程序划线处填入合适的代码。

    #导入相关库,并从服务器获取阈值T,代码略

    last=pinl.read_analog()

    while True:

           cur=pinl.read_analog()       #获取温度数据

           if ①:       #判断温度数据是否上报

                 errno,resp=0bloq.get("input?id=1&temp="+str(cur),10000)

                 ②

           #其他处理代码略

           sleep(5*1000)

    (5)服务器端设置水温控制方案:水温低于20℃时,加热棒开启加热,当水温高于24℃时,加热棒关闭加热。系统运行后发现,浏览器能够正常显示水温数据,一开始水温值小于20℃,加热棒开始加热,但当浏览器上显示的水温数据高于24℃时,加热棒仍在持续加热。导致该异常现象的原因可能是(多选,填字母):

    A.温度传感器与智能终端连接异常

    B.加热棒存在故障导致持续加热

    C.温度传感器故障导致采集的温度不准确

    D.服务器端程序中控制加热棒关闭的命令缺失

    E.智能终端与服务器网络连接故障

  • 19、有如下程序段:

    import random

    a=[0]*5

    for i in range(5):

           a[i]=random.randint(-5,5)   #randint(a,b)产生[a,b]区间的随机整数

    max=-25

    for i in range(5):

           s=a[i]

           for j in range(i+1,5):

                 s+=a[j]

           if s > max:

                 max=s

    print(max)

    运行该程序段后,输出结果为2,则列表a可能为(     )

    A、[4,-2,0,1,-1] B、[5,0,1,-5,2] C、[2,-3,-1,5,-2] D、[5,-6,1,-2,2]
  • 20、有如下Python程序段:

    s="RGGBRRGBB"

    r=s[0]

    for i in range(1,len(s)):

           if len(r) == 0 or s[i] != r[-1]:

                 r=r+s[i]

           else:

                 r=r[:len(r)-1]

    print(r)

    执行该程序段后,输出结果是(     )

    A、RBB B、RGB C、GRB D、RBG
1 2 3 4 5 下一页 跳转