資源簡介 粵教版(2019) 必修1第四章 程序設計 綜合復習訓練一、選擇題1.range(1,10)的取值范圍是( )。A.1到10 B.1到9 C.0到10 D.0到92.統計字符串s中的升序段個數(例如47923123,則滿足條件的升序段是479,23,123)。編寫的部分VB程序段如下:s ="47923123"f=True:n=Len(s):m=0For i=2 To nIf Mid(s,i,1)>Mid(s,i-1,1)ThenElseEnd IfNext iText1. Text="升序段個數有"+Str(m)上述程序段中方框處可選語句為:①f = True②f = False③If f Then m=m+1則(1)(2)(3)處語句依次為( )A.①②③ B.②③① C.③②① D.③①②3.運行下列Python程序i=1s=1while ①:s=s*ii+=2print(s)當輸出結果為105時,則①處應填入( )A.i<=7 B.i<7 C.i>=7 D.i>74.依據選擇排序思想:設計一個對數組a進行剔除重復數據后升序排序的程序。實現該功能的VB程序段如下:i=1bottom=n 'n為a數組元素的個數Do While i<=bottom-1k=iFor j=bttom Toi+1 Step-1If a(j)k=jElseIf a(j)=a(k)ThenIf (1) Then (2) Else (3)bottom=bttom-1End IfNext jIf k <>I Then t=a(k): a(k)=a(i): a(i)=ti=i+1Loop上述程序中方框處可選語句為:①k=j②k=bottom③a(j)=a(bottom)則(1)、(2)、(3)處語句依次是( )A.②①③ B.②③① C.③①② D.①②③5.有以下 VB 程序段:a(1) = 58: a(2) = 38: a(3) = 46: a(4) = 40: a(5) = 58a(6) = 30: a(7) = 48: a(8) = 50: a(9) = 36: a(10) = 56For i = 1 To 10b(a(i) mod 10) = b(a(i) mod 10) + 1Next is=""For i = 0 To 9If b(i) > 0 Then s = s+ " " +str(i)+ ":" + Str(b(i))Next i數組 b 各元素初值為 0,執行該程序段,s 的值是( )A.3:4 4:3 5:4 B.8:4 6:3 0:3C.5:4 4:3 3:4 D.0:3 6:3 8:46.下列選項中,對變量a的賦值與其他三項不等價的是( )A.a= abs(a-b)B.if a>b Then=a- b Else a=b-aC.If a> bThen a=a-b If aD.a= a-b If a<0 Then a=-a7.若變量a、b的值分別是2、4,則a+b/a-b的值是( )A.-3 B.0 C.4 D.-18.某算法的部分流程圖如圖所示:若要用VB語言實現該部分算法,下列代碼正確的是( )A. B. C. D.9.下面的程序段運行后的結果為( )s=0for i in range(1,6,2):s=s+iprint(s)A.15 B.10 C.12 D.910.有如下程序段:Function delStr(S As String, m As Integer) As StringDim n As Integer : n = Len(S)If m < 1 Or m > n Then delStr = "輸入位置有誤!"If m = 1 Then delStr = Mid(S, 2, n - 1)If m < n Then delStr = Mid(S, 1, m - 1) + Mid(S, m + 1, n - m)If m = n Then delStr = Mid(S, 1, n - 1)End FunctionPrivate Sub Command1_Click()Dim S As String : Dim i As IntegerS = Text1.TextFor i = 1 To 10 Step 2S = delStr(S, i)Next iText2.Text = SEnd Sub文本框 Text1 中輸入 Happybirthday,執行該程序段,文本框 Text2 中顯示的是( )A.apybrtda B.apbrhday C.Happybirhday D.day11.在Python中,以下程序運行后的結果是( )(1)import turtle as mypen(2)for x in range(40,0,-10):(3) mypen.circle(x)(4) mypen.done()A. B. C. D.12.有如下VB程序段:Dim d(1 to 5)as integer,i as integerDim flag as Boolean,j as integer‘給數組元素d(1)至d(5)賦初值為1,代碼略RandomizeFor i=1 to 5J = l:flag = Trued(i) = int(Rnd*9)Do while j< =i-1 and flag = Trued(i) = int(Rnd*5+1)If d(i) = d(j) then i=i-l:flag = Falsej = j+1LoopNext i運行程序后,數組中的數據值可能是( )A.1 3 4 5 6 B.3 5 4 1 1 C.8 3 1 2 5 D.1 2 6 2 1二、填空題13.閱讀程序。分析代碼并回答問題。list=['a','b','c','d','e','f','g']list1=[]list2=[]for i in range(7):if i%2==0:list1.append(list[i])else:list2.append(list[i])print(list1)print(list1)(1)list 的數據類型是 _______。(2)list中的元素的數據類型 ________。(3)list1=[]的作用是 _______。(4)for i in range(7)語句中,i 的實際數據范圍是從_____到 ____。(5)append(list[i])的作用是______。14.numpy是一個科學計算包,其中包括很多________,如________、矩陣計算方法、________、線性代數等。15.根據以下程序代碼完成下列小題。程序描述: 所謂角谷猜想,是指對于任意一個正整數,如果是奇數,則乘3加1,如果是偶數,則除以2,得到的結果再按照上述規則重復處理,最終總能夠得到1。如,假定初始整數為5,計算過程分別為16、8、4、2、1。程序要求輸入一個正整數(不為1),將經過處理得到1的過程輸出來。代碼如下:x=int(input('輸入一個正整數:'))while ①if ②x=x/2③el se:④③if x==1:⑤①處的語句是(_______), ②處的語句是(______),③處的語句是(_____),④處的語句是(______),⑤處的語句是(_____)。(1)A.x>1 B.x>2 C.x!=1: D.x!=0:(2)A.x%3=0: B.x%2=0: C.x%3==0: D.x%2==0:(3)A.print(‘x/2’) B.print(‘x’) C.print(x) D.print(x/2)(4)A.x= x/2 B.x= x/2+1 C.x=x*3+1 D.x=3x+1(5)A.pass B.exit C. continue D.break16.用Python語言實現加密算法時,明文和密文都被抽象為_________類型的數據。三、判斷題17.若n=6,m=3,則表達式m+3==n and n-3>=m的值為true。(______)18.常見的順序結構語句有輸入語句、輸出語句和賦值語句。(______)19.在 Python語言環境下,表達式13%2+7//2的值為4.5。 (_____)20.python語言是一種面向對象的解釋型計算機程序設計語言,發明于1989年。目前,python已經成為最受歡迎的程序設計語言之一。 (_____)【參考答案】一、選擇題1.B2.C3.A4.A5.D6.C7.B8.B9.D10.A11.D12.C二、填空題13.列表 字符型 定義一個空的列表 0 6 可以向list中添加元素14.數學函數 矢量運算 三角函數15.C D C C D16.字符串三、判斷題17.正確18.正確19.錯誤20.對 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫