浙江省嘉兴市2023届高三上学期信息技术9月联考试卷

试卷更新日期:2022-11-14 类型:月考试卷

一、选择题(本大题共12小题,每小题2分,共24分。)

  • 1. “东数西算”工程是通过在西部构建数据中心、云计算、大数据一体化的新型算力网络体系,将东部算力需求有序引导到西部。下列说法不正确的是(   )
    A、“东数西算”只涉及海量数据的传输及其传输效率的问题 B、云计算是分布式计算的一种,其软件与服务是统一部署、统一管理的 C、“东数西算”中的“数”是指数据,“算”是指算力,即对数据的处理能力 D、“东数西算”工程需要硬件、软件、通信网络、数据、人员等要素共同参与,互相配合
  • 2. 某购物网站采集了用户浏览和购物过程中产生的数据,针对产生的数据进行精准推送广告。下列说法正确的是(   )
    A、该网站数据处理采用了图计算模式 B、该网站中的个人用户敏感数据无需加密处理 C、随着数据采集量的增加,购物网站会变得越来越智慧 D、要实现精准推送广告,需要知道用户浏览或购买商品的原因
  • 3. 2016年3月人工智能软件AlphaGo战胜了九段棋手李世石,下列说法正确的是(   )
    A、AlphaGo是以符号主义表达与推理的人工智能 B、AlphaGo采用了深度学习和蒙特卡洛树搜索算法 C、AlphaGo在下棋过程中不依赖于人类棋手对弈的历史数据 D、AlphaGo从围棋人工智能应用到电力控制领域,属于混合增强人工智能
  • 4. 阅读下列材料,回答下面小题。

    小明使用Flask Web框架搭建了一个家庭监控报警系统。 智能终端通过摄像头、红外线传感器、烟雾传感器收集数据,当烟雾数据达到一定值,或者红外线传感器检测到有人入侵时,均会向用户手机发送短信预警信息,用户使用手机浏览器查看监控信息。系统结构示意图如图所示。

    (1)、下列有关该信息系统的说法不正确的是(   )
    A、该信息系统采用了C/S模式架构 B、各类传感器的作用是采集数据 C、用户使用手机浏览器可查看实时监控信息 D、智能终端通过Wi- Fi连接网络并将数据传输到服务器
    (2)、当有人经过红外检测区时,传感器的反馈值会由1变为0。部分代码如下:

    while True:

        va1 = pin1.read_ digital ()    #采集红外传感器信号

        #处理采集到的信号,代码略

        sleep (500)

    下列说法正确的是(   )

    A、智能终端每500秒采集一次数据 B、从传感器获取的数据为“0”时,用户会收到预警信息 C、红外传感器采集的是环境中的声音信号 D、红外传感器采集到的数据使用RFID传输到服务器
  • 5. 下列有关信息安全的说法正确的是(   )
    A、身份认证解决的是用户对各类数据操作的权限问题 B、访问控制解决的是用户能否正确进入系统的权限问题 C、防火墙一般是由硬件和软件组成的复杂系统,也可以仅软件系统 D、用户名+口令的认证技术必须添加能发送动态口令的专用设备
  • 6. 某算法的流程图如图所示,执行该流程,若初始时s="",输入x的初值为整数26,则下列说法正确的是(   )

    A、变量x的终值可能为负数 B、循环体部分语句执行次数为5次 C、“x>0”语句共执行5次 D、变量s的终值为“11010”
  • 7. 有如下Python程序段:

    s = "China'

    t =[1,3,2]

    res =“”

    for i in range (len(s)):

        m = t[i % len(t)]

        n = ord(s[i]) + m

        res=res+chr(n)

    print (res)

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

    A、Dkkod B、Ciknb C、DkjoD D、Cijob
  • 8. 下列关于数据结构的说法,正确的是(   )
    A、常见的线性关系数据结构有数组、队列、栈、树和图等 B、数组和链表在操作时,其存储空间固定不变 C、链表在访问、插入和删除元素时,算法效率比数组高 D、栈是一种先进后出的线性表结构
  • 9. 某队列的数据结构如图所示,hed和tail分别是队列的头指针和尾指针。现对该队列进行下列操作:①队首元素出队后再入队②队首元素出队井输出,重复①②操作直到队列为空。

    若队列的数据元素为“Python”,则输出的顺序是(   )

    A、Python B、Ptoynh C、yhntPo D、YhntoP
  • 10. 下列Python程序段用于定义判断回文字符串的自定义函数。(注:回文字符串是一个正读和反读都一样的字符串,如“12321”或者“noon”等是回文字符串,而“1232”则不是。)

    def pal(s): # 判断回文字符串

        st=[“”]*100

        top=.-1

        k=len(s)//2

        for i in range (k) :

            top += 1

            st [top] = s[i]

        if len(s)%2=1:

            

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

            tmp = st[top]

            top -= 1

            if

                return False

        return True

    上述程序段中方框处可选语句为:

    ①k=k+1

    ②k=k-1

    ③tmp=s[i]

    ④tmp!=s[i]

    则程序中(1)、(2)处的语句依次可为(   )

    A、①③ B、②④ C、②③ D、①④
  • 11. 有如下Python程序段:

    import random

    nums =[0] *6

    for i in range (6):

        nums [i] = random.randint(1, 10)

    i=0

    j = len(nums) - 1

    while i< j:

        if nums[i]%2==0 and nums[j]%2==1:

            nums[i],nums[j] = nums[j], nums[i]

        elif nums[i] % 2 == 1:

            i=i+1

        elif nums[j] % 2 == 0:

        j=j-1

    print (nums)

    执行该程序段后,下列输出结果中不可能的是(   )

    A、[1,3,1,5,1,7] B、[1,4,3,6,5,8] C、[1,3,5,7,9,10] D、[6,4,2,8,2,10]

二、非选择题(本大题共3小题,共26分)

  • 12. 某次模拟考试成绩存储在“Scores.xlsx"数据文件中(如图a所示),现利用Excel软件与Python程序对这些数据进行统计分析并可视化,请根据要求回答下列问题。

    (1)、在Excel软件中计算每位学生的成绩总分。选择M2单元格输入公式,然后利用自动填充功能完成区域M3:M651的计算,则M2单元格的公式为=SUM
    (2)、利用Pandas模块读取数据,统计出各选科组合的选择人数,部分程序代码如下,请在划线处填入合适的代码。

    df = pd. read_ excel ("Scores. xlsx")

    df1 = df. groupby("选科", as_ index=False)

    df2 = df1. 学号.      #统计各选科组合的人数

    df2 = df2. rename (columns={"学号":"人数"})

    (3)、为了获取选科人数最多的期8个组合,结果如图b所示,都分程序代码如下,则程序划线处的代码可行的(   )(多选:填字母)。

    A、df3=df2.sort_values("人数").tai1(8) B、df3=df2.sort_values("人数").head(8) C、df3=df2.sort._values("人数", ascending-False) [0:8] D、df3=df2.sort_ valus("人数", ascending=False).head( )
    (4)、对处理后的数据进行可视化操作,结果如图c所示,部分程序代码如下,请在划线处填入合适的代码。

    plt. bar()      #绘制柱形图

    plt. title("选科人数最多的前8个组合")    #设置图表标题

    plt. show()

  • 13. 小明用Flask Web架构开发了一个简易空调控制系统,系统结构示意图如图所示。功能如下:智能终端把采集的数据通过Wi-Fi网络提交给服务器,服务器将数据存入数据库,根据传感器检测到的温度控制空调的开关。

    空调自动管理系统程序包含Web服务蹈哺程序和智能终雄程序部分组成。具体程序代码如下,请根据要求回答以下问题。

    Web服务器端程序部分:

    From flask import Tlask, render_template request    #导入Flask库函数

    DATABASE = 'tdata.db'

    app = Flask(_name_)

    @app.route("/")

    def index( ):

        #代码略

    @app.route("/input")

    def add_ data():

        sid = int (request.args.get("id"))

        svalue = float (request. args. get("val"))

        #打开数据库,并将接收的数据存储到数据库中,代码略

    if_ name_ =="_main_":

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

    智能终端程序部分:

      #设置连接服务器参数并与智能终端建立无线连接,代码略

      while True:

        va1 = pin0. read_ analog( )

        temp = round(va, / 1024 * 3000 / 10.24, 1)

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

        #根据errno和resp的返回值控制执行器,每5秒采集一次数据,代码略

    (1)、由上述材料可知,服务器端程序用于存储数据的数据库文件为 。
    (2)、若要新增一个查询统计预警次数的子页面,则新增访问路由cx的命令为
    (3)、若某时刻温度值为30,则传输数据时使用的URL是(   )(单选:填字母)。
    A、http://192.168.0.100/post?id=1,val=30 B、http://192.168.0.100/input?id=1&val=30 C、http://192.168.0.100:8080/ input=30 D、http://192.168.0.100/ get?=1&val=30
    (4)、若检测到室内温度达到30℃及以上且持续时间长达5分钟,则服务器返回“on”字符,空调开启制冷系统;若温度降至28℃以下,则服务器返回“off”字符串,空调关闭制冷系统。自定义函数control的功能是从数据库中读取最后60条检测数据,将温度存储在列表1st中,当前控制开关状态存储在变量flag中,根据检测的温度值svalue控制空调的开关。请在程序划线处填入合适的代码。

    def control ( ):

        #lst存储最后60条数据中的温度(最后5分钟的数据)

        #svalue为当前温度

        cnt=0

        if svalue<28 and flag="on":

            return "off"

        for i in range(len(1st)):

            if lst[i]>=30:

                cnt+=1

            else:

                break

        if :

            return "on"

  • 14. 机器人移动路线管理。机器人在一平面内按照程序预置数据来完成移动操作(如图a所示),规则如下:①只能水平或垂直方向移动,方向取值:上:U、下:D、左:L.右:R,不能走斜线;每次移动1-5单位距离;②从起点出发,经过若干步后,尽可能返回到起点,如不能自动返回,则计算剩余移动次数。

    (1)、解决上述问题的主程序如下:

    bp=startpos ( )    #输入起点坐标

    dirt = []          #移动方向

    step =[]          #移动距离

    readdata ()        #从data. csv文件中读取移动数据

    pos=[bp]         #从起点开始存储所有经过点的x、y坐标

    for i in range (0, 1en (dirt)):        #利用预置数据移动

        tmp = move (pos[i], dirt[i], step[i])

        pos. append (tmp)

    print ("经过的位置点如下所示: ","\n", pos)

    if tmp ==    #判断能否返回起点

        print("可以直接返回起点位置!")

    else:

        print("不能直接返回起点位置!", end=")

        stpx=gettimes (pos[0] [0], pos[-1][0])

        stpy=gettimes (pos[0][1], pos[-1][1])

    print("至少需要移动"+ str(stpx+stpy) +"次才能返回起点位置!")

    (2)、编写函数startpos( ),功能为输入起点坐标,返回坐标的值,返回值类型为列表。代码如下:

    def startpos( ):

        x=int(input('输入起点的x坐标:'))

        y=int(input('输入起点的y坐标:'))

    return

    (3)、编写readdata()过程,功能为从CSV文件中读取预置的移动数据。代码如下:

    def readdata( ):

        import csv

        f=open(" data. csv", "r", encoding="utf-8 ")

        f_ csv = csv.reader (f)

        title = next(f_csv) #标题行

        for line in f_csv:

            dirt. append (1ine[0])

            step.appnd()

    f.close( )

    (4)、编写位置移动函数move( ),实现计算移动到的新位置。代码如下:

    def move(pos, dr, lg):    #位置移动

        new_ pos = [0, 0]

        if dr == "U":

            x =0; y=1

        elif dr = "D":

            x=0; y=-1

        elif dr = "L":

            x =-1; y=0

        elif dr="R":

            x=1; y=0

        new_ pos[0] = pos[0]+x*lg

        ,

    return new_ pos

    (5)、编写函数gettimes( ),计算剩余移动次数。代码如下:

    def gettimes(p1, p2) :

        p=abs(p1-p2)//5

        if abs(p1-p2)%5!=0:

             

    return p