資源簡介 第2章 算法與程序實現 綜合訓練卷 2021—2022學年 人教中圖版(2019)高中信息技術必修一一、選擇題1.某VB程序段如下: s = "Hello World" s1 = "" n = Len(s) For i = 1 To n \ 2 If Mid(s, i, 1) > Mid(s, n - i + 1, 1) Then s1 = s1 + Mid(s, i, 1) Else s1 = Mid(s, n - i + 1, 1) + s1 End If Next i Text1.Text = s1執行該程序段后,在文本框Text1中顯示的是( )A.WlleH B.oorld C.dlroo D.orldo2.某算法的部分流程圖如右圖所示,執行這部分流程圖后,變量 c 的值是( )A.107 B.106 C.133 D.333.某算法的部分流程圖如圖所示,執行這部分流程圖,依次輸入12,20,-15,45,9,則輸出b的值是( )A.12 B.-15 C.45 D.94.某算法的部分流程圖如圖所示,執行這部分流程,若輸入n的值為20,則輸出a,b的值分別是( )A.12,10 B.10,9 C.9,15 D.9,105.以下流程圖描述的算法執行結果是( )。A.9,6 B.6,54 C.6,9 D.9,546.下列VB表達式中,能生成一個[20,50]之間的隨機整數的是( )A.Int(Rnd*51)+20 B.Int(Rnd * 31)+ 20C.Int(Rnd * 30)+ 20 D.Int(Rnd*31)+ 197.下列 VB 表達式的結果與其他表達式不相同的是( )A.2021 Mod 100 \ 10 B.Abs(1-Int(3.6))C.Val(Mid(“2021”,3,1)) D.Sqr(Len(“2021”))8.以下是正確的字符串( )A.‘abc”ab” B.“abc”ab’ C.“abc”ab” D.“abc\”ab”9.程序如下a=int(input())b=int(input ())c=a+bprint(a,’+’,b,’=’,c)通過鍵盤分別輸入23和3,運算結果是( )A.26B.23+3=26C.’23’+”3”=26D.24+4=2810.程序的基本結構有順序結構、選擇結構和( )。A.模塊結構 B.層次結構 C.循環結構 D.邏輯結構11.對于一個正整數a,要判斷它是奇數還是偶數,下列敘述錯誤的是______。A.若a mod 2=0,則a是偶數 B.若a \ 2=0,則a是奇數C.若a mod 2=1,則a是奇數 D.若int(a/2)=a/2,則a不是奇數12.某算法的流程圖如圖所示,執行該算法后,輸出的結果是( )A.50 B.20 C.210 D.513.用流程圖描述算法時,表示“處理”的圖形是( )A. B. C. D.二、填空題14.閱讀程序,寫出運行結果a=[ ]for i in range(5):a.append(i*i)s=a[3]+a[4]print (s)運行結果:_______15.下面的程序段運行后的結果為__________s=0for i in range(1,8,3):s=s+iprint(s)16.下面程序運行結果是(___)a=10s=0if a>5:s=s+aprint(s)17.項目學習:解密盛唐時期詩人關系(項目情境)唐代詩人史傳有名有姓者不下千余人,他們組成了大大小小不同的朋友圈。有的因為詩風接近,如李白代表的浪漫主義、杜甫代表的現實主義、王維代表的田園山水、芩參代表的邊塞詩風;有的因為年齡大體相近,如盛唐時期的李白、杜甫、賀知章等;有的因為政見相近,如韓愈作為古文運動的領袖級人物,當時很多文人墨客以進入他的朋友圈為榮。在盛唐時期有這樣一個朋友圈,他們的友誼跨越數十年,詩人之間通過互動詩歌,表達抒發情感,是他們朋友圈的一種表現方式,用計算機來分析這個時代的唐詩,就會發現詩人之間有著你意想不到的千絲萬縷的關系。學校某研究性學習小組利用大數據分析技術,通過對詩詞分析,繪制盛唐時期幾位詩人(杜甫、李白、王維、孟浩然……)之間的社交關系網絡圖,試圖推測哪位詩人是同時代詩人的核心,哪位詩人的影響最大,從而更好地學習、理解唐詩。(項目準備)為完成項目,需要確定主題、目標、制訂規劃等各項工作。在此不一一展示。明確的主題—盛唐時期的詩人及詩詞分析和詩人社交關系網絡圖(項目實施)項目研究主要以詩人詩作為依據。具體實施過程如下:(一)明確需要采集的數據選擇合適的采集途徑、工具和方法。全唐詩一共四萬多首,分析采集相關數據的條件:①盛唐時期;②詩人、詩人之間經常稱呼對方的別名;③考慮到同名同姓的問題,因此還需要詩人的生卒年的信息。根據要求,完成答題。(1)全唐詩數量較多,一共四萬多首,來源分散,存儲在互聯網不同的服務器與各客戶終端。從大數據存儲與計算的角度來看,由此可知大數據具有____________的特征。(單選)A.精確讓位于模糊B.價值密度低C.分布式存儲D.變化速度快(2)網絡上如此海量的關于唐詩的數據,有文字、圖片、視頻、音頻等。這些數據種類和格式也不一致,表明各種____________數據共存于網絡中。(多選)A.結構化B.半結構化C.非結構化D.網狀結構(3)面對繁雜的數據,學習小組決定研究解密盛唐時期詩人關系,并利用計算機程序從網絡中采集詩人、別名等相關的文本數據,并以一定的數據結構存儲形成盛唐詩庫。存儲數據主要有兩種方式,一種是____________,一種是數據云存儲。你建議學習小組采用____________數據存儲方式,理由是___________________。(二)利用 Python程序采集、整理、分析數據。第一步,從互聯網中篩選出符合條件的詩人及詩作等文本,整理并形成盛唐詩庫;第二步,確定人物關系分析策略,即從唐詩庫中搜索、統計詩人或別名的引用次數,確定二人之間的疏密關系,規則是詩的標題和正文中只要提到過對方,那么兩者之間的引用關系加1,若一首詩中提到多次對方,只算一次引用;第三步,編寫程序并調試驗證。用爬蟲程序段(如下圖所示)采集數據。根據要求,完成答題。base_url=’http://www./shici/lis\ t?cate=%E5%94%90%E8%AF%97%E4%B8%89%E7%99%BE%E9%A6%96&p=’ import requests import parsel import re headers={ ‘User-Agent:’Mozilla/5.0(Windows NT 10.0;WOW64)AppleWebKit/537.36(KHTML, like Gecko) } for i in range(1,3): the_ url=base _url+str(i) response=requests get (the _url, headers=headers) html_ str=response. text html= parsel. Selector(html_str) title_url= html. xpath(’//div[@class="poem_ content"]’).extract() f=open("poet. txt","a" ) for poet in title_url: the_peom=urls=re findall(<div class="poem_content">(.* ?)’, poet) f write(str(the_ peom[0])) f. write("\n") f.close()(4)使用爬蟲程序獲取文本數據并形成唐詩庫文件,所使用的數據采集方法為____________(選填:系統日志采集法、網絡數據采集法其他數據采集方法)。閱讀程序可知每首詩存放于列表poem[]中(以唐詩“春曉”為例如下表),采集后的數據保存在poet.txt文件中,該文件是一個_________________(選填:數據庫文件、文檔文件、圖像文件、網頁文件)。該數據采集方法可以將非結構化數據從網頁中抽取出來,將其存儲為統一的數據文件,并以_______________________的方式存儲(選填:結構化、半結構化)Poem[0] Poem[1] Poem[2] Poem[3]“春曉” “唐” “孟浩然” “春眠不覺曉,……,花落知多少”。(5)以詩人甲、乙為例解密二人關系,完成答題。數據處理過程中要運用一定的分析方法對大量無序的數據進行整理、分析挖掘數據內在的結構和規律,從而提取有價值的、有意義的數據。數據分析一般包括特征探索、關聯分析、聚類與分類等。讓計算機搜索遍歷唐詩庫中有關甲、乙兩位詩人的詩文,統計兩位詩人或別名相互的引用次數,找尋二人之間的關聯。這是運用了__________________(選填:特征探索、關聯分析、聚類與分類)方法進行數據分析,也是__________________(選填:枚舉、二分查找、排序)算法思想去求解這一問題的體現。(6)編制計算機程序解決問題的過程中,__________________是編程的核心,是解決問題的方法和步驟。選用Python程序設計語言編寫程序,Python屬于__________________(選填:分析問題、設計算法、編寫程序、調試運行、機器語言、匯編語言、高級語言)。圖a示意,使用__________________(選填:自然語言、流程圖、偽代碼)進行算法描述,且運用循環控制結構嵌套了__________________控制結構,如果要跳出本次循環體的執行,應使用__________________語句實現跳轉。(7)閱讀程序(圖b示意),程序中以“#”開頭的語句,其作用是_______________,程序調試完成,通過“另存為”保存文件,文件后綴名為_____________。圖a import gushi #從txt文檔中讀取古詩 poems=gushi. readDatat()#用poems存儲所有的唐詩jia=input("請輸入詩人甲:") yi=input("請輸入詩人乙:") gx=0 for poem in poems:#逐一列舉:poem代表其中一首古詩 if jia in poem[2]and(yi in poem[0]or yi in poem[3]): gx=gx+1 #問題的解 print(jia,'"寫給",yi,"的古詩共",gx,"首") 圖b(三)分析數據進行可視化表達并推測盛唐時期詩人關系。(8)解密盛唐時期詩人關系。數據的可視化以易于理解的方式展示和詮釋數據之間的關系、趨勢與規律等,使人們更好地理解數據。從常用和實用的維度,數據可視化的呈現類型主要分為探索型和解釋型,其中_________型可以幫助人們發現數據背后的價值,_________型則把數據簡單明了地解釋給人們(選填:探索、解釋)。數據分析類型不同可視化呈現方式也不同,如關于趨勢的分析,可用_________類型的圖表呈現,關于比例的分析,可用_________類型的圖表呈現關于關系的分析,可用_________類型的圖表呈現。(9)解密盛唐時期詩人關系。學習小組選擇用網絡關系圖呈現盛唐時期詩人社會網絡關系(如圖所示)。圖中箭頭表示詩人之間的引用關系,如李白引用了賀知章,那么就有李白指向賀知章箭頭;箭頭的粗細程度則表示了詩人之間引用關系的強弱,如李白引用孟浩然的數量達4次,箭頭就要粗一些。________(10)解密盛唐時期詩人關系。觀察圖示,從繪制的盛唐的詩人社交關系網絡圖,嘗試推測哪位詩人是盛唐詩人的核心,哪位詩人的影響最大,請簡要闡述。(要求100字左右)________三、判斷題18.一個算法可以用多種程序設計語言來實現。(___)19.計算機程序解決問題的過程:①分析問題、②設計算法、③編寫程序、④調試運行、⑤檢測結果。(___)20.編寫程序的任務就是用一種計算機程序設計語言來描述問題求解的算法。(_____)21.列表中的元素可以是不同數據類型(_____)【參考答案】一、選擇題1.D2.B3.C4.D5.A6.B7.A8.D9.B10.C11.B12.A13.C二、填空題14.2515.1216.1017.C ABC 數據本地存儲 云存儲 方便文件共享,只需聯網就可讀取文件,可以脫離本地計算機保存文件。 網絡數據采集法 文檔文件 結構化 關聯分析 排序 設計算法 高級語言 流程圖 判斷循環 break 解釋、注釋 .py 探索 解釋 折線圖、柱形圖、柱線混合圖餅狀圖、堆疊面截圖、百分比圓環圖、圈圖 散點圖、雷達圖、網絡關系圖、詞云圖、數據地圖、動態勢力圖、3D動態顯示圖 如局部圖b所示。由引用次數可知,從社交關系從深至淺來說,杜甫的好友依次是李白、孟浩然、王維;李白的好友是孟浩然、杜甫、賀知章;賀知章沒有好友;王維的好友只有孟浩然;孟浩然的好友只有王維。 如局部圖b所示。由被引用次數可知,李白的被引用次數是12,孟浩然的被引用次數是8,杜甫的被引用次數是3,王維的被引用次數是2,賀知章的被引用次數是2。故李白是是盛唐詩人的核心;從引用別人的次數來看,杜甫的引用別人的次數是15,李白的引用別人的次數是9,維的引用別人的次數是2,孟浩然的引用別人的次數是1,王賀知章的引用別人的次數是0。故杜甫的影響最大。三、判斷題18.√19.對20.對21.對 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫