相关试卷

  • 1、小天收集了浙江省某年各地市年龄段数据,保存在“T14.xlsx”文件中,如图a所示。为统计分析各地市不同年龄段人口占比,编写Python程序,输出结果如图b所示。

    请回答下列问题:

    (1)、为统计分析各地市不同年龄段人口占本地市人口比例,编写 Python 代码如下,划线处①应填入的代码为(单选,填字母),划线处②应填入的代码为

    A.df.groupby("地市",as_index=False).count()

    B.df.groupby("地市",as_index=False).sum()

    C.df.groupby("地市",as_index=True).mean()

    import pandas as pd

    import matplotlib.pyplot as plt

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

    df1 =   ①         # 计算各地市不同年龄段的人数

    print ("地 市17 岁以下    18-34 岁   35-59 岁   60 岁及以上")

    #“df1.values.tolist()”实现将 df1 转换为二维列表。列表中每个元素包含 5 个数

    #据项,分别对应地市名称和该地市 4 个年龄段人数总计,如['丽水市', 501421, ...]

    df2=df1.values.tolist()

    x,y = [],[]

    for area in df2:

        for c in range(len(area)):

            if c == 0:

                x.append(area[0])

                print(area[0], end=" ?")

            else:

                sm = sum(area[1:])     #sum 函数实现对序列求和

                t=   ②   

                print('%.2f' %(t), end="% ?")     #按设置格式输出

                if c == 4:

                    y.append(t)

    print()

    plt.title("浙江省各地市 60 岁以上人数占本地市总人口比例", fontsize=24)

    plt.bar(x, y)

    #绘制 60 岁及以上人数占本地市总人口比例柱形图

    #设置绘图参数,显示如图 c 所示,代码略。

    (2)、由图c可知,60岁及以上人数占本地市人口比例超过25%的地市有个。
    (3)、小天编写mygroupby函数模拟实现上述分类汇总功能,计算各地市不同年龄段的人数,结果以列表形式返回。函数代码如下,请在划线处填入合适的代码。

    #df1为二维列表,列表中每个元素包含6个数据项,内容如图a所示;函数返回值dfs格式同题(1)二维列表 df2

    def mygroupby(df1):

        dfs=[]     #创建一个空列表 dfs

        for row in df1:

            

            if n>0:

                for j in range(n):

                    if row[0]==dfs[j][0]:

                        break

            if n==0 or row[0] != dfs[j][0]:

                dfs.append([row[0],0,0,0,0])

                j=n

            for k in range(2,len(row)):

               

    return dfs

  • 2、小强搭建家庭灯光、温度监控系统,该系统使用传感器采集光线、温度等数据由智能终端经过IoT模块发送到Web服务器。服务器端程序采用FlaskWeb框架编写,实现监控灯光与空调等功能。系统结构示意图如图a所示。请回答下列问题:

    (1)、完善该系统结构图。若图a中ABC处的设备由以下三部分组成:①Web服务器;②智能终端;③IoT模块,则ABC处的设备依次为(填数字编号)。
    (2)、小强使用智能终端上传采集的温度数值(范围为[0,1023]之间的整数),服务器接收到上传温度数值t后,将其转换为摄氏度d(转换公式为:t÷1024×3000÷10.24,保留2位小数)保存到数据库中数据类型为实型的tem字段中。服务器端部分Python代码如下,请在划线处填入合适的代码。

    #导入各模块代码略

    @app.route("/s")

    def index( ):

        #数据库连接等代码略

        id=request.args.get("id")    #接收智能终端上传的传感器编号

        t=int(request.args.get("t"))    #接收智能终端上传的温度数值

        d=

        s="insert into da(id,tem)

        values ('"+id+"',"+str(d)+ ")"

        cur.execute(s)    #将数据保存到数据库中

        #数据库其它操作代码略

        return "ok"

    if __name__ == "__main__":

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

    (3)、结合上述代码,若上传编号id为1,温度数值t为72时,则能正确提交数据到服务器的URL为       (单选,填字母)。
    A、http://192.168.0.1.8080/index?id=1&t=72 B、http://192.168.0.1/8080:s?id=1&t=72 C、http://192.168.0.1:8080/index?id=1&t=72 D、http://192.168.0.1:8080/s?id=1&t=72
    (4)、为提升该系统Web服务器的性能,从硬件角度着手,除了增加内存容量外,还可以在哪些方面加以改进,请简要说明改进方案
  • 3、有如下Python程序段:

    import random

    q = [0] * 5

    head = tail = 0

    for i in range(5):

        if random.randint(0,1)== 0:

            q[tail] = random.randint(1,9)

            tail += 1

        elif head != tail and q[tail - 1] < q[head]:

            q[tail] = q[head]

            head += 1

            tail += 1

    执行该程序段后,q的值不可能是(   )

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

    import random

    a = [2,3,5,8,10,10,10,17,19,20]

    key = random.randint(1,30)

    # 随机生成[1,30]之间的整数

    i,j = 0,9

    while i <= j:

        m = (i + j) // 2

        if a[m] > key:

            j = m - 1

        else:

            i = m + 1

    print(j)

    执行该程序段,下列说法正确的是(   )

    A、若key的值为10,则输出的值为3 B、若输出的值为8,则key的值一定为19 C、对于任意key值,语句“m=(i+j)//2”最少执行1次 D、对于任意key值,语句“m=(i+j)//2”最多执行3次
  • 5、定义如下递归函数,计算正整数n的每位数字之和,例如n=123,函数返回值为6。

    def f(n):

        x =

        if x == 0:

            return n

        else:

            y =

            return

    上述程序段中方框处可选代码为:

    ①n % 10

    ②n // 10

    ③y + f(x)

    ④y + f(n - 1)

    则(1)(2)(3)处代码依次为(   )

    A、①②③ B、①②④ C、②①③ D、②①④
  • 6、有1个栈,从栈顶到栈底依次为元素a、b、c,并且已知元素d已入栈并出栈,则这四个元素的入栈顺序可能为(   )
    A、a,b,c,d B、b,d,c,a C、c,d,b,a D、d,a,b,c
  • 7、已知一棵二叉树有13个节点,树中度为1的节点数为2,则该树度为2的节点数为(   )
    A、4 B、5 C、6 D、11
  • 8、某算法的部分流程图如图所示,执行这部分流程,若输入x的值依次为1,2,3,4,5,-1,则输出s的值是(   )

    A、3 B、7 C、13 D、15
  • 9、阅读下列材料,回答问题。

    某中学使用“智能门禁系统”,师生进出校园可使用人脸、校园卡或身份证进行识别。该系统使用 AI 摄像头识别人脸,RFID 技术获取校园卡、身份证等电子标签数据,并将采集到的数据存储到 Web 服务器的数据库,家长可使用手机客户端登录该系统,随时随地查看学生进出校园的情况。其中服务器的主要配置为:

    CPU

    内存

    硬盘

    操作系统

    八核 2.3GHz

    16GB

    4TB

    Windows

    (1)、下列关于该信息系统组成与功能描述,正确的是(   )
    A、使用该系统需要网络的支撑 B、该系统最大存储数据量为 16GB C、该“智能门禁系统”属于系统软件 D、Web 服务器中的数据库属于系统的硬件
    (2)、下列操作中会对系统造成安全隐患的是(   )
    A、捡到校园卡及时归还失主 B、为新用户设置同一登录密码 C、为服务器及时更新系统补丁 D、采集的数据经加密后存储到数据库中
    (3)、下列关于该信息系统中的数据说法,不正确的是(   )
    A、家长通过登录系统了解学生进出校园的情况属于系统数据的查询 B、通过 AI 摄像头采集人脸数据属于该系统的数据输入 C、数据只有存储到数据库中才能进行处理 D、该系统关闭后客户端将无法正常查看系统数据
  • 10、下列关于数据处理与应用的说法,正确的是(   )
    A、大数据一般具有数据量大、处理速度慢、数据类型多、价值密度高的特征 B、所有的文本数据处理都依次经过数据分析、特征提取、分词和结果呈现四个步骤 C、数据可视化是将数据以图形图像等形式表示,直观呈现数据中所蕴含的信息 D、在数据处理过程中,数据的质量不会影响数据分析的结果
  • 11、下列关于人工智能的说法,正确的是(   )
    A、电商平台人工客服和机器客服合作解答问题,属于跨领域人工智能应用 B、基于深度学习的人工智能,一般会构造包含若干层的神经网络 C、专家系统是基于数据驱动的人工智能方法 D、人工智能技术推动了人类社会进步,不可能威胁人类安全
  • 12、下列关于数据和信息的说法,正确的是(   )
    A、乘坐火车时不需要提供纸质火车票,说明信息可以不依赖于载体 B、考古发现可以让我们了解过去的文化,说明信息不会随着时间的推移而变化 C、结绳记事中通过“大事大结,小事小结”来记录不同的事件,其中绳结是信息 D、“一百个人心中有一百个哈姆雷特”,说明不同的人对同一信息会建构出不同知识
  • 13、某工厂安排了若干条生产计划,数据存储在Excel文件“task.xlsx”中,数据格式如图a所示,数据以链表形式存储,现要对生产计划进行合理性检查。

    检查结果分为如下三种情况(以完成的任务数m=5为例说明):

    ①安排合理:完成的任务数大于等于m,且执行过程中无重复任务。例如:计划1完成任务的顺序为:任务0→任务6→任务4→任务1→任务5→结束(-1),共安排了5个任务。

    ②任务不足:完成的任务数小于m。例如:计划2完成任务的顺序为:任务6→任务2→任务0→任务1→结束(-1),只安排了4个任务,出错任务为任务1。

    ③任务重复:任务安装中存在重复任务。例如:计划3完成任务的顺序为:任务7→任务3→任务5→任务1→任务0→任务3→结束,其中任务3重复,出错任务为任务 0。

    (1)、根据题意,图a中计划4的检查结果为(单选,填字母:A .安排合理 / B .任务不足 / C .任务重复)。
    (2)、主程序如下,请在划线处填入合适代码。

    import pandas as pd

    m = int(input('请输入需完成的最少任务数:'))

    df = pd.read_excel('task.xlsx')

    name = list(df.columns[2:]) #取任务名称

    plan = list(df.计划号) #取计划号

    task = list(df.values)

    #task 中的保存 df 中的数据,不含标题。格式如图b所示

    for i in range(len(task)):

        head = task[i][1]

       

        stat,k = check_up(link,head)

        if stat == 2:

            print(plan[i],':安排合理,共完成',k,'项任务')

        elif :

            print(plan[i],':任务重复,出错任务为',name[k])

        else:

            print(plan[i],':任务不足,出错任务为',name[k])

    (3)、函数check_up的功能是用于检查一条生产计划是否合理,并返回检查结果,请在划线处填入合适代码。

    def check_up(link,head):

        cnt=1

        p=link[head]

        pre=p

       

        while p!= -1 and p not in finished:

            finished.append(p)

            pre = p

           

            cnt+=1

        if p==-1:

            if cnt<m:

                return 1,pre

            else:

                return 2,cnt

        elif p in finished:

            return 0,pre

  • 14、某同学收集了部分城市2022年4月每天24小时空气质量数据,按日分别保存在CSV文件中,部分文件如图a所示。数据格式如图b所示。请回答下列问题:

    (1)、定义函数avg,功能是读取某天的数据文件,计算该天空气质量指数(AQI)的平均值并返回,代码如下。请在划线①处应填入的合适的代码

    def avg(filename):

        df=pd.read_csv(filename)

        df1=df[df.columns[2:]] #    取类型及其后的所有列

        g=df1.groupby(   ①   ,as_index=False).mean()

        return    ②  

    划线②处应填入的代码为(单选,填字母)。

    A.df[df.类型=='AQI']     B.df1.AQI      C.g.AQI D.g[g.类型=='AQI']

    (2)、统计本月各城市空气质量最长连续优、良的天数(按照环境空气质量标准,空气污染指数AQI≤50为优级,AQI≤100为良好),代码如下,绘制的图表如图c所示。请在划线处填入合适的代码。

    import pandas as pd

    import matplotlib.pyplot as plt

    n=10 #城市个数

    count=[0]*n

    daymax=[0]*n

    for i in range(1,31):

        day=str(i)

        if len(day)<2:

            day='0'+str(i)

        daydata='202204'+day+'.csv'

        dayaqi=avg(daydata)

        city=dayaqi.columns[1:n+1]

        for j in range(n):

            t=city[j]

            if dayaqi.at[0,t] <= 100:

               

            else:

                if count[j]>daymax[j]:

                    daymax[j]=count[j]

                count[j]=0

        for k in range(n):

            if count[k]>daymax[k]:

               

    print(daymax)

    plt.figure(figsize=(12,4))

    x=

    y=daymax

    plt.bar(x,y)

    plt.show()

  • 15、某“环境智能监测系统”的结构如图所示。Web服务器端程序采用FlaskWeb框架开发,利用与智能终端连接的传感器采集环境的温湿度和光线强度数据,并通过IoT模块与Web服务器建立数据通信,根据系统设置的各类数据阈值触发相应的执行器进行相关设备的控制,请回答下列问题:

    (1)、下列有关搭建该信息系统的说法,正确的是(   )(多选,填字母)
    A、温湿度传感器与智能终端连接后,才能进行需求分析和可行性分析 B、在硬件搭建时不需要考虑智能终端与 IoT 模块之间的接口匹配问题 C、智能终端可借助 IoT 模块通过无线网络和服务器进行数据传输 D、传感器是信息系统中的输入设备,通过它可以实现信息系统的数据采集功能
    (2)、该系统智能终端的部分Python程序如下:

    #导入相关模块,代码略

    IP = "192.168.10.1" ; PORT = "5000"     # Web 服务器的 IP 地址和端口

    #设置 IoT 模块连接的 Web 服务器的 IP 地址和端口,代码略

    while True:

        temp, hum = dht11.read(pin0) #获取温度数据 temp,湿度数据 hum

        light = pin1.read_analog() #获取光线强度数据 light

        errno, resp = Obloq.get("  .    " + str(temp) + "&hum=" + str(hum) +

    "&light=" + str(light) ,60000)

    # 其他代码略

    若智能终端上传数据给Web服务器的URL为 http://192.168.10.1:5000 /trans?

    temp=30&hum=300&light=40,则程序划线处的代码应为

    (3)、温度temp的适宜范围为t1~t2(不含t1,t2),若符合此条件,系统状态变量flag设为1,否则为0。下列Python程序段符合要求的是______(多选,填字母)。
    A、flag = 0

    if t1 < temp < t2:

        flag = 1

    B、flag = 1

    if not (temp < t1 and temp > t2):

        flag = 0

    C、flag = 1

    if temp <= t1:

        flag = 0

    if temp >= t2:

        flag = 0

    D、if not (temp <= t1 or temp >= t2):

        flag = 1

    else:

        flag = 0

    (4)、在服务器本地调试时,输入网址http://127.0.0.1:5000,该系统运行正常,但使用PC客户端1输入该网址不能正常访问,请说明其原因及解决方法。
  • 16、有如下 Python 程序段:

    def sym(d1, d2):

        s1 = d1.split(",")      # 以“,” 将字符串分割成列表

        s2 = d2.split(",")

        if len(s1) != len(s2):

            return False

        stk = []

        i=0

        j=0

        while i < len(s1):

            stk.append(s1[i])

            i += 1

            while stk != [] and stk[-1] == s2[j]:

                stk.pop()     #删除列表 stk 中的最后一个元素

                j += 1

        return stk == [] and i == j

    L1 = "@,a,b,3,c,d"

    L2 = input()

    print(sym(L1, L2))

    执行该程序段后,若输出结果为 True,则 L2 输入的值可能是(   )

    A、a,b,c,d,3 B、c,d,3,b,@,a C、b,a,@,3,d,c D、d,c,3,@,a,b
  • 17、有如 Python 程序段:

    import random

    def find(x, y):

        m = (x+y+1)//2

        if a[m] == key:

            return m

        if a[m] > key:

            y = m-1

        else:

            x = m + 1

        return find(x, y)

    a = [2, 4, 6, 8, 10, 12, 14, 16]

    key=random.choice(a)     #从序列的元素中随机挑选一个元素

    i = 0;j = len(a) - 1

    xb = find(i, j)

    print(xb, key)

    上述程序执行完后,函数find被调用的最多次数是(   )

    A、3 B、4 C、5 D、6
  • 18、列表 s 中包含 n 个互不相等的元素,用 Python 编程实现如下功能:s[0]到 s[n-1]降序排序,当序列已经有序时结束排序,部分代码如下。

    n=len(s)

    for i in range(1, n):

       

        for j in range( )

            if

                s[j], s[j-1] = s[j-1], s[j]

                flag = True

        if flag==False:

            break

    上述程序段中方框可选代码为:①flag=True ②flag=False ③1,n-i+1 ④1,n-i

    ⑤s[j]<s[j-1] ⑥s[j]>s[j-1],则(1)(2)(3)处代码依次为(   )

    A、②④⑥ B、②③⑥ C、①④⑤ D、①③⑥
  • 19、有如下 Python 程序段:

    lst = [5,9,2,6,4,7,3,0]

    que = [0] * len(lst)

    head = tail = 0

    i = 0

    while i < len(lst):

        if lst[i] % 2 == 0:

            que[tail] = lst.pop(i)

            #lst.pop(i)删除列表 lst 中索引为 i 的元素,返回删除的元素

            tail += 1

        else:

            i += 1

    while head != tail:

        lst.append(que[head])

        head += 1

    执行该程序段后,lst的值为(   )

    A、[5, 9, 7, 3, 2, 6, 4, 0] B、[5, 9, 7, 3, 0, 4, 6, 2] C、[2, 6, 4, 0, 5, 9, 7, 3] D、[3, 7, 9, 5, 0, 4, 6, 2]
  • 20、对于如图所示的二叉树,下列说法正确的是(   )

    A、叶子节点有4个 B、是完全二叉树,树的高度为4 C、前序遍历的结果是一个递增序列 D、可以使用数组 [2,5,10,7,8,13,9,15] 存储
上一页 89 90 91 92 93 下一页 跳转