江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
2017年10月江蘇省計算機二級VB考試真題1

1   (20171)

1、  移動通信指的是處于移動狀態的對象之間的通信,最有代表性的是手機——個人移動通信系統。下列有關移動通信的敘述中,錯誤的是___________

A.   基站是個人移動通信系統的重要組成部分,它負責與其周圍區域內所有手機進行通信

B.   無論是最早的第1代個人移動通信,還是處于發展中的5G,均是采用數字通信技術

C.   2代移動通信以語音傳輸技術為核心,但可提供收發短信息等數據量很少的數據業務

D.   目前智能手機分為多種產品類型,全網通手機一般可以接入國內三大運營商的所有網絡

B

解析: 最早的第1代個人移動通信采用模擬通信技術。

4

2、  數十年來,硬盤一直是計算機中最重要的外存儲器。下列有關硬盤的敘述中,錯誤的是_________

A.   通常硬盤的盤片兩面均可記錄數據,因而盤片兩側各有一個磁頭

B.   所有的硬盤均有多個盤片組成,一般不會僅使用一個盤片,盤片數越多則容量越大

C.   硬盤盤片直徑一般為3.52.51.8英寸等,臺式PC通常采用3.52.5英寸硬盤

D.   目前內置硬盤的接口大多數為SATA接口,它以告訴串行方式傳輸數據

B

解析: 硬盤一般由14個或15個盤片組成,盤片宜少不宜多,單碟盤片的容量越大越好。

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和數字電視等領域廣泛使用;相對于mp3AAC格式的音質更佳,文件更小。  

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 2312GBK,還是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”字樣的有_________條語句。
(1)T1.Text=20+”17”    (2)T1.Text=20 & ”17”
(3)T1.Text=”20”+”17”  (4)T1.Text=17+”2e3”

A.   1

B.   2

C.   3

D.   4

C

解析: 20+”17”返回的結果是37,因為20是數值型,”17”是字符型,兩者通過+連接在一起時,會強制將字符型”17”轉換為數值型然后加在一起; 20 & “17”這里的&是強制連接符,會強制將2017連接在一起,所以是2017; ”20”+”17”返回2017,兩者因為都是字符型,所以這里的+號是連接的意思; 17+”2e3” 因為17是數值型,”2e3”是字符型,兩者通過+連接在一起時,會強制將字符型”2e3”轉換為數值型,因為eVB中表示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數組的第一維是從03,第二維是-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

以下關于名為winSub過程,定義正確的是__________

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,如果adouble,Len(a)返回結果是8,因為a是整型,當執行a=2.5,實際賦值給a2,因為在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

[email protected]

解析:因為文字描述不如視頻清晰,具體見視頻詳細講解。

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

[email protected]@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

[email protected]@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<>[email protected] 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 [email protected] Loop While n <= 10修改為Loop While n < [email protected](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

 

 

彩票30选5开奖结果