2017年10月江蘇省計算機二級VB考試真題1 |
第1套 (2017秋1) 1、 移動通信指的是處于移動狀態的對象之間的通信,最有代表性的是手機——個人移動通信系統。下列有關移動通信的敘述中,錯誤的是___________。 A. 基站是個人移動通信系統的重要組成部分,它負責與其周圍區域內所有手機進行通信 B. 無論是最早的第1代個人移動通信,還是處于發展中的5G,均是采用數字通信技術 C. 第2代移動通信以語音傳輸技術為核心,但可提供收發短信息等數據量很少的數據業務 D. 目前智能手機分為多種產品類型,全網通手機一般可以接入國內三大運營商的所有網絡 B 解析: 最早的第1代個人移動通信采用模擬通信技術。 4 2、 數十年來,硬盤一直是計算機中最重要的外存儲器。下列有關硬盤的敘述中,錯誤的是_________。 A. 通常硬盤的盤片兩面均可記錄數據,因而盤片兩側各有一個磁頭 B. 所有的硬盤均有多個盤片組成,一般不會僅使用一個盤片,盤片數越多則容量越大 C. 硬盤盤片直徑一般為3.5、2.5、1.8英寸等,臺式PC通常采用3.5或2.5英寸硬盤 D. 目前內置硬盤的接口大多數為SATA接口,它以告訴串行方式傳輸數據 B 解析: 硬盤一般由1到4個或1到5個盤片組成,盤片宜少不宜多,單碟盤片的容量越大越好。 2 3、 下列有關信息、信息技術、信息產業、信息化的敘述中,錯誤的是_________。 A. 信息的表現形式多種多樣,其分類也不計其數 B. 所有的信息技術均采用電子技術(含激光技術)進行信息的收集、傳遞、加工、存儲等 C. 信息產業是戰略性先導產業,其科技創新含量高,知識、智力和技術密集 D. 信息化是當今世界發展的大趨勢,是我國增強國際競爭力和提高綜合國力的關鍵之一 B 解析: 信息技術的歷史非常長,主要是為了提高人們的信息器官功能,協助人們進行信息處理的技術,現代信息技術采用電子技術(含激光技術)進行信息的收集、傳遞、加工、存儲等 。 1 4、 根據不同的應用需求,數字音頻采用的編碼方法有多種,文件格式也各不相同。下列的音頻格式中,由美國Dolby公司開發的、在DVD和數字電視等領域廣泛使用的是______ A. WAV B. MP3 C. AC3 D. ACC C 解析: MP3是一種音頻壓縮技術,由于這種壓縮方式的全稱叫MPEG Audio Layer3,所以人們把它簡稱為MP3;WMA是微軟制訂的音頻壓縮文件格式,比mp3標準晚,比mp3還小,比mp3音質還好 , 采用未壓縮編碼方式;美國杜比公司開發的AC3, 在DVD和數字電視等領域廣泛使用;相對于mp3,AAC格式的音質更佳,文件更小。 。 5 5、 主機上用于連接I/O設備的各種插頭、插座,統稱為I/O接口。下列I/O接口中,近年來生產的大多數筆記本電腦通常不具有的接口(或者說通常不配備的接口)是______ A. PS/2 B. USB C. SATA D. VGA A 解析: PS/2是早期連接有線鼠標的接口,現在主要使用USB接口了 。 2 6、 數值、文字、圖像、聲音等不同的信息在計算機中的表示方法是不同的。下列相關敘述中,錯誤的是______。 A. 數值為負的整數在計算機中通常采用“反碼”的方法進行表示 B. 文字由一系列“字符”構成,每個字符通常使用1-4個字節的二進制編碼表示 C. 黑白圖像在數據庫時,每個像素一般采用8位二進制無符號整數表示 D. 聲音信息在數字化時,每個取樣的樣本一般使用8位、12位、14位或16位二進制數表示 A 解析: 數值為負的整數在計算機中通常采用“補碼”的方法進行表示 。 1 7、 字符集及其編碼是計算機中表示、存儲、處理和交換文本信息的基礎,但由于歷史原因,目前不同系統或應用中使用的字符編碼方案并不統一。下列有關漢字編碼的敘述中,錯誤的是______ A. 在我國最早頒布的漢字編碼字符集GB 2312僅包含6000多個漢字,其中沒有繁體漢字 B. 無論是GB 2312、GBK,還是GB 18030,其中西文字符均為單字節編碼,漢字均為雙字節編碼 C. 目前在互聯網的許多應用中采用UTF-8編碼,該編碼方案采用可變長度字符編碼 D. 目前在Windows操作系統中常使用UTF-16編碼,在該編碼方案中漢字編碼使用2個字節表示 B 解析: GB 2312中字符全部采用雙字節 。 5 8、 操作系統是計算機中重要的一種系統軟件,應用軟件必須在操作系統的管理和支持下運行。下列有關操作系統的敘述中,錯誤的是______ A. 操作系統承擔著資源分配和調度等任務,以保證程序正常有序地運行 B. 目前大多數操作系統都向用戶提供圖形用戶界面,它以窗口形式顯示程序運行狀態 C. 操作系統通常由操作系統內核和許多配套軟件、程序庫等組成 D. 所有的計算機都必須安裝操作系統才能工作,操作系統的運行不依賴任何其他軟件 D 解析: 操作系統啟動前依賴于底層的BIOS程序,通過引導加載程序將操作系統加載到內存中并運行。 3 9、 按照軟件權益的處置方式來分類,軟件可以分為商品軟件、共享軟件、自由軟件等多種類型,下列相關敘述中,錯誤的是______ A. 所有的商品軟件都需要用戶付費購買其使用權,且軟件升級均需要再次付費 B. 共享軟件通常是"買前免費試用"的具有版權的軟件,過了試用期則付費可繼續使用 C. 自由軟件倡導的軟件"非版權"原則,允許拷貝、修改和自由傳播 D. 大多數開源軟件都是多人合作,義務開發的成果,其發展促進了軟件共享和技術創新 A 解析:商品軟件升級有的需要付費,有的不需要付費。 3 10、 隨著互聯網技術和應用的發展,Web已經從信息發布與查詢平臺發展成為多種信息處理應用的平臺,下列有關敘述中,錯誤的是_______ A. 靜態網頁通常指那些內容基本不變的網頁,除非網頁作者(發布者)對其修改并重新發布 B. 動態網頁的內容通常不是預先確定的,而是根據用戶請求提供的參數實時生成的頁面 C. Web平臺上運行的信息處理系統(如淘寶、京東等)都是使用動態網頁技術開發實現的 D. 目前所有的動態網頁都是使用微軟公司的ASP.NET技術開發而成的 D 解析:動態網頁技術有多種,如Asp.net, Php,Jsp等 。 3
(單選題) 下面關于自定義函數的說法,不正確的是_________。 A. 函數既可以嵌套定義,也可以嵌套調用 B. 在函數體中可以多次給函數名賦值 C. 如果使用Call語句調用函數,將放棄函數的返回值 D. 執行函數體中的Exit Function語句,將會退出該函數,返回函數的調用處 A 解析: 函數不可以嵌套定義,可以嵌套調用 。 7 下列四條語句,能在文本框T1中顯示出“2017”字樣的有_________條語句。 A. 1 B. 2 C. 3 D. 4 C 解析: 20+”17”返回的結果是37,因為20是數值型,”17”是字符型,兩者通過+連接在一起時,會強制將字符型”17”轉換為數值型然后加在一起; 20 & “17”這里的&是強制連接符,會強制將20與17連接在一起,所以是2017; ”20”+”17”返回2017,兩者因為都是字符型,所以這里的+號是連接的意思; 17+”2e3” 因為17是數值型,”2e3”是字符型,兩者通過+連接在一起時,會強制將字符型”2e3”轉換為數值型,因為e在VB中表示10的次方,所以2e3就是2×10^3=2000,然后加上17,所以是2017 。 2 若有數組聲明:Dim a(3,-2 To 2)As Integer,則a數組共有______個元素。 A. 6 B. 12 C. 15 D. 20 D 解析:因為默認情況下,數組的下標從0開始, 所以a數組的第一維是從0到3,第二維是-2 to 2,所以是 a(0,-2), a(0,-1),a(0,0),a(0,1),a(0,2), a(1,-2), a(1,-1),a(1,0),a(1,1),a(1,2), a(2,-2), a(2,-1),a(2,0),a(2,1),a(2,2), a(3,-2), a(3,-1),a(3,0),a(3,1),a(3,2)共有20個元素。 6 以下關于名為win的Sub過程,定義正確的是__________。 A. Private Sub win(a As String * 3 , b() As Integer) B. Private Sub win(ByVal a As String , ByVal b() As Integer) C. Sub win(a As String , b(10) As Integer) D. Sub win(a() As String * 3 , b() As Integer) D 解析:A錯, 形參是定長字符串時只能是數組,不允許變量;B錯,b()是數組,作為形參時,不允許前面加Byval; C錯,數組作為形參時只能是b() 這樣寫法,不允許里面加常量。 7 1. (單選題): a為整型變量且a = 2.5,則表達式Len(Str(12.3)) + Len(CStr(4.5)) + Len(a) + a的值為__________。 A. 10 B. 11 C. 12 D. 13 C 解析:Str的作用是將數值型轉換為字符型,并保留符號位,通過Str(12.3)將數值12.3轉換為字符 12.3,注意轉換后 12.3的前面有一個空格,所以Len(Str(12.3))的返回值是5, CStr(4.5)直接將數值型4.5轉換為字符型4.5,不保留符號位,所以Len(CStr(4.5))的返回值是3,因為a是整型,不是字符型, Len(a)返回a所占的字節數,所以是2,如果a是double型,Len(a)返回結果是8,因為a是整型,當執行a=2.5時,實際賦值給a是2,因為在VB中有個特殊約定,”當小數點只有1位時,如果個位數是偶數,則五舍六入,其他情況都是四舍五入”,題目如果改為是a=2.51那么a就是3.。 2 執行下面程序,單擊窗體,窗體上第一行顯示的內容是____________ ,最后一行顯示的內容是____________ 。 Option Explicit Private Sub Form_Click() Dim i As Integer, n1 As Integer, n2 As Integer n1 = 10: n2 = 1 For i = n1 To n2 Step -2 Print "8"; n1 = n1 - 1 n2 = n2 + 1 i = i - 1 Next i Print Print i Print n2 End Sub 8888@5 解析:因為文字描述不如視頻清晰,具體見視頻詳細講解。 5 執行下面程序,單擊窗體,則窗體上顯示的第二行內容是____________ ,第三行內容是____________ 。 Option Explicit Private Sub Form_Click() Dim n As Integer n = 1 Call Star(n) End Sub Private Sub Star(n As Integer) Dim i As Integer If n < 4 Then Call Star(n + 1) Print n; For i = 1 To n Print "*"; Next i Print End If End Sub 2**@1* 解析: 因為文字描述不如視頻清晰,具體見視頻詳細講解。 7 執行下面程序,單擊命令按鈕Command1,則數組元素a(1,2)的值是____________ ,a(2,1)的值是____________ ,a(3,3)的值是____________ 。 Option Explicit Option Base 1 Private Sub Command1_Click() Dim i As Integer, j As Integer, k As Integer, a() As Integer k = 3: ReDim a(k, k) For i = 1 To k a(1, i) = (k - i + 1) ^ 3 Next i For i = 2 To k For j = 2 To k a(i, j) = a(i - 1, j - 1) Next j a(i, 1) = a(i - 1, k) Next i For i = 1 To k For j = 1 To k Print a(i, j); Next j Print Next i End Sub 8@1@27 解析: 因為文字描述不如視頻清晰,具體見視頻詳細講解。 7 執行下面程序,單擊命令按鈕Command1,則窗體上顯示的第一行內容是____________ ,第二行內容是____________ ,第三行內容是____________ 。 Option Explicit Option Base 1 Private Sub Command1_Click() Dim n As Integer, i As Integer, st As String Dim ary() As Integer st = "CAD" For i = 1 To Len(st) ReDim Preserve ary(i) ary(i) = Asc(Mid(st, i, 1)) - 64 Next i Call sortary(ary) Print st For i = 1 To UBound(ary) Print Chr(ary(i) + 64); n = n * 10 + ary(i) Next i Print Print n End Sub Private Sub sortary(sort() As Integer) Dim i As Integer, j As Integer, temp As Integer For i = 1 To UBound(sort) For j = 1 To UBound(sort) - i If sort(j) < sort(j + 1) Then temp = sort(j) sort(j) = sort(j + 1) sort(j + 1) = temp End If Next j Next i End Sub CAD@DCA@431 解析: 因為文字描述不如視頻清晰,具體見視頻詳細講解。 7
1(完善程序): 【要求】 1)打開T盤中“P1.vbp”文件,完善程序后,直接保存所有文件。 【題目】 下面程序的功能是,求出多個數(最多6個數)的最大公約數。 Option Explicit Option Base 1 Private Sub Command1_Click() Dim arr() As Long, n As Integer, i As Integer Dim m1 As Integer, n1 As Integer n = Val(InputBox("求幾個數的最大公約數?(最多求6個數)")) If n > 6 Then Exit Sub (1) For i = 1 To n arr(i) = Val(InputBox("請輸入第" & i & "個數:")) Picture1.Print arr(i); Next i Picture1.Print (2) For i = 2 To n m1 = arr(i) Call gcd(m1, n1) If n1 = 1 Then Exit For Next i Picture1.Print "以上"; n; "個數的最大公約數是:"; n1 End Sub Private Sub gcd(a As Integer, b As Integer) Dim r As Integer r = a Mod b Do While (3) a = b b = r (4) Loop End Sub Redim arr(n)@ n1=arr(1)@ r<>0@ r=a mod b 參考答案 (1)Redim arr(n) (2)n1=arr(1) (3)r<>0 (4)r=a mod b 2(改錯題): 【要求】 (1)打開T盤中“P2.vbp”文件,按參考界面形式編輯窗體界面,改正程序中的錯誤后,直接保存所有文件; (2)改錯時,不得增加或刪除語句,但可適當調整語句位置。 【題目】本程序的功能是,生成包含10個元素的按升序排列的數組,且數組元素是不含重復數字的三位隨機數。 Option Explicit Option Base 1 Private Sub Command1_Click() Dim a(10) As Integer, temp As Integer, n As Integer Dim i As Integer, j As Integer Do temp = Int(Rnd * 900 + 100) If judge(temp) Then For i = 1 To n If temp < a(i) Then Exit For Next i If i <= n Then For j = n To i a(j + 1) = a(j) Next j a(i) = temp Else a(n + 1) = temp End If n = n + 1 End If Loop While n <= 10 For i = 1 To 10 Text1.Text = Text1.Text & a(i) & " " Next i End Sub Private Function judge(n As Integer) As Boolean Dim i As Integer, j As Integer, k As Integer, a() As Integer Do k = k + 1 ReDim Preserve a(k) a(k) = n Mod 10 n = n \ 10 Loop Until n <= 0 For i = 1 To k For j = i + 1 To k If a(i) = a(j) Then Exit For Next j Next i judge = True End Function For j = n To i修改為For j = n To i Step -1@ Loop While n <= 10修改為Loop While n < 10@judge(n As Integer)修改為judge(ByVal n As Integer)@ If a(i) = a(j) Then Exit For修改為If a(i) = a(j) Then Exit Function 參考答案 (1)For j = n To i修改為For j = n To i Step -1 (2) Loop While n <= 10修改為Loop While n < 10 (3)judge(n As Integer)修改為judge(ByVal n As Integer)@ (4)If a(i) = a(j) Then Exit For修改為If a(i) = a(j) Then Exit Function 3(編程題): 【要求】 (1)打開T盤中“P3.vbp”文件,根據題目要求編寫和調試程序后,直接保存所有文件; (2)程序代碼書寫應呈鋸齒形,否則適當扣分。 【題目】 編寫程序,找出指定范圍內的所有半素數。半素數,是指可以表示為兩個素數乘積的自然數。 【編程要求】 (1)程序參考界面如圖所示,編程時不得增加或減少界面對象或改變對象的種類,窗體及界面元素大小適中,且均可見; (2)運行程序,先在文本框中輸入查找的范圍,然后單擊“查找”按鈕,將指定范圍內所有的半素數按要求的格式輸出到列表框中;單擊“清空”按鈕,將文本框和列表框清空,并將焦點設置到“從”文本框上;單擊“退出”按鈕,結束程序運行; (3)程序中至少應定義一個通用過程,用于判斷整數是否是素數。 Option Explicit Option Base 1 Private Sub Command1_Click() Dim n1 As Integer, n2 As Integer Dim i As Integer, j As Integer n1 = Text1.Text n2 = Text2.Text For i = n1 To n2 For j = 2 To Sqr(i) If i / j = Int(i / j) Then If prime(j) And prime(i / j) Then List1.AddItem i & "=" & j & "*" & i / j End If End If Next j Next i End Sub Private Sub Command2_Click() Text1.Text = "" Text2.Text = "" List1.Clear Text1.SetFocus End Sub Private Sub Command3_Click() End End Sub Private Function prime(n As Integer) As Boolean Dim i As Integer For i = 2 To Sqr(n) If n Mod i = 0 Then Exit Function Next i prime = True End Function |