資源簡(jiǎn)介 絕密★考試結(jié)束前(寒假返校聯(lián)考)浙江省十校聯(lián)盟 2023 屆高三第三次聯(lián)考技術(shù)試題卷完美解析第一部分:信息技術(shù)一、選擇題(本大題共 12 小題,每小題 2 分,共 24 分,每小題列出的四個(gè)備選項(xiàng)中只有一個(gè) 是符合題目要求的,不選、錯(cuò)選、多選均不得分。)閱讀下列有關(guān)材料,回答第 1 至 4 題。某校為推進(jìn)精準(zhǔn)教學(xué)引入了智能作業(yè)批改系統(tǒng):教師通過(guò)自己的賬號(hào)密碼在瀏覽器中登錄平臺(tái)頁(yè)面并發(fā)布作業(yè),打印后發(fā)給學(xué)生;學(xué)生完成作業(yè)后通過(guò)掃描上傳作業(yè),系統(tǒng)可以識(shí)別學(xué)生手寫的學(xué)號(hào)進(jìn)行批改并登記成績(jī);選擇題部分,系統(tǒng)根據(jù)設(shè)定答案統(tǒng)一批改;非選擇題部分,教師可以在紙質(zhì)稿對(duì)應(yīng)選框內(nèi)手動(dòng)勾選后讓系統(tǒng)批改,也可以在平臺(tái)瀏覽器頁(yè)面直接批改。完成批改后,教師可通過(guò)平臺(tái)瀏覽器頁(yè)面查詢各班的得分情況。1.下列關(guān)于信息系統(tǒng)的說(shuō)法不.正.確.的是A.教師和學(xué)生都是該信息系統(tǒng)的用戶B.該系統(tǒng)中,掃描儀的驅(qū)動(dòng)程序?qū)儆趹?yīng)用軟件C.系統(tǒng)在網(wǎng)絡(luò)故障時(shí)無(wú)法及時(shí)批改,這體現(xiàn)了信息系統(tǒng)對(duì)外部環(huán)境的依賴性D.使用該系統(tǒng)批改作業(yè),體現(xiàn)了信息系統(tǒng)“規(guī)范工作流程,提高工作效率”的優(yōu)勢(shì)【答案】B【解析】本題考查信息系統(tǒng)基礎(chǔ)A.正確,教師和學(xué)生還有系統(tǒng)管理人員及維護(hù)人員都屬于用戶B.錯(cuò)誤,驅(qū)動(dòng)程序?qū)儆谑窍到y(tǒng)軟件C.正確,信息系統(tǒng)具有一定的局限性,該系統(tǒng)運(yùn)行需要連網(wǎng),無(wú)網(wǎng)無(wú)法及時(shí)批改D.該系統(tǒng)從作業(yè)的錄入、批改、分析、查詢等環(huán)節(jié)做出了說(shuō)明,體現(xiàn)了該系統(tǒng)具有‘規(guī)范工作流程,提高工作效率’的優(yōu)勢(shì)2.下列關(guān)于手寫字符識(shí)別的說(shuō)法,正確的是A.需要人工構(gòu)造知識(shí)庫(kù) B.無(wú)需借助數(shù)據(jù)進(jìn)行學(xué)習(xí)C.是深度學(xué)習(xí)算法的一種應(yīng)用 D.字跡工整與否不影響識(shí)別率【答案】C浙江省十校聯(lián)盟 技術(shù)試題卷 第 1 頁(yè) 共 13 頁(yè)【解析】本題考查人工智能。對(duì)于手寫字符識(shí)別,該系統(tǒng)并不需要人工參與,系統(tǒng)會(huì)自動(dòng)識(shí)別故 A錯(cuò)誤;該識(shí)別算法屬于深度學(xué)習(xí),是基于數(shù)據(jù)的一種算法應(yīng)用,故 B錯(cuò)誤,C正確;D錯(cuò)誤,字跡工整與否影響識(shí)別率3.下列關(guān)于教師登錄自己賬號(hào)的過(guò)程,說(shuō)法不.正.確.的是A.鍵盤和鼠標(biāo)是該系統(tǒng)重要的輸入設(shè)備 B.使用了“用戶名+口令”的身份認(rèn)證技術(shù)C.?dāng)?shù)據(jù)發(fā)送到服務(wù)端時(shí)需遵守 HTTP 協(xié)議 D.該系統(tǒng)中的賬戶數(shù)據(jù)都存儲(chǔ)于教師辦公電腦中【答案】D【解析】本題考查信息系統(tǒng)基礎(chǔ)。A.正確,鍵盤和鼠標(biāo)屬于該系統(tǒng)輸入設(shè)備;B.正確,用戶名+口令是常用的一種身份認(rèn)證技術(shù)C.正確,該系統(tǒng)通過(guò)瀏覽器進(jìn)行數(shù)據(jù)的傳輸和訪問(wèn),需要遵守 HTTP協(xié)議D.錯(cuò)誤,系統(tǒng)中的賬號(hào)和數(shù)據(jù)都存儲(chǔ)在服務(wù)器中,并非教師辦公電腦4.已知部分選擇題的標(biāo)準(zhǔn)答案和學(xué)生提交的作答分別存儲(chǔ)于字符串變量“sa”和“st”,希望得到一個(gè)由布爾型常量組成的列表“result”作為系統(tǒng)批改的結(jié)果(答對(duì)為“True”,否則為“False”)。下列算法設(shè)計(jì)選項(xiàng)不.正.確.的是A.result=[False]*len(sa) B.result=[]for i in range(len(sa)): for i in range(len(sa)):if st[i]==sa[i]: result.append(sa[i]==st[i])result[i]=TrueC.result=[] D.result=[]for i in range(len(sa)): for i in range(len(sa)):if st[i]==sa[i]: tmp=Trueresult.append(True) if st[i]==sa[i]:else: tmp=Falseresult.append(False) result.append(tmp)【答案】D【解析】本題考查簡(jiǎn)單的邏輯判斷。A.正確,result列表中默認(rèn)預(yù)存儲(chǔ) Fasle,遍歷時(shí),將正確的關(guān)系值 True修改到 resultB.正確,result初值為空,遍歷時(shí),直接存儲(chǔ)關(guān)系值 True or FalseC.正確,result初值為空,遍歷時(shí),分情況進(jìn)行判斷,分別存入對(duì)應(yīng)的關(guān)系值D.錯(cuò)誤,邏輯錯(cuò)誤,st[i]==sa[i]時(shí)的結(jié)果才為 True浙江省十校聯(lián)盟 技術(shù)試題卷 第 2 頁(yè) 共 13 頁(yè)閱讀下列有關(guān)材料,回答第 5 至 6 題。為了早日實(shí)現(xiàn)“碳中和”的總目標(biāo),多地政府提倡綠色出行。其中共享單車是一個(gè)重要的推廣項(xiàng)目:一般情況下用戶只要在手機(jī)中打開相應(yīng)的 APP,掃描車上的二維碼就能解鎖,騎行后在指定區(qū)域上鎖并聽到類似“還車成功”的提示音即可完成一次租借。其中,租賃數(shù)據(jù)包括用戶信息、租車時(shí)間、租車地點(diǎn)、還車時(shí)間、還車地點(diǎn)等,均已儲(chǔ)存于二維表結(jié)構(gòu)中。5.下列關(guān)于數(shù)據(jù)、大數(shù)據(jù)的說(shuō)法不.正.確.的是A.每次租借共享單車的記錄是數(shù)據(jù)B.用戶的共享單車租借數(shù)據(jù)屬于結(jié)構(gòu)化數(shù)據(jù)C.大數(shù)據(jù)因?yàn)轶w量太大,只需抽取部分?jǐn)?shù)據(jù)進(jìn)行分析D.通過(guò)大數(shù)據(jù)分析可以優(yōu)化共享單車的放置地點(diǎn)和數(shù)量【答案】C【解析】本題考查數(shù)據(jù)、大數(shù)據(jù)。大數(shù)據(jù)要分析的是全體數(shù)據(jù),而不是抽樣數(shù)據(jù),故 C 錯(cuò)。6.下列關(guān)于進(jìn)制與信息編碼的說(shuō)法,正確的是A.掃描二維碼的是編碼的過(guò)程B.將用戶信息加密是解碼的過(guò)程C.播放語(yǔ)音提示的過(guò)程需經(jīng)過(guò)采樣、量化與編碼D.若將用戶騎行的距離值轉(zhuǎn)化成二進(jìn)制數(shù)進(jìn)行存儲(chǔ),其值的大小不變【答案】D【解析】本題考查進(jìn)制與信息編碼。生成二維碼的是一個(gè)編碼的過(guò)程,掃描二維碼的是一個(gè)解碼的過(guò)程,A 錯(cuò);將用戶信息加密是編碼的過(guò)程,故 B 錯(cuò);錄音等聲音編碼過(guò)程需要進(jìn)行采樣、量化與編碼,播放語(yǔ)音需要進(jìn)行解碼,故 C 錯(cuò)。7.有如下 Python 程序段:s1 = "1324" ; s2 = "friendly"j = 0 ; m = 0 ; c = ""for i in range(len(s2)):k = int(s1[j])c = c + s2 [m + k - 1]j = j + 1if j > 3 :j = 0m = m + 4浙江省十校聯(lián)盟 技術(shù)試題卷 第 3 頁(yè) 共 13 頁(yè)print(c)執(zhí)行該程序段后,變量 c 的值是A."firenldy" B."firendly" C."frienldy" D."friendly"【答案】A【解析】本題考查字符串操作。變量 j<=3 時(shí),m=0,m+k 與 i 值相等,當(dāng) j>=4 時(shí),j 重新從 0 開始計(jì)算,而 m+=4;故 m+j 的值與 i始終相等,c與 s2 相等,故選 A。8.用一維數(shù)組表示二叉樹,如下表所示:0 1 2 3 4 5 6 7 8 9 10A B C D E F G下列有關(guān)該二叉樹的說(shuō)法正確的是A.該樹中共有 4 個(gè)葉子節(jié)點(diǎn)B.該樹是完全二叉樹,其深度為 4C.該樹的中序遍歷為 B-F-D-G-A-C-ED.該二叉樹的結(jié)構(gòu)圖為(如右圖所示)【答案】C【解析】本題考查二叉樹二叉樹形態(tài)如下圖所示:,故 D錯(cuò);該二叉樹不是完全二叉樹,但其深度為 4,故 B錯(cuò);該樹中有 3個(gè)葉子節(jié)點(diǎn),分別為 F,G,E,故 A錯(cuò)。答案選 C。9.某排序算法的 python 程序段如下:'讀取 n 個(gè)整數(shù),依次存入 a[1]到 a[n]中,代碼略for i in range(1,n-1)for j in range(n,i+1,-1)if a[j]>a[j-1] :浙江省十校聯(lián)盟 技術(shù)試題卷 第 4 頁(yè) 共 13 頁(yè)a[j],a[j]=a[j-1],a[j-1]執(zhí)行上述程序段,下列說(shuō)法正確的是A.交換過(guò)位置的數(shù)據(jù),可能會(huì)再回到其初始位置 B.執(zhí)行完成后,數(shù)組元素 a[1]到 a[n]從小到大排列 C.若 n 為 6,整個(gè)排序過(guò)程總的比較次數(shù)是 30D.整個(gè)排序過(guò)程總的交換次數(shù)至少為 1【答案】A【解析】考查冒泡排序分析代碼,基本的冒泡排序,排序方向從左往右,降序A. 冒泡排序,數(shù)據(jù)可能會(huì)再回到其初始位置,正確B. 降序,從大到小,錯(cuò)誤C. (1+2+3+4+5)=15,錯(cuò)誤。D. 如果原數(shù)據(jù)已經(jīng)有序了,不會(huì)發(fā)生交換,錯(cuò)誤。10.下列關(guān)于算法效率的描述,正確的是A.算法效率指的是算法的時(shí)間復(fù)雜度B.通常,隨著問(wèn)題規(guī)模 n 的增大,函數(shù)值增長(zhǎng)較慢的算法較優(yōu)2C.時(shí)間復(fù)雜度常 a 用符號(hào) T 來(lái)表示,如 2*n*(n-1),其時(shí)間復(fù)雜度可以表示為 T(n )D.常見時(shí)間復(fù)雜度耗費(fèi)時(shí)間的大小關(guān)系為:常數(shù)階<對(duì)數(shù)階<指數(shù)階<平方階【答案】B【解析】考查網(wǎng)絡(luò)系統(tǒng)相關(guān)基礎(chǔ)知識(shí)A. 算法效率和算法復(fù)雜的相關(guān),包括時(shí)間復(fù)雜度和空間復(fù)雜度。錯(cuò)誤B. 相關(guān)算法描述,完全正確C. 時(shí)間復(fù)雜度的常用符合是大寫的 O,錯(cuò)誤D. 正確的關(guān)系是:常數(shù)階<對(duì)數(shù)階<平方階<指數(shù)階11.在升序鏈表 a 中插入一個(gè)不重復(fù)數(shù)據(jù) data,仍保持鏈表的升序狀態(tài)。使用 python 程序?qū)崿F(xiàn)插入操作,代碼如下:a=[[20,4],[6,3],[35,5],[18,0],[27,2],[59,-1]]p=head=1data=int(input())if data<=a[head][0]:a.append([data,head])head=len(a)-1else:浙江省十校聯(lián)盟 技術(shù)試題卷 第 5 頁(yè) 共 13 頁(yè)q=a[p][1]while _____①______ and data>a[q][0]:p=qq=a[p][1]________②___________a.append([data,q])則劃線處的代碼為A.①p!=-1 ②a[p][1]=len(a)-1 B.①q!=-1 ②a[p][1]=len(a)C.①q!=-1 ②a[q][1]=len(a)-1 D.①p!=-1 ②a[q][1]=len(a)【答案】B【解析】考查鏈表中數(shù)據(jù)查找和插入操作根據(jù)代碼 q = a[p][1],p、q是二個(gè)相鄰節(jié)點(diǎn),p在前,q在后根據(jù) data>a[q][0],可以推測(cè)出①:q!=-1條件循環(huán)結(jié)束后,應(yīng)該在 p節(jié)點(diǎn)之后插入節(jié)點(diǎn),所以②處代碼是:a[p][1]=len(a)綜上,正確答案是 B。12.有如下 python 程序段:from random import randintas=[0]*10a=[5, 7, 2, 8, 4, 3, 6]top=0 ; s[top]=a[0] ; b=0n=randint(5,len(a))for i in range(1,n) :while top!=-1 and a[i]>s[top]:top-=1top+=1s[top]=a[i]while top!=- 1:b=b+s[top]top-=1print(b)程序運(yùn)行后,不.可.能.輸出的結(jié)果是A.12 B.14 C.15 D.21【答案】D【解析】浙江省十校聯(lián)盟 技術(shù)試題卷 第 6 頁(yè) 共 13 頁(yè)考查棧的基本操作以及棧內(nèi)元素之間關(guān)系的理解根據(jù) a[i]>s[top],棧內(nèi)元素,從棧底到棧頂?shù)脑厥且粋€(gè)降序序列n的范圍是[5, 7]前 5個(gè)元素構(gòu)建的降序序列是 8、4,和為 12前 6個(gè)元素構(gòu)建的降序序列是 8、4、3,和為 15前 6個(gè)元素構(gòu)建的降序序列是 8、6,和為 14不可能的結(jié)果是 21,選 D。二、非選擇題(本大題共 3小題,其中第 13 小題 10 分,第 14 小題 8 分,第 15 小題 8分,共 26 分)13.某校圖書館使用電子標(biāo)簽對(duì)圖書進(jìn)行統(tǒng)一管理,并用“智慧借閱系統(tǒng)”來(lái)實(shí)現(xiàn)圖書的借閱及歸還處理。該系統(tǒng)的智能設(shè)備如圖 a 所示,通過(guò)校園一卡通可實(shí)現(xiàn)圖書的借閱。該系統(tǒng)登錄界面如圖 b 所示,輸入學(xué)生借書證號(hào)、登錄密碼,單擊“登錄”按鈕后,跳轉(zhuǎn)到讀者信息頁(yè)面,可通過(guò)該系統(tǒng)的網(wǎng)站實(shí)現(xiàn)圖書檢索、網(wǎng)上續(xù)借、借閱歷史查詢等操作。第13題 圖a 第13題 圖b(1)在設(shè)計(jì)“智慧借閱系統(tǒng)”的過(guò)程中,需要對(duì)該系統(tǒng)的輸入、輸出及人機(jī)界面進(jìn)行設(shè)計(jì),這一過(guò)程屬于 ▲ 。(單選,填字母,A.需求分析/ B.可行性分析/C.概要設(shè)計(jì)/D.詳細(xì)設(shè)計(jì))。(2)該系統(tǒng)網(wǎng)絡(luò)應(yīng)用軟件的實(shí)現(xiàn)架構(gòu)是 ▲ (選填:B/S、C/S)。(3)下列關(guān)于該系統(tǒng)的描述正確的是 ▲ (多選,填字母)。A.該系統(tǒng)中,攝像頭是輸入設(shè)備,觸摸屏既是輸入也是輸出設(shè)備B.該系統(tǒng)的服務(wù)器地址為:192.168.1.100:8080C.該系統(tǒng)通過(guò)圖書感應(yīng)區(qū)感應(yīng)圖書信息,實(shí)現(xiàn)借還操作,采用了 RFID 技術(shù)D.該系統(tǒng)用戶通過(guò)借書證號(hào)、密碼登錄系統(tǒng),采用了 GET 方式傳遞數(shù)據(jù)(4)經(jīng)過(guò)較長(zhǎng)時(shí)間的運(yùn)行,圖書管理員想了解下學(xué)生的圖書閱讀情況,將數(shù)據(jù)庫(kù)中的數(shù)據(jù)表導(dǎo)出至“book.xlsx”文件中,讀取數(shù)據(jù)后,界面如圖 c所示,統(tǒng)計(jì)學(xué)生圖書閱讀情況后,繪制圖表如圖 d 所示,部分程序代碼如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。浙江省十校聯(lián)盟 技術(shù)試題卷 第 7 頁(yè) 共 13 頁(yè)第13題 圖c第13題 圖dimport pandas as pdimport matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei'] #用來(lái)顯示中文標(biāo)簽df=pd.read_excel("book.xlsx")df1=_________①___________ #刪除“條形碼”列df1=df1.groupby("讀者姓名",as_index=False).書名.count()df1.rename(columns={"書名":"借閱次數(shù)"}, inplace=True)df2=df1.sort_values(__________②__________).head(10) #按統(tǒng)計(jì)次數(shù)進(jìn)行降序排序x=__________③___________y=df2["借閱次數(shù)"]plt.figure(figsize=(20,10))plt.bar(x,y)plt.title("閱讀之星 TOP10")plt.show()【答案】浙江省十校聯(lián)盟 技術(shù)試題卷 第 8 頁(yè) 共 13 頁(yè)(1)D (1 分)(2)B/S 架構(gòu) (1 分)(3)AC (2 分)(4) ①df.drop("條形碼",axis=1) (2 分)②"借閱次數(shù)",ascending=False (2 分)③df2["讀者姓名"]或 df2.讀者姓名 (2 分)【解析】本題考查網(wǎng)絡(luò)搭建及 pandas模塊相關(guān)知識(shí)點(diǎn)。(1)人機(jī)界面設(shè)計(jì)屬于詳細(xì)設(shè)計(jì),選 D。(2)該系統(tǒng)“通過(guò)該系統(tǒng)的網(wǎng)站實(shí)現(xiàn)圖書檢索、網(wǎng)上續(xù)借、借閱歷史查詢等操作”,沒(méi)有要求安裝客戶端程序,屬于 B/S 架構(gòu)。(3)攝像頭是輸入設(shè)備,觸摸屏既是輸入也是輸出設(shè)備,A正確。服務(wù)器的地址是:192.168.1.100,8080是端口號(hào),B錯(cuò)誤;通過(guò)圖書感應(yīng)區(qū)感應(yīng)圖書信息,結(jié)合圖 a,借還采用了 RFID 技術(shù),C正確;從圖 b可以看出,信息的上傳采用的是表單提交信息,是 POST方式,不是 GET,D錯(cuò)誤。選 AC。(4) ①題干要求“刪除“條形碼”列”,即 df.drop("條形碼",axis=1) ,注意刪除默認(rèn)是刪除行,若要刪除列需加參數(shù):axis=1。② 空“按統(tǒng)計(jì)次數(shù)進(jìn)行降序排序”,填:"借閱次數(shù)",ascending=False 。③ 從圖 d的 x軸坐標(biāo)值可以看出,x軸數(shù)據(jù)為排序以后的“讀者姓名”,填:df2["讀者姓名"]或 df2.讀者姓名。14.已知數(shù)組元素由正數(shù)、負(fù)數(shù)或 0 構(gòu)成,且無(wú)重復(fù)數(shù)據(jù)。編寫程序?qū)崿F(xiàn)在一個(gè)升序排列的數(shù)組中查找絕對(duì)值最小的元素。若絕對(duì)值相等,則輸出較小數(shù)。例如:數(shù)組元素值為[27, 17, 16, -5,13, 8, 2, -9],該數(shù)組中絕對(duì)值最小的數(shù)為 2。小明編寫了 Python 程序?qū)崿F(xiàn)上述功能,輸出樣例如下。(1)若輸入序列[3, -6, 5, 1, -1, -4]執(zhí)行程序后,輸出結(jié)果為 ▲ 。(2)實(shí)現(xiàn)上述功能的 Python 程序如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。#產(chǎn)生 n 個(gè)由正數(shù)、負(fù)數(shù)或 0 構(gòu)成的元素,存儲(chǔ)在數(shù)組 a 中,并升序排列,代碼略def dmin(x,y):min=xif abs(x)>abs(y):min=yreturn min#查找絕對(duì)值最小的數(shù)i=0;j=n-1;flag=False浙江省十校聯(lián)盟 技術(shù)試題卷 第 9 頁(yè) 共 13 頁(yè)while __________①__________:m=(i+j)//2if a[m]==0:flag=Trueabsmin=a[m]breakelif a[m]>0:if ________②___________:j=m-1else:flag=Trueabsmin=dmin(a[m-1],a[m])else:if a[m+1]<0:i=m+1else:flag=True____________③_______________print("絕對(duì)值最小的元素是:"+str(absmin))【答案】(1)-1 (2 分)(2) ①flag==False 或 i<=j and flag==False 或其他等價(jià)答案 (2 分)②a[m]>abs(a[m-1]) 或 a[m-1]>0 或其他等價(jià)答案 (2 分)③absmin=dmin(a[m],a[m+1]) 注:a[m],a[m+1]順序交換不給分 (2 分)【解析】本題主要考查二分查找。(1)升序排列的數(shù)組中查找絕對(duì)值最小的元素,若絕對(duì)值相等,則輸出較小數(shù),序列[3, -6, 5, 1,-1, -4],排序后[ -6, -4, -1, 1,3, 5],-1 和 1 絕對(duì)值相等,較小的為-1。(2)由題干中“已知數(shù)組元素由正數(shù)、負(fù)數(shù)或 0 構(gòu)成”,所以查找時(shí)絕對(duì)最小數(shù)只能在 0 或者正負(fù)交替時(shí)產(chǎn)生且一定存在,由于數(shù)據(jù)為升序,當(dāng) a[m]>0 時(shí),且 a[m-1]>0 繼續(xù)二分查找,如果 a[m-1]<0時(shí),即為正負(fù)交替時(shí),只需比較 a[m-1]與 a[m];當(dāng) a[m]<0 時(shí),且 a[m+1]<0 繼續(xù)二分查找,如果a[m+1]>0 時(shí),即為正負(fù)交替時(shí),只需比較 a[m]與 a[m+1]。①程序中當(dāng)查找到時(shí),邏輯值 flag 均會(huì)賦值為 True,所以繼續(xù)查找的條件為 flag==False;②此處為 a[m]>0 時(shí),由上面分析繼續(xù)二分查找的條件是 a[m-1]>0 時(shí),確定答案為 a[m-1]>0 或他等價(jià)答案;③此處是當(dāng) a[m]<0 時(shí),a[m+1]>0 時(shí),即為正負(fù)交替時(shí),只需比較 a[m]與 a[m+1]確定最小值,確定答案為 absmin=dmin(a[m],a[m+1])。浙江省十校聯(lián)盟 技術(shù)試題卷 第 10 頁(yè) 共 13 頁(yè)15.某餐廳餐桌設(shè)置如下表:餐桌型號(hào) 2人小桌 4人方桌 6人大方桌 12 人大圓桌餐桌數(shù)量 8 15 10 4平均就餐時(shí)間(分鐘) 25 45 60 80有客人來(lái)就餐時(shí)其叫號(hào)系統(tǒng)會(huì)自動(dòng)生成一個(gè)號(hào)碼,并根據(jù)人數(shù)安排餐桌型號(hào);當(dāng)對(duì)應(yīng)餐桌型號(hào)有空桌時(shí),按餐桌編號(hào)(由小到大)即時(shí)分配餐桌安排客人就餐;當(dāng)對(duì)應(yīng)餐桌型號(hào)沒(méi)有空桌時(shí),客人按先后順序排隊(duì)。程序部分運(yùn)行界面如下:(1)定義如下 gettype()函數(shù),功能為輸入客人人數(shù),返回對(duì)應(yīng)桌型,請(qǐng)?jiān)诔绦騽澗€處填入合適代碼。def gettype(num):type=-1for i in range(len(size)):if num<=size[i]:type=i_________▲___________return type(2)定義如下 checktable()函數(shù),功能為輸入桌型,返回對(duì)應(yīng)桌型空桌的編號(hào),返回值類型為列表,請(qǐng)?jiān)诔绦騽澗€處填入合適代碼。def checktable(n):ans=[]for i in range(nums[n]):if ▲ :ans.append(i)return ans(3)解決上述問(wèn)題的主程序如下,請(qǐng)?jiān)诔绦騽澗€處填入合適代碼。size=[2,4,6,12] #每種桌型最大就餐人數(shù)nums=[8,15,10,4] #每種桌型的餐桌數(shù)量times=[25,45,60,80] #每種桌型平均就餐時(shí)間flags=[[True]*nums[i] for i in range(4)] #標(biāo)記每張桌子的初始狀態(tài)s_time=10*60*60 #開始營(yíng)業(yè)時(shí)間——10 點(diǎn)整,轉(zhuǎn)化為秒e_time=14*60*60 #結(jié)束營(yíng)業(yè)時(shí)間——14 點(diǎn)整,轉(zhuǎn)化為秒maxn=50 #假設(shè)隊(duì)列已經(jīng)足夠深qc=[[0]*maxn for i in range(4)] #循環(huán)隊(duì)列now_time=s_time浙江省十校聯(lián)盟 技術(shù)試題卷 第 11 頁(yè) 共 13 頁(yè)id=0head,tail=[0]*4,[0]*4while now_timenumber=getinfo() #調(diào)用函數(shù) getinfo(),獲取客人人數(shù)if number>0:id+=1type=gettype(number) #根據(jù)就餐人數(shù)確定餐桌類型if type!=-1:qc[type][tail[type]]=idtail[type]=(tail[type]+1)%maxnqc_len= ①print(id,"號(hào)客人,給您安排的是",size[type],"人桌,前面還有",qc_len-1,"人在等位")else:print(id,"號(hào)客人,非常抱歉,沒(méi)有適合您的桌型!")for i in range(4):tables=checktable(i)if ② :flags[i][tables[0]]=False #入座第一個(gè)空桌print(qc[i][head[i]],"號(hào)客人請(qǐng)用餐-->",size[i],"人桌",tables[0],"號(hào)")head[i]=(head[i]+1)%maxnnow_time+=1#更新每張餐桌的就餐情況,代碼略【答案】(1)break (2 分)(2)flags[n][i]==True (2 分)(3) ①(tail[type]-head[type]+maxn)%maxn (2 分)②len(tables)>0 and head[i]!=tail[i] (2 分)或 tables and head[i]!=tail[i]【解析一】本題以餐廳排隊(duì)叫號(hào)為背景考察隊(duì)列數(shù)據(jù)操作。第(1)和第(2)小題以自定義函數(shù)為載體,重點(diǎn)考察學(xué)生對(duì)程序借本結(jié)構(gòu)的掌握程度,難度較低。第(1)題計(jì)算并返回 num人對(duì)應(yīng)的桌型,參考題干中 4類桌型與主程序中的 size列表初始化可知,返回值 type 滿足 size[type - 1] < num <= size[type]。及順序遍歷 size 列表過(guò)程中,第一次滿足num<=size[i]時(shí),type = i為返回值,此時(shí)直接退出循環(huán)即可。答案 break。第(2)小題計(jì)算對(duì)應(yīng)桌型的空桌編號(hào)列表,這與第(3)題中的②有關(guān)聯(lián)。由于返回的是列表,所以對(duì)每一個(gè)空桌都需要記錄(ans.append(i)),而是否為空桌由 flag列表標(biāo)記。觀察初始值,flag初始化時(shí)均為 True(空桌),所以此處檢查類型編號(hào)為 n 的 nums[n]張桌子中的空桌的狀態(tài)是正解。答案flag[n][i] == True。浙江省十校聯(lián)盟 技術(shù)試題卷 第 12 頁(yè) 共 13 頁(yè)第(3)小題考察隊(duì)列操作,用二維列表 qc模擬 4個(gè)循環(huán)隊(duì)列,head和 tail 列表標(biāo)記 4個(gè)隊(duì)列的對(duì)頭和隊(duì)尾。當(dāng)處于營(yíng)業(yè)時(shí)間時(shí)(while now_time桌類型 type,并將客人 id 插入到 qc[type]的末尾。從輸出等待時(shí)間的代碼中可以看到,變量 qc_len是 id被插入后的隊(duì)列長(zhǎng)度,即此時(shí) qc[type]中有效元素的個(gè)數(shù)。根據(jù)循環(huán)隊(duì)列長(zhǎng)度公式:(隊(duì)尾 – 對(duì)頭) % maxn,因此①答案為(tail[type] - head[type]) % maxn。②處的循環(huán)時(shí)對(duì)此刻隊(duì)列的更新,若桌型 i由空桌則安排就坐。第(2)中的 checktable函數(shù)返回空桌列表,即列表長(zhǎng)度不為 0表示由空桌,此外,追星 i的隊(duì)列中由客人等待時(shí)才需要安排入座,所以②處的答案為 len(tables) > 0 and head[i] !=teal[i]。【解析二】本題考查二維數(shù)組(隊(duì)列組)和循環(huán)隊(duì)列的基本應(yīng)用。(1)gettype 函數(shù)功能為輸入客人人數(shù),返回對(duì)應(yīng)桌型。size數(shù)組存儲(chǔ)每種桌型最大就餐人數(shù),從小桌開始枚舉,找到相應(yīng)的規(guī)格就結(jié)束查找,因此答案為 break。(2)checktable函數(shù)功能找到對(duì)應(yīng)桌型的空桌編號(hào)。nums每種桌型的餐桌數(shù)量,flags二維數(shù)組標(biāo)記每種桌型每張桌子的初始狀態(tài),n 為桌型編號(hào),nums[n]表示該種桌型中最多就餐桌位,在 flags[n]列表中從頭開始(循環(huán)變量 i從 0至 nums[n]-1中枚舉)查找值為 True(空桌)的編號(hào),并將這些編號(hào)添加到列表 ans中,因此答案為 flag[n][j] == True。(3)①求隊(duì)列長(zhǎng)度,qc存儲(chǔ)循環(huán)列表的信息,type 表示餐桌類型,qc[type]就是存儲(chǔ)該類型的循環(huán)列表,循環(huán)隊(duì)列長(zhǎng)度公式(tail-head+ maxn)% maxn,因此①答案為(tail[type] - head[type]+ maxn) %maxn。②輸出安排就餐情況。變量 i表示每種桌型,安排座位的條件有兩個(gè),一是這種桌型有客人來(lái),即 qc[i]隊(duì)列不為空;二是這種桌型有空位,tables 調(diào)用 checktable(i)函數(shù),獲取空位列表,因此②處的答案為 len(tables) > 0 and head[i] != teal[i]。浙江省十校聯(lián)盟 技術(shù)試題卷 第 13 頁(yè) 共 13 頁(yè) 展開更多...... 收起↑ 資源預(yù)覽 縮略圖、資源來(lái)源于二一教育資源庫(kù)