当前位置: 高中信息技术 /高考专区
试卷结构: 课后作业 日常测验 标准考试
| 显示答案解析 | 全部加入试题篮 | 平行组卷 试卷细目表 发布测评 在线自测 试卷分析 收藏试卷 试卷分享
下载试卷 下载答题卡

浙江精诚联盟2023年5月高三信息技术适应性联考试卷

更新时间:2023-05-31 浏览次数:55 类型:高考模拟
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
  • 1. 阅读下列材料,回答问题。

    微软亚洲研究院视觉计算组曾在ImageNet计算机视觉识别挑战赛中取得了96.43%的图像识别正确率而一举夺冠。这得益于它前期对海量已分好类的图像大数据中所蕴含的特征模式的深度学习。该深度学习模型如图所示。

    1. (1) 结合材料,下列关于信息、知识等的说法正确的是(   )
      A . 图中狗和猫等分类图像都是信息 B . 96.43%是数据,即使脱离材料中给出的语境,我们可以获知其中的信息 C . 人类知道左侧照片中是猫和狗,这是知识的体现 D . 即使大部分输入数据的分类、特征信息不准确,深度学习结果也不会有偏差
    2. (2) 结合材料,下列关于人工智能的说法正确的是(   )
      A . 该技术用已知的数据定义来推导出其他图像数据定义,是符号主义实现方法 B . 增大该系统前期输入的训练量,可以完全消除该系统图像识别的错误率 C . 该技术需要人工参与输入已分类的图像信息,属于混合增强型人工智能 D . 人工智能改善了人类生活,促进了经济发展,也带来了社会问题
  • 2. 下列四个选项中所描述的数从数值上比较,最大的是(   )
    A . 5位十六进制数能表示的最大值 B . 20位二进制能表示的不同数的个数 C . 存储10000个ASCII码所需字节数 D . 存储图像大小为100×100像素的黑白两色位图所需的字节数
  • 3. 随着信息技术的发展,信息安全保护也越来越重要,采取下列措施无助于信息安全的是(   )
    A . 数据可视化 B . 异地容灾 C . USB Key 认证 D . 非对称密码
  • 4. 下列关于信息系统的说法,正确的是(   )
    A . 信息系统的硬件包括看得见、摸得着的设备和可以操作的应用程序 B . 移动终端的存储器是整个设备的控制中枢系统和逻辑控制中心 C . 信息系统中的传感技术负责对外部世界的控制 D . 搭建信息系统主要包括硬件搭建和软件模块选择或编写两方面
  • 5. 关于网络组成与构建,下列说法不正确的是(   )
    A . 为主机动态分配IP地址的服务器是DHCP服务器 B . 局域网要接入互联网,需要调制解调器(Modem)和路由器(Router)等设备 C . 网络由传输介质、网络互联设备、网络软件和网络协议组成 D . 访问网站//www.163.com,必须通过三层协议:网际协议、传输控制协议和应用程序协议
  • 6. 某算法流程图如下图所示,已知randint(0,10)函数可以产生闭区间[0,10]内的随机整数,执行完该流程图后,输出结果可能是(   )

    A . 6 6 6 6 6 B . 10 12 16 18 22 C . 0 2 4 5 8 D . 12 8 10 16 20
  • 7. 有如下Python程序段:

    a = b = ""

    k = 0

    s = input().strip()

    for i in range(len(s)):

        if '0' <= s[i] <= '9':

            k += 1

        else:

            b = s[i-k:i]

            if a < b:

                a = b

                k = 0

    print(a)

    运行后若输入“3.803.93.520.888”(不包括引号),则输出是(   )

    A . 803 B . 93 C . 520 D . 888
  • 8. 判断某序列𝑏是否是入栈序列a=[1,2,3,4,5]的出栈序列,程序如下:

    输入示例:

    2 3 5 4 1

    输出示例:

    [2,3,5,4,1]是[1,2,3,4,5]的出栈序列

    a = [1, 2, 3, 4, 5]

    b = list(map(int, input().split()))

    stack = []

    i = j = 0

    while i < len(a):

        stack.append(   ①   )

        i += 1

        while len(stack) > 0 and    ②    :

            stack.pop()

            j += 1

    if len(stack) == 0 and i == j == len(a):

        print(b, '是', a, '的出栈序列')

    else:

        print(b, '不是', a, '的出栈序列')

    划线处应填写的语句是(   )

    A . ① a[i] ② stack[-1] == a[j] B . ① a[i] ② stack[-1] == b[j] C . ① b[i] ② stack[-1] == b[i] D . ① b[i] ② stack[-1] == a[j]
  • 9. 某表达式树如下图所示,下列说法错误的是(   )

    A . 该表达式树是一棵二叉树,树的度是2,高度是5 B . 该树的叶子节点数比度为2的节点数多1个 C . 若采用完全二叉树数组从0号位开始存储,则节点𝑏存储在6号位 D . 该表达式树的前序遍历序列是×𝑑+/𝑓𝑐−𝑎𝑏
  • 10. 有如下Python程序段,运行后程序的输出结果是(   )

    a = [[3,1], [2,2], [3,3], [3,4], [17,5], [2,6], [3,-1]]

    p = head = 0

    while p != -1:

        q = p

        while q != -1:

            t = q

            q = a[q][1]

            if q != -1 and a[q][0] == a[p][0]:

                a[t][1] = a[q][1]

                q = t

        p = a[p][1]

    p = head

    while p != -1:

        print(a[p][0], end=' ')

        p = a[p][1]

    A . 3 2 17 B . 3 2 17 2 C . 3 2 17 2 3 D . 17
  • 11. 有如下Python程序段:

    q = [1, 2, 3, 4, 5, 6, 7, 8, 9]

    f, r = 0, 8

    n = int(input())

    while r < n:

        cur = q[f]

        f = f + 1

        m = cur % 10

        if m == 0:

            q.append(cur * 10 + m)

            q.append(cur * 10 + m + 1)

            r += 2

        elif m == 9:

            q.append(cur * 10 + m - 1)

            q.append(cur * 10 + m)

            r += 2

        else:

            q.append(cur * 10 + m - 1)

            q.append(cur * 10 + m)

            q.append(cur * 10 + m + 1)

            r += 3

    对于该程序,下列说法正确的是(   )

    A . q[12]的值是20 B . 若程序输入𝑛的值等于21,则列表q中的元素个数是22个 C . 对列表任一元素q[i](9≤𝑖≤𝑟),其个、十、百、千……等相邻位上的数值相差都不超过1 D . q中元素值递增,且任意相邻两个元素q[i]和q[i+1](0≤𝑖<𝑟),它们数值相差不会超过1
二、非选择题(本大共3小题,8+9+9,共26分)
  • 12. 小范参加“科学玩家”绿色植物生态缸制作比赛,为此他搭建了“生态缸温度控制系统”。系统可以采集生态缸的气温,通过Wi-Fi传输到服务器并存储到数据库,当气温过高或过低时通过执行器控制温控设备为生态缸维持合适的气温。请回答以下问题。

    1. (1) 系统架构简图如上所示,图中①处连接的设备是(选填:服务器 / 智能终端 /路由器 / 防火墙)。
    2. (2) 生态缸采集并发送气温数据的部分程序代码如下所示:

      from microbit import *; import Obloq

      #uart串口配置和初始化,并用Obloq连接Wi-Fi,准备发送数据,代码略

      while True:

          value = pin0.read_analog()       # 获取1号温度传感器数据,注意这是模拟值

          t = round(value * 330 / 1024, 1)    # 将模拟值转换成摄氏温度值

          errno, resp = Obloq.get(② , 10000)     # 向服务器发送数据

          # 根据服务器反馈信息控制执行器进行温控,代码略

          sleep(1000 * 5)

      若某一时刻传感器获取到的温度值是27℃,它向服务器发送数据时使用的URL是//192.168.113.5/data?id=1&v=27,请将划线处②的语句补充完整。

    3. (3) 服务器端采用 Flask 框架搭建,其部分程序如下:

      import sqlite3; from flask import Flask, request, render_template

      app = Flask(__name__)

      @app.route('/')

      def index():

          #连接并读取数据库,获取传感器编号为1的所有气温值,用变量result保存,代码略

          tmp = result[-1][2]    #获取最后一条记录中的气温值,保存在变量tmp中

         

      @app.route('/data', methods=['GET', 'POST'])

      def add():

          #获取智能终端传输的传感器编号id和气温v的值,并插入到相应数据表中

          #最后根据数据库中存储的气温临界值向智能终端发送反馈信息,代码略

      if __name__ == '__main__':

          app.run(host="192.168.113.5", port="80")

      在add()视图函数中,需要将数据插入到数据表中,其操作语句如下:

      sql = "Insert Into sensorlog (sensorid, sensorvalue) values ('%s', '%s')" % (id, v)

      ①cur = db.cursor()                   ② db.commit()

      ③db = sqlite3.connect("temp.db")    ④cur.execute(sql)

      cur.close(); db.close()

      那么其中①~④条语句正确的顺序是: 。

    4. (4) 在上述程序的index()视图函数中,加框处语句试图用view.html模板渲染网页内容,并将tmp的值传递给网页模板变量temperature,但语句有误,正确的应该是(   )(单选,填字母)
      A . return temperature B . return render_template('view.html', temperature) C . return render_template('view.html', tmp = temperature) D . return render_template('view.html', temperature = tmp)
  • 13. 小林收集了各地市各年份检测的PM2.5浓度值保存于Excel文件“PM2.5.xlsx”中,部分数据如图a所示。小林使用Python进行数据分析,请回答以下问题。

    图 a

    图 b

    1. (1) 小林先将同一个地区的数据输出到各自独立的 Excel 文件中,部分结果如图b所示,实现程序如下所示:

      import pandas as pd

      import matplotlib.pyplot as plt

      df = pd.read_excel("PM2.5.xlsx")

      # cities 保存所有地区名称,这里仅演示部分数据

      cities = ["安吉县", "淳安县", "慈溪市", "杭州市", "湖州市"]

      for city in cities:

          dfc =    ①   

          dfc.to_excel(city + ".xlsx", index=False)    # 输出文件结果示例如图b所示

      那么划线部分语句可以是       

      A . df[df["地区名称"] == city] B . df[df["地区名称"]] == city C . df[df.地区名称 == city] D . df[df."地区名称"]] == city
    2. (2) 对于图a所示的原始数据,小林要进行数据整理:删除“地区编码”、“指标名称”、“计量单位”等对后面统计无用的数据列,请将划线处②的语句补充完整

      df = pd.read_excel("PM2.5.xlsx")

      # 删除“地区编码”、“指标名称”、“计量单位”数据列

      df = df.drop(["指标名称", "地区编码", "计量单位"], axis=    ②     )

      # 同一个地市取 PM2.5 浓度最高的值

      dfg =    ③   

      # 按 PM2.5 的值升序排序

      dfg = dfg.sort_values("PM2.5", ascending=True)

      # 输出排序后的最后五行结果

      print(dfg.tail())

    3. (3) 对于整理后的数据,在同一个地市中取历次 PM2.5 浓度检测值最高的值,最后按 PM2.5 升序排序数据,输出结果如图 c 所示,则第③空应填写的语句是(   )(单选,填字母)

      图 c

      图 d

      A . df.groupby("PM2.5").max() B . df.groupby.地区名称.max() C . df.sort_values("PM2.5").max() D . df.groupby("地区名称").max()
    4. (4) 将排序后的数据分别取PM2.5检测值最高和最低的五行数据合并成新的DataFrame对象后绘制成柱形图如图d所示。请将程序补充完整。

      df2 = pd.concat([dfg.head(5), dfg.tail(5)]) # 合并两个对象成为新的 DataFrame 对象

      plt.rcParams['font.sans-serif']=['KaiTi','SimHei','FangSong'] # 设置图表字体

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

      plt.title("部分县市 PM2.5 浓度对比")

      plt.xlabel("PM2.5 浓度值")

      plt.bar(  , df2["PM2.5"], color="orange")

      for i in range(len(df2)):

          x = df2.index[i]

          y =

          # text()方法可以绘制数据标签,语法:text(横坐标,纵坐标,显示内容)

          plt.text(x, y, '%d' % y)

  • 14. 贪吃蛇在𝑛×𝑛(1≤𝑛≤10)的方阵中游走,它可以往上下左右四个方向游走,当穿越方阵的边界时还可以从该边界的对立面继续进入方阵。初始时你可以任意安排贪吃蛇的起点位置,并且选择一个方向一直走𝑛步。方阵中“.”表示空位置,数字表示可以吃的食物,每吃到一个数字时,这个数字便会附着到贪吃蛇的尾部,同时方阵中该数字会消失。问:在某个时刻,贪吃蛇身上会不会出现我们想要的某个整数;若有,会有多少个数会小于该整数。

    例如,在右侧5×5的方阵中可以产生[1,3,4,12,21,234,243,324,342,423,432]共11个数。其中数“234”的产生过程可以是:选择第4行第2列为起点,第一步吃掉2,接着往右走三步吃掉3,再往右走一步穿越到对面的4,吃掉它成为“234”,共五步。其中“1234”或“123”等整数是不可能出现的。

    请回答以下问题。

    1. (1) 输入方阵保存至数组𝑎,然后将贪吃蛇所有可能吃到的所有数字组合保存到数组𝑏中,请补充完该算法程序。

      dx = [0, 1, 0, -1]     # 模拟贪吃蛇往四个方向游走时行号变化的数组

      dy = [1, 0, -1, 0]     # 列号变化数组

      n = int(input())      # 方阵的大小

      a, b = [], []

      for i in range(n):

          s = input().strip().split() #方阵中的一行数据,“.”号和数字字符都以空格分隔

          a.append(s)

      def calc(i, j, p):

          x, y, res = i, j, 0

          if '0' <= a[x][y] <= '9':

              res = int(a[x][y])

              for i in range(n-1):

                  x =      # 产生新的行号

                  y = # 产生新的列号(与行号类似),代码略

                  if '0' <= a[x][y] <= '9':

                      res = res * 10 + int(a[x][y])

              return res

      for i in range(n):

          for j in range(n):

              for k in range(4):

                  num =

                  if num > 0:

                      b.append(num)

      print(b)       # 输出所有可能能产生的整数(可能会产生重复的整数)

    2. (2) 若数组 a= [['.', '1', '.'], ['.', '2', '3'], ['.', '.', '.']],上述程序处理完后𝑏数组中(选填:存在 / 不存在)整数2。
    3. (3) 对𝑏数组中的所有整数进行升序排序,输入待查找的数据,输出小于等于该数字的数有多少个。请补充完该算法程序。

      b = [1, 12, 23, 23, 23, 35, 35,146]

      输入输出示例:

      请输入待查找的整数:23

      小于等于23的数共有5个

      请输入待查找的整数:31

      小于等于31的数共有5个

      bn = len(b)

      for i in range(bn-1):

          for j in range(  ):

              if b[j] > b[j+1]:

                  b[j], b[j+1] = b[j+1], b[j]

      key = int(input("请输入待查找的整数:"))

      i, j = 0, bn-1

      while i <= j:

          m = (i + j) // 2

          if :

              i = m + 1

          else:

              j = m - 1

      print("小于等于", key, "的数共有", i, "个")

微信扫码预览、分享更方便

试卷信息