資源簡介 絕密★考試結束前2023年 10月江浙高中(縣中)發展共同體高三 技術試題 (2023.10)第一部分 信息技術(共 50分)一、選擇題(本大題共 12小題,每小題 2分,共 24分。每小題列出的四個選項中,只有一個符合題目的要求,不選、多選、錯選均不得分)1.下列關于數據及數據管理的說法,正確的是A.數據不可以通過圖像的形式呈現B.傳統的數據庫技術可以對大數據進行有效管理C.提高數據本身安全是有效保證數據安全的手段之一D.計算機中的數據可以通過十六進制形式存儲以節省存儲空間【答案】C【解析】本題考查數據與數據管理的相關知識。選項 A.數據可以通過圖像的形式呈現,故選項 A是不正確的;選項 B.傳統的數據庫技術不可以對大數據進行有效管理,故選項 B是不正確的;選項 C.提高數據本身安全是有效保證數據安全的手段之一,是正確的;選項 D.計算機中的數據不可以通過十六進制形式存儲以節省存儲空間,只能以二進制的形式,故選項D是不正確的。所以答案是 C。閱讀下列材料,回答第 2至 4題:某校園智能門禁系統的部分功能是:有效管控校園人員出入,學生進出實時抓拍并發送給相應的家長,支持刷卡、人臉、指紋、動態二維碼等多種識別方式。在人員出入時自動進行測溫。系統能實現各類考勤統計,所有進出記錄均可隨時檢索查詢。可接入校門口 LED大屏,實時顯示出入人員班級、年級、出入時間等信息。2.下列關于該系統功能和應用的說法,不.正.確.的是A.該系統能夠自動進行測溫,需要硬件設備的支持B.若網絡出現故障,該系統各項功能仍然能夠正常運行C.LED大屏顯示考勤信息,體現了系統的數據輸出功能D.通過數據庫存儲各類考勤數據,進而實現系統的各項數據統計【答案】B【解析】本題考查信息系統的功能及其應用。選項 ACD都是正確的;選項 B.若網絡出現故障,該系統大部分功能都將失效,例如檢索、考勤、多種識別方式等,故選項 B是不正確的。所以答案是 B。3.該系統的下列應用中,體現了人工智能技術的是A.人員出入時自動進行測溫 B.進出記錄均可隨時檢索查詢C.通過刷卡打開智能門禁系統 D.學生進出實時抓拍并發送給對應的家長高三技術 試題卷 第 1 頁(共 12 頁)【答案】D【解析】本題考查人工智能的相關知識。選項 A.人員出入時自動進行測溫,使用了感應技術;選項 B.進出記錄均可隨時檢索查詢,使用了數據庫檢索技術;選項 C.通過刷卡打開智能門禁系統,使用 RFID 技術;選項 D.學生進出實時抓拍并發送給對應的家長,使用了人臉識別,故選項 D是正確的。所以答案是 D。4.下列關于信息系統安全和信息社會責任的說法,正確的是A.系統在校園內使用,不存在個人信息泄露風險B.動態二維碼的使用是為了進一步確保進出人員身份的真實性C.通過數據加密的方式存儲數據,系統數據將不可被竊取D.學校購買了該智能系統后,可以拷貝給其他任何學校使用【答案】B【解析】本題考查信息系統安全和信息社會責任的相關知識。選項 A.系統在校園內使用,存在個人信息泄露風險,故選項 A是不正確的;選項 B.動態二維碼的使用是為了進一步確保進出人員身份的真實性,是正確的;選項 C.通過數據加密的方式存儲數據,系統數據也有可能被竊取,故選項 B是不正確的;選項 D.學校購買了該智能系統后,不可以拷貝給其他任何學校使用,故選項 D是不正確的。所以答案是 B。5.下列關于網絡系統及技術的說法,正確的是A.交換機可以將局域網的私有地址轉換為公有地址B.采用客戶端/服務器模式架構的網絡應用軟件,其服務器的負荷相對較重C.傳輸控制協議(TCP)負責將信息從一個地方傳輸到另外一個地方D.樹形網絡結構中的終端設備出現故障時較容易進行隔離【答案】D【解析】本題考查網絡系統的相關知識。選項 A.路由器可以將局域網的私有地址轉換為公有地址,故選項 A是不正確的;選項 B.采用瀏覽器/服務器模式架構的網絡應用軟件,其服務器的負荷相對較重,故選項 B是不正確的;選項 C.網際協議(IP)負責將信息從一個地方傳輸到另外一個地方,故選項 C是不正確的;選項 D.樹形網絡結構中的終端設備出現故障時較容易進行隔離,是正確的。所以答案是 D。6.某智能手環有心率血氧睡眠檢測、提供健康趨勢分析、支持 NFC(近距離無線通信)和掃碼支付等功能。下列關于該智能手環說法,正確的是A.傳感器是整個設備的控制中心B.健康趨勢分析功能無需應用軟件支持C.通過 NFC方式無法實現移動支付D.傳感器的植入使得智能手環更加具有“智能性”【答案】D【解析】高三技術 試題卷 第 2 頁(共 12 頁)本題考查傳感技術的相關知識。選項 A.傳感器不是整個設備的控制中心,處理器才是控制中心,故選項 A是不正確的;B.健康趨勢分析功能需要應用軟件支持,故選項 B是不正確的;選項 C.通過 NFC 方式可以實現移動支付,故選項 C是不正確的;選項 D.傳感器的植入使得智能手環更加具有“智能性”,是正確的。所以答案是 D。7.下列關于圖像數字化的說法,正確的是A.通過手機拍照并存儲可以實現圖像的數字化B.圖像的量化過程就是把圖像分解成一個個像素C.黑白兩色圖像的顏色位深度是2 位D.把一幅24 位色的圖像另存為256 色,文件容量將變大【答案】A【解析】(本題考查信息數字化)B選項,將圖像分解成一個個像素是采樣的過程,C選項,黑白圖像的顏色深度是1位,D選項,24位圖像另存為256色文件容量會變小。8.某二叉樹的樹形結構如第8 題圖所示,其前序遍歷結果為BADCFGE,則字符“G”所在的位置為A.① B.② C.③ D.④【答案】C【解析】第 8題圖本題考查二叉樹的遍歷。根據前序遍歷BADCFGE與圖,可知G在右子樹,F以下。9.某種特殊的隊列Q,支持以下三個操作:操作Q1:若隊列非空,隊首元素出隊,并輸出;操作Q2:若隊列非空,隊首元素出隊;操作Q3:一個元素入隊;以上任意一種操作后,若隊列非空,新的隊首元素仍為隊列中所有元素的最小值。若隊列Q 初始狀態為空,依次進行Q3、Q2、Q1、Q2、Q3、Q1、Q3 七次操作后,下列說法正確的是A.當前隊列中的元素個數為2B.輸出的元素個數為2C.第一個輸出的元素肯定比當前隊首元素大D.隊列初始狀態是否為空對輸出結果有影響【答案】D【解析一】本題考查隊列。A選項,當前隊列中的元素個數為1;B選項,輸出的元素個數為1;C選項,無法判斷第一個輸出的元素比當前隊首元素大。高三技術 試題卷 第 3 頁(共 12 頁)10.定義如下函數:def f(x,y):if x<=2 or y>20:return x+y;return f(x-1,y+1)執行語句k = f(5,1)后,k 的值為A.6 B.7 C.8 D.9【答案】A【解析一】本題考查遞歸。歸納調用順序:f(5,1) f(4,2) f(3,3) f(2,4),所以k值為2+4=6【解析二】本題考查自定義函數和遞歸算法。遞歸調用過程如下:f(5,1)→f(4,2)→f(3,3)→f(2,4),此時滿足函數的終止條件x<=2,因此函數返回值為2+4=6,故本題答案為A。11.有如下程序段:s=['']*len(a)head=2;q=head;top=-1while q!=-1:top+=1;s[top]=a[q][0]q=a[q][1];print(s[top-2])若a=[['a',3],['b',0],['c',1],['d',-1]],則輸出的結果為A.a B.b C.c D.D【答案】B【解析一】本題考查棧與鏈表。已知鏈表a=c b a d -1,依次將鏈表元素入棧,因此最終s=['c','b','a','d'],所以s[top-2]值為b【解析二】本題考查棧以及鏈表知識。利用變量追蹤法進行模擬,列表如下:變量名 q top s[top]初值 2 -1 ""第 1次 1 0 "c"第 2次 0 1 "b"第 3次 3 2 "a"第 4次 -1 3 "d"綜上所述,最后輸出時,top=3,因此s[3-2]=s[1]="b",故選B。12.以下兩個程序段的功能相同,實現的功能是:刪除列表a(元素個數為n)中的重復元素(只保留一個),并將剩下的元素降序輸出。高三技術 試題卷 第 4 頁(共 12 頁)#程序段① #程序段②#對列表a 進行降序排序,代碼略 max_num=max(a)#求出列表a 中的最大值max_numi=1 b=[0]*(max_num+1)while iif a[i]==a[i-1]: b[a[i]]+=1for j in range(i+1,n): for i in range(max_num,0,-1):a[j-1]=a[j] if b[i]>0:i-=1;n-=1 print(i,end=" ")i+=1#輸出列表元素a[0]到a[n-1],代碼略關于上述兩個程序段及功能的描述,正確的是A.同樣的數據規模,兩個程序段的時間效率一樣B.程序段①加框處語句是否執行不受列表a原數據的影響C.程序段②加框處語句修改為“for i in range(1,max_num+1) ”,輸出結果不變D.在實現該功能的過程中,程序段②比程序段①需要更多的存儲空間【答案】D【解析一】本題考查數組、算法效率。A選項,程序段 2效率更高;B選項,加框處語句的目的是解決出現多個連續相同的值;C選項,原程序是降序輸出,修改后是升序輸出,結果不同;D選項,程序段 2增加了 b數組,需要更多存儲空間。【解析二】本題考查算法效率以及循環語句、字符串去重等綜合知識。選項 A錯誤,由程序代碼可知,程序段①的時間復雜度為 O(n2),而程序段②的時間復雜度為 O(n)。選項 B,當 i位置上有連續 3個以上的相同的數據時,若沒有 i-=1這條語句,將會遺漏一次比較,從而導致去重失敗。據選項 C錯誤,程序段②加框處語句修改為“for i in range(1,max_num+1) ”,輸出結果將變為升序排列。選項 D正確,由于程序段②使用了桶排序的算法思想,因此當最大值為很大,例如 100000以上時,將會占用較大的存儲空間。二、非選擇題(本大題共 3 小題,第 13 小題 8分,第 14 小題 9分,第 15 小題 9分,共 26 分)13.檢查數學表達式中的括號是否配對是計算機進行數學計算的重要環節。括號序列“( ) ( )”中的“(”與“)”是配對的,而序列“( ) ) (”中的括號則是不配對的。對于不配對的序列,可以將“(”括號修改為“)”,或者將“)”修改為“(”來實現配對。如第 13題圖所示是括號序列“( ) ) ( ( )”通過不同的修改方案所需要的修改次數,最少修改次數為 1。請回答下列問題:(1)若括號序列為“( ) ) ) ) ( ) )”,最少需要修改 次才能使得括號序列中的括號配對。(2)編寫程序,計算修改括號序列使其配對的最少次數。部分 Python程序如下,請在劃線處填入合適的代碼。s=input() #輸入括號序列,序列中僅包含“(”、“)”兩種字符,且長度為偶數x=0高三技術 試題卷 第 5 頁(共 12 頁)ans=0for i in range(len(s)):if s[i]=='(':①elif s[i]==')' and x>=1:x-=1elif s[i]==')' and ② :ans+=1;x+=1ans+= ③print(ans)【答案】(1)2 或“兩”(2) ①x+=1 或 x = x + 1 或其他等價答案②x==0 或其他等價答案③x//2 或其他等價答案【解析】本題考查簡單python算法。(1)將第三個“)”和第五個“)”修改為右括號即可實現配對,因此最少需要修改兩次。(2)對輸入的字符串s進行遍歷,①當遇到左括號時,x加1,②當遇到右括號時,如果x>0,則表示可以與之前的一個左括號配對,x減1;否則該右括號無法配對,則將該右括號修改為左括號,③整個字符串遍歷結束后,若x不為0,則x的值表示未配對的左括號的個數,其中一半修改為右括號,即可實現配對。14.小明要搭建汽車空氣質量監控系統,該系統能監測汽車內氣體污染物的濃度,當氣體污染物超標(超出閾值)時,發出警報并帶動風機工作。用戶通過手機上的瀏覽器能查看實時監測結果和歷史數據。小明已選擇的硬件有:智能終端、氣體傳感器、執行器(如蜂鳴器、風機)、服務器等。系統的硬件搭建方式是:服務器通過無線網絡連接智能終端,智能終端連接傳感器和執行器,請回答下列問題:(1)關于該系統硬件設備間數據的傳輸,描述不.正.確.的 (單選,填字母)。A.智能終端接收氣體傳感器傳輸過來的數據B.當空氣出現異常時,執行器向智能終端發送啟動風機的指令C.智能終端向服務器傳輸監測到的氣體濃度數據(2)小明基于 Flask Web 框架編寫該網絡應用,根據 Web 網絡應用編寫的流程,下列四個語句塊正確的步驟是 (按步驟填序號)。#序號① #序號② #序號③ #序號④app=Flask(__name__) from flask import Flask if__name__=='__main__': @app.route('/myapp') defapp.run() myapp(): #代碼略(3)系統定義 act(c,x,y)函數用于發送操作指令,其中參數 x 為檢測到的氣體污染物濃度值,系統將該氣體濃度與閾值 y 比較后發送指令。操作規則如下表所示。當前氣體情況 氣體污染物濃度 x 操作指令污染 不超過閾值 y 停止報警,關閉風機未污染 超過閾值 y 啟動報警,打開風機下列 Python程序段中符合要求的是 (多選,填字母)。高三技術 試題卷 第 6 頁(共 12 頁)A. B.if c=="污染" and x<=y: if c!="污染" or x>y:# 發送指令 "停止報警","關閉風機",代碼略 # 發送指令 "啟動報警","打開風機",代碼略elif c=="未污染" and x>y: elif c!="污染" and x<=y:# 發送指令 "啟動報警","打開風機",代碼略 # 發送指令 "停止報警","關閉風機",代碼略C. D.if c=="污染": if c=="污染" and x<=y:if x<=y: # 發送指令 "停止報警","關閉風機",代碼略# 發送指令 "停止報警","關閉風機",代碼 else:略 # 發送指令 "啟動報警","打開風機",代碼略if c=="未污染":if x>y:# 發送指令 "啟動報警","打開風機",代碼略(4)小明根據上述功能設計并完成了該系統的開發,在調式階段發現當汽車內的空氣出現污染時,只有報警聲音,風機并沒有轉動,請從該系統硬件組成部分角度分析可能導致這種情況產生的原因 。(注:回答 2 項,1 項正確得 1 分)(5)系統每隔 1 分鐘監測并向服務器發送一個氣體污染物濃度數據(單位:mg/m3), 小明經過查詢并將其中的部分數據導出后如第 14 題圖 a所示。分析 2023年 8月 1日到 8月 10日這 10天中每一天氣體污染濃度監測值超過閾值的次數,線形圖如第 14題圖 b所示,部分 Python程序如下:import pandas as pdimport matplotlib.pyplot as pltdf = pd.read_excel('data.xlsx') #讀取文件 data.xlsx 中的數據df_del=df.drop('監測序號',axis=1) #刪除"監測序號"列df1 = df_del[df_del['濃度值'] > 2.5] #刪除 df_del 對象中濃度值不超過 2.5 的數據df2 = df1.groupby('日期', as_index = False). ① #分組求次數print(df2)plt.plot(df2['日期'],df2['濃度值'] )# 設置繪圖參數,顯示如第 14 題圖 b 所示的線形圖,代碼略①請在程序中劃線處填入合適的代碼。②為實現方框處代碼等價的功能,下列代碼段可替代方框處代碼的有 (多選,填字母)。(注:全部選對的得 2 分,選對但不全的得 1 分,不選或有選錯的得 0 分)A.df1 = df_del[df_del.濃度值 > 2.5]高三技術 試題卷 第 7 頁(共 12 頁)B.n=len(df_del[df_del['濃度值'] > 2.5])df1=df_del.sort_values('濃度值',ascending=False) #按濃度值降序排序df1=df1.head(n) #獲取頭部數據行C.df1 = df_del ['濃度值'] > 2.5D.for i in df_del.index:if df_del.at[i,'濃度值']<=2.5:df_del=df_del.drop(i) #刪除行【答案】(1)B (1分)(2)②①④③ (2分)(3)AC (2分)(4)風機出現故障、風機與智能終端連接出現故障 或其他等價答案,每個合理原因 1 分(2分)(5) ①count() (1分)②AB (2分)【解析】本題考查信息系統搭建、Flask 框架、IF語句、Pandas數據處理及數據可視化。(1)當空氣出現異常時,智能終端向執行器發送啟動風機的指令(2)利用 Flask 模塊創建網絡應用的基本流程為:導入框架模塊→創建應用實例→編寫路由與視圖函數→啟動 web應用,對應的序號為②①④③。(3)根據題意當滿足 c==“污染”且 x <= y時 ,發送指令“停止報警,關閉風機”;或滿足 c==“未污染”且 x > y時,發送指令“啟動報警,打開風機”。答案 B:if語句的條件表達式中邏輯運算符(or)錯誤;答案 D:else相當于對前面 if語句的條件表達式的否定,not( c=="污染" and x<=y) 等同于 c==“為污染”orx>y,同樣是邏輯錯誤。(4)根據題干描述“當汽車內的空氣出現污染時,只有報警聲音,風機并沒有轉動”,出現報警聲說明傳感器本身正常、傳感器和智能終端的連接正常,可能是執行器(風機)本身出現故障、或者是執行器(風機)和智能終端的連接出現故障。(5)①劃線處代碼主要實現將 df1對象中的數據根據“日期”分組并計數,所以答案為 count()。②加框處的語句的功能是刪除 df_del 對象中濃度值不超過 2.5 的數據(或者是篩選出 df_del 對象中濃度值超過 2.5 的數據),并將篩選出的數據用 df1對象表示。選項 A:同加框處語句功能一樣;選項 B:先計算濃度值超過 2.5 的記錄數量,然后將 df_del數據以“濃度值”為關鍵字降序排列,df1保存前面的 n條記錄,即為濃度值超過 2.5的所有記錄;選項 C:只寫了篩選條件,錯誤;選項 D:通過循環遍歷 df_del對象的行索引,并通過 if語句將 df_del對象中濃度值小于等于 2.5的所有記錄刪除,并將刪除后想記錄保存在 df_del對象中,沒有保存在 df1對象中,錯誤。15.某業務服務大廳共有 m個服務窗口(編號為 0~m-1),服務大廳根據服務對象的優先等級(等級分為1~10,數字越大優先級越高)從高到低依次分配窗口并提供服務。某個時間段內(該時間段起始時刻 各窗口都空閑著),服務對象按服務優先等級從高到低排隊后依次到空閑的窗口享受服務,服務優先 等級相同時,先到達的先享受服務。由于辦理的業務不同,每個服務對象的服務時長(單位:分鐘)可能是不相同的。按照上述服務規則,問所有服務對象完成業務辦理需要多少時間。一個服務對象業務辦理結束,另一個服務對象馬上到該窗口接受服務,中間浪費的時間忽略不計。如第 15題圖 a所示,描述了 5個服務對象的信息,按照服務規則確定的服務次序如第 15題圖 b所示。高三技術 試題卷 第 8 頁(共 12 頁)若服務大廳提供 2個服務窗口(m=2),則所有服務對象完成業務辦理需要 50分鐘。具體方案可 以是:0號窗口依次服務到達序號為 1、5、3 的對象,1 號窗口依次服務到達序號為 2、4的對象。請回答下列問題:(1)若有 6 個服務對象的信息如第 15題圖 c所示,根據上述服務規則,在提供 3個服務窗口的情況下,所有服務對象完成業務辦理需要 分鐘。(2)定義如下 sort_lst(lst)函數,參數 lst 是所有服務對象信息構成的列表。函數的功能將列表 lst按照服務對象的優先等級降序排列并構成鏈表,返回排序后的鏈表及其頭指針。def sort_lst(lst):for i in range(len(lst)):lst[i].append(-1)head=0for i in range(1,len(lst)):p=headwhile p!=-1:if lst[p][1]>=lst[i][1]:q=pp=lst[p][3]else:breakif p==head:lst[i][3]=headhead=ielse:lst[q][3]=ilst[i][3]=p高三技術 試題卷 第 9 頁(共 12 頁)return lst,hea若 lst列表依次存儲第 15題圖 c所示的服務對象信息,如 lst[0]為[1,3,2],各數據項依次表示服務對象的到達序號,服務優先等級及優先等級。調用 sort_lst (lst)時,程序中加框處的語句“q=p”總共執行 次。(3)計算時間段內服務對象完成業務辦理所需時間的部分 Python程序如下,請在劃線處填入合適的代碼。def proc(lst,p,n,m):s=[0]*mfor i in range(m): #前 m個人直接開始服務,等待時間為 0if p==-1:breaks[i]=lst[p][2]①ans=0while p!=-1:k=s[0] #找出正在被服務的對象中最早結束的一個for j in range(1,m):if s[j]k=s[j]ans+=k #總服務時間已經過去了 k分鐘for j in range(m): #更新每個窗口當前正在被服務的對象還需要的服務時間s[j]-=kif ② :s[j]=lst[p][2]p=lst[p][3]k=s[0]for i in range(m):if s[i]>k:k=s[i]③print("所有服務對象完成業務辦理需要",str(ans),"分鐘")'''讀入服務對象總數 n和窗口數 m按到達序號讀入 n個服務對象的信息到列表 lst 中,如第 15題圖 c為:lst=[ [1 ,3 ,2],[2 ,5 ,7],[3 ,4 ,13],[4 ,1 ,5],[5 ,8 ,12],[6 ,4 ,11]]代碼略'''lst,head=sort_lst(lst) #對 lst按照服務對象優先等級降序排序proc(lst,head,n,m)本題考查鏈表的插入排序,遍歷等【答案】(1)18 (1分)(2)7 (2分)(3) ①p=lst[p][3]或其他等價答案 (2分)高三技術 試題卷 第 10 頁(共 12 頁)②s[j]==0 and p!=-1或其他等價答案 (2分)③ans=ans+k或其他等價答案 (2分)【解析】(1)因為按照優先等級排序,因此 0號窗口服務 5【12】1【12+2】,1號窗口服務 2【7】,6【7+11】,2號窗口服務 3【13】,4【13+5】,因此共 18分鐘(2)def sort_lst(lst): #插入排序for i in range(len(lst)): #生存指針域lst[i].append(-1)head=0for i in range(1,len(lst)): #遍歷 lstp=headwhile p!=-1: #遍歷鏈表,查找待插入位置if lst[p][1]>=lst[i][1]: #優先級比鏈表最大值大q=pp=lst[p][3]else:breakif p==head: #是頭指針lst[i][3]=headhead=ielse: #非頭指針,插入lst[q][3]=ilst[i][3]=preturn lst,hea因此 3 ,53, 543【1次】,5431【3次】,85431,854431【3次】,共七次(3)s=[0]*mfor i in range(m): #前 m個人直接開始服務,等待時間為 0if p==-1: #鏈表遍歷完breaks[i]=lst[p][2] #s[]記錄當前業務完成時間____①_________ #要服務下一個服務對象,while p!=-1: #遍歷鏈表k=s[0] # 找出正在被服務的對象中最早結束的一個for j in range(1,m):if s[j]k=s[j]ans+=k # 總服務時間已經過去了 k 分鐘for j in range(m): # 更新每個窗口當前正在被服務的對象還需要的服務時間s[j]-=kif ____② ________: 由下面兩行代碼可知要判斷服務是否結束,同時還高三技術 試題卷 第 11 頁(共 12 頁)須考慮是否遍歷完:s[j]=lst[p][2] #進入下一個服務對象p=lst[p][3]k=s[0] #分析上段代碼可知,已遍歷完所有鏈表,但不知道是否還有業務處于未完成狀態for i in range(m): #遍歷所有窗口,查找未完成的業務if s[i]>k:k=s[i]_____③ _______ #累計未完成業務中,所有最長時間,高三技術 試題卷 第 12 頁(共 12 頁) 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫