![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
2016年3月江蘇省計(jì)算機(jī)等級(jí)VB真考試卷 |
江蘇省高等學(xué)校計(jì)算機(jī)等級(jí)考試 二級(jí)Visual Basic 考試 (本試卷完成時(shí)間 120 分鐘) 1、 單選題 微電子技術(shù)是以集成電路為核心的電子技術(shù)。在下列有關(guān)集成電路(IC)的敘述中,錯(cuò)誤的是_________。 A. 現(xiàn)代集成電路使用的半導(dǎo)體材料大多數(shù)是硅(Si) B. 目前PC、平板電腦、手機(jī)等所用的集成電路絕大多數(shù)為大規(guī)模或超大規(guī)模 C. 目前PC、平板電腦、手機(jī)等所用的CPU大多數(shù)為國(guó)產(chǎn)IC芯片 D. Moore定律指出,集成電路的集成度平均18-24個(gè)月翻一番 C 解析: 目前PC、平板電腦、手機(jī)等所用的CPU大多數(shù)為國(guó)外CPU芯片 1 2、 聲音在數(shù)字化時(shí)常用的取樣頻率為8kHz、量化位數(shù)為8bits。若聲道數(shù)位2,則每分鐘的數(shù)字聲音數(shù)據(jù)量在未壓縮時(shí)大約是_______________。 A.64KB B.128KB C.1MB D.2MB C 解析:8khz表示8000b/s,計(jì)算公式是:8000*8*2*60=960*8000b=960*1000B=960KB,最接近的是1MB。(注:因?yàn)?/SPAN>1個(gè)字節(jié)=8個(gè)比特,即1B=8b,所以8000b=1000B) 5 3. 目前漢字信息的編碼標(biāo)準(zhǔn)有多個(gè).在下列的敘述中,錯(cuò)誤的是_________。 A.Windows 7不支持Unicode編碼 B.BIG5是一個(gè)繁體漢字字符集 C.GBK收錄了20000多個(gè)漢字 D.GB2312-80共收錄了6000多個(gè)漢字 A 解析:Windows操作系統(tǒng)廣泛支持Unicode編碼 5 4. 在下列有關(guān)數(shù)的進(jìn)制系統(tǒng)的敘述中,不正確的是__。 A.所有信息在計(jì)算機(jī)中的表示均采用二進(jìn)制編碼. B.以任何一種進(jìn)制表示的數(shù),均可精確地用其它進(jìn)制來(lái)表示. C.二進(jìn)制數(shù)的邏輯運(yùn)算有三種基本類(lèi)型,分別為"與"、"或"和"非". D.WindowsXP/7操作系統(tǒng)提供的"計(jì)算器"軟件可以實(shí)現(xiàn)幾種進(jìn)制數(shù)之間的轉(zhuǎn)換. B 解析:十進(jìn)制整數(shù)可以精確的轉(zhuǎn)換為另一個(gè)進(jìn)制,如果是小數(shù)部分,轉(zhuǎn)換時(shí)可能無(wú)法精確轉(zhuǎn)換。 2 5. 下列關(guān)于CPU及指令系統(tǒng)的敘述中,錯(cuò)誤的是_____________。 A.CPU中的ALU可能有多個(gè),有的負(fù)責(zé)完成整數(shù)運(yùn)算、有的負(fù)責(zé)完成浮點(diǎn)數(shù)運(yùn)算 B.目前CPU芯片不僅包含邏輯CPU,往往還包含有高速緩存、存儲(chǔ)控制器等其他一些部件 C.不同指令的操作要求不同,但被處理的操作數(shù)類(lèi)型、個(gè)數(shù)和來(lái)源通常一樣 D.CPU所執(zhí)行的全部指令稱(chēng)為CPU的指令系統(tǒng),通常指令系統(tǒng)中有數(shù)以百計(jì)的不同指令 C 解析: 不同指令的操作要求不同,被處理的操作數(shù)類(lèi)型、個(gè)數(shù)和來(lái)源也不同。 2 6、美國(guó)Adobe公司的Acrobat軟件,使用________文件格式將文字、字型、排版格式、聲音和圖像等信息封裝在一個(gè)文件中,既適合網(wǎng)絡(luò)傳輸,也適合電子出版,得到了廣泛的應(yīng)用。 A.TXT B.DOC C.HTML D.PDF B 解析: PDF文件格式將文字、字型、排版格式、聲音和圖像等信息封裝在一個(gè)文件中 5 7、將一個(gè)部門(mén)中的多臺(tái)計(jì)算機(jī)組建成局域網(wǎng)可以實(shí)現(xiàn)資源共享。在下列有關(guān)局域網(wǎng)的敘述中,錯(cuò)誤的是_________________。 A.局域網(wǎng)必須采用TCP/IP協(xié)議進(jìn)行通信 B.局域網(wǎng)一般采用專(zhuān)用的通信線路 C.局域網(wǎng)可以采用的工作模式主要有對(duì)等模式和客戶(hù)/服務(wù)模式 D.構(gòu)建以太(局域)網(wǎng)時(shí),需使用集線器或交換機(jī)等網(wǎng)絡(luò)設(shè)備,一般不需要路由器 A 解析:局域網(wǎng)分為以太網(wǎng),FDDI網(wǎng)和令牌網(wǎng)等,不同的局域網(wǎng)類(lèi)型采用不同的網(wǎng)卡與不同協(xié)議通信,現(xiàn)在主流的局域網(wǎng)是以太網(wǎng)。如無(wú)線局域網(wǎng)采用IEEE802.11協(xié)議。 4 8. 在下列有關(guān)算法的敘述中,錯(cuò)誤的是_____________。 A.通俗地說(shuō),算法就是解決問(wèn)題的方法和步驟 B.算法總是在執(zhí)行了有限步的操作后終止 C.程序是算法的實(shí)現(xiàn),程序與算法是一一對(duì)應(yīng)的 D.算法解決的往往是一類(lèi)問(wèn)題而不是一個(gè)特定的問(wèn)題 C 解析:程序是算法的具體實(shí)現(xiàn),算法是抽象的,程序是具體的,兩者無(wú)法做到一一對(duì)應(yīng)。 3 9、下列有關(guān)PC機(jī)外部設(shè)備的敘述中,錯(cuò)誤的是_________。 A.掃描儀的工作過(guò)程主要基于光電轉(zhuǎn)換原理,分辨率是其重要性能指標(biāo)之一 B.制作3~5英寸的照片(圖片),數(shù)碼相機(jī)的CCD像素必須在600萬(wàn)以上 C.集成顯卡(指集成在主板上的顯卡)的顯示控制器主要集成在芯片組中 D.存折和票據(jù)的打印,目前主要是采用針式打印機(jī) B 解析: 制作3~5英寸的照片(圖片),數(shù)碼相機(jī)的CCD像素在200到300萬(wàn)就可以滿足要求。 2 10、不同格式的圖像文件,其數(shù)據(jù)編碼方式有所不同,通常對(duì)應(yīng)于不同的應(yīng)用。在下列幾組圖像文件格式中,制作網(wǎng)頁(yè)時(shí)用得最多的是______________。 A.GIF與JPEG B.GIF與BMP C.JEPG與BMP D.GIF與TIF A 解析:網(wǎng)頁(yè)上一般使用GIF與JPEG兩種圖片格式 5
一、選擇題(共10 分,每題2 分) 1. 下列控件中,無(wú)法用于顯示程序運(yùn)行結(jié)果的是 ___1 ___ 。 A.TextBox B.ListBox C.PictureBox D.Timer 2. 下列有關(guān)轉(zhuǎn)換函數(shù)的說(shuō)法中,正確的是 ___2 ___ 。 A.Int 和CInt 函數(shù)的區(qū)別僅在于返回結(jié)果的數(shù)據(jù)類(lèi)型不同 B.Int 和Fix 函數(shù)將非整數(shù)數(shù)據(jù)轉(zhuǎn)換成整數(shù),轉(zhuǎn)換后的結(jié)果類(lèi)型是Long C.在處理正數(shù)時(shí),Int 函數(shù)和Fix 函數(shù)的返回結(jié)果是相同的 D.在處理負(fù)數(shù)時(shí),Int 函數(shù)和Fix 函數(shù)的返回結(jié)果是相同的 3. 數(shù)學(xué)式 A.Log(x) / Log(10) - Cos(30 * 3.14159 / 180) + Abs(x ^ 2 + Sqr(y)) + Exp(x) B.Log(x) / Log(10) - Cos (30) + Abs(x ^ 2 + Sqr(y)) + e ^ x C.Log(x) - Cos(30 * 3.14159 / 180) + Abs(x ^ 2 + Sqr(y)) + Exp(x) D.Log(x) - Cos(30) + Abs(x ^ 2 + Sqr(y)) + e ^ x 4. 下列有關(guān)數(shù)組的說(shuō)法中,錯(cuò)誤的是___ 4 ___ 。 A.若模塊中有“Option Base 1”語(yǔ)句,則該模塊中的數(shù)組的維下界都為1 B.定長(zhǎng)字符串類(lèi)型的數(shù)組也可以作為過(guò)程的形式參數(shù) C.只能在標(biāo)準(zhǔn)模塊中用Public 語(yǔ)句定義全局?jǐn)?shù)組 D.若A 是固定大小數(shù)組,執(zhí)行語(yǔ)句Erase A 后,數(shù)組A 的所有元素被初始化 5. 下列關(guān)于過(guò)程參數(shù)的敘述中,正確的是 ___5 ___ 。 A.符號(hào)常數(shù)名可以出現(xiàn)在定義過(guò)程的形式參數(shù)表中 B.過(guò)程調(diào)用時(shí),與用ByRef 說(shuō)明的形參結(jié)合的實(shí)在參數(shù)不可以是常數(shù)或表達(dá)式 C.在自定義過(guò)程中,用ByVal 說(shuō)明的形參值發(fā)生改變,不會(huì)影響與之結(jié)合的實(shí)參的值 D.VB 對(duì)過(guò)程的形式參數(shù)的類(lèi)型沒(méi)有任何限制 二、填空題(共20 分,每空2 分) 1. 執(zhí)行下面程序,單擊命令按鈕Command1,則窗體上顯示的第一行內(nèi)容是 ___ (1) ___ , 第二行內(nèi)容是 ___ (2) ___ 。 Option Explicit Private Sub Command1_Click() Dim i As Integer, j As Single, k As Integer j = 11 For i = 2 To 10 Step 2.5 j = j - 2.5 If j = Int(j) Then i = i + j Mod 10 Else i = i + 1 End If k = i + j Next i Print i Print k End Sub 2. 執(zhí)行下面程序,單擊命令按鈕 執(zhí)行下面程序,單擊命令按鈕 Command1,則數(shù)組元素 ,則數(shù)組元素 ,則數(shù)組元素 A(1, 2)的值是 ___ (3) ___ 、A(2, 1)的值是 ___ (4) ___ 、A(3, 3)的值是 ___ (5) ___ 。 Option Explicit Option Base 1 Private Sub Command1_Click() Dim A(3, 3) As Integer, K As Integer Dim i As Integer, j As Integer i = 2 j = 1 A(i, j) = 39 For K = 38 To 31 Step -1 If i - 1 = 0 And j - 1 > 0 Then i = 3: j = j - 1 ElseIf i - 1 > 0 And j - 1 = 0 Then i = i - 1: j = 3 ElseIf i - 1 = 0 And j - 1 = 0 Then i = 1: j = 2 ElseIf A(i - 1, j - 1) <> 0 Then j = j + 1 Else i = i - 1: j = j - 1 End If A(i, j) = K Next K For i = 1 To 3 For j = 1 To 3 Text1.Text = Text1.Text & A(i, j) & " " Next j Text1.Text = Text1.Text & vbCrLf Next i End Sub 3. 執(zhí)行下面程序,單擊命令按鈕 執(zhí)行下面程序,單擊命令按鈕 Command1,則 窗體上顯示的第一行內(nèi)容是 ___(6)___ , 最后一行內(nèi)容是 ___(7)___ 。 Option Explicit Private Sub Command1_Click() Dim a As Integer, b As Integer, k As Integer For a = 2 To 3 b = a + 1 k = Fun(Fun(a, b), b) Print k Next a Print b End Sub Private Function Fun(a As Integer, b As Integer) As Integer b = a + b a = a + b Fun = a + b End Function 4. 執(zhí)行 下面程序,單擊 命令 按鈕 Command1,則 多行 文本框 Text1中顯示 的第一行 內(nèi)容 是___(8)___ ,第二行 內(nèi)容是 ___(9)___ ,第三行 內(nèi)容是 ___(10)___ 。 Option Explicit Private Sub Command1_Click() Dim s1 As String, s2 As String, data1 As String, data2 As String Dim i As Integer data1 = "1011 1010 1110" data2 = "1010 1101 1010" For i = 1 To Len(data1) Step 5 s1 = Mid(data1, i, 4) s2 = Mid(data2, i, 4) Text1.Text = Text1.Text & Subtract(s1, s2) & vbCrLf Next i End Sub Private Function Subtract(s1 As String, s2 As String) As String Dim i As Integer, k As Integer, L As Integer Dim j As Integer, s As String L = Len(s1) For i = 1 To L If Mid(s1, i, 1) = "0" And Mid(s2, i, 1) = "0" Then Subtract = Subtract & "0" Else Subtract = Subtract & "1" End If Next i End Function 三、操作題(共 50分) 1. 完善程序。 (共 12分) 【要求】 1) 打開(kāi)”考生文件夾”中”P(pán)1.vbp”文件,完善程序后,直接保存所有文件 。 【題目】 本程序的功能是 找出 4~500之間的史密夫數(shù)。所謂史密夫數(shù)是指該數(shù)的各位數(shù)字和等于其質(zhì)因子分解中所有質(zhì)因子的各位數(shù)字和。 例如 在十進(jìn)制下, 202就是一個(gè)史密夫數(shù), 因?yàn)?/SPAN> 2 + 0 + 2 = 4,202的質(zhì)因子分解為 2 × 101,2 + 1 + 0 + 1 = 4。 Option Explicit Option Base 1 Private Sub Command1_Click() Dim i As Integer, he As Integer Dim n As Integer, pf() As Integer For n = 4 To 500 Call Pfactor(n, pf) If UBound(pf) > 1 Then ______(1)______ For i = 1 To UBound(pf) he = he + Sum(pf(i)) Next i If Sum(n) = he Then List1.AddItem n End If End If Next n End Sub Private Sub Pfactor(ByVal n As Integer, f() As Integer) '質(zhì)因子分解 Dim k As Integer, P As Integer k = 2 Do Do While ______(2)______ P = P + 1 ReDim Preserve f(P) f(P) = k n = n \ k Loop ______(3)______ Loop Until n = 1 End Sub Private Function Sum(ByVal n As Integer) As Integer Dim S As String, L As Integer, k As Integer, i As Integer S = CStr(n) ______(4)______ For i = 1 To L k = Val(Mid(S, i, 1)) Sum = Sum + k Next i End Function 2. 改錯(cuò)題(共 16分) 【要求】 1) 打開(kāi)”考生文件夾”中”P(pán)2.vbp”文件 ,改正程序中的錯(cuò)誤后,直接保存所有文件 ; 2) 改錯(cuò)時(shí),不得增加或刪除語(yǔ)句但可適當(dāng)調(diào)整位置。 【題目】 本程序的功能是 在給定的數(shù)字串中( 在給定的數(shù)字串中(121709473)找出所有的素?cái)?shù)子串。 Option Explicit Private Sub Command1_Click() Dim n As Integer, St As String, L As Integer, Flg As Boolean Dim i As Integer, j As Integer, C As String, s As String n = Val(Text1.Text) St = CStr(n) L = Len(n) For i = 1 To L Flg = False For j = 1 To L - i + 1 C = Mid(St, j, i) If Left(C, 1) <> "0" And Prime(Val(C)) Then s = s & C & " " Flg = True End If Next j If Flg Then s = s & vbCrLf Next i Text2.Text = s End Sub Private Function Prime(M As Long) As Boolean Dim i As Long For i = 2 To Int(Sqr(M)) If M Mod i = 0 Then Exit For Next i Prime = True End Function 3. 編程題( 22分) 【要求】 1) 打開(kāi) “考生文件夾”中“P3.vbp”文件 ,按參考界面形式編輯窗體,根據(jù)題目要求編寫(xiě)和調(diào)試程序后,直接保存所有文件; 2) 程序代碼書(shū)寫(xiě)應(yīng)呈鋸齒形,否則適當(dāng)扣分。 【題目】 編寫(xiě)程序,生成由兩位隨機(jī)整數(shù)組成的數(shù)組,刪除數(shù)組中數(shù)值相同的數(shù)組元素。 【編程要求】 1) 程序參考界面如圖所示,編程時(shí)不得增加或減少對(duì)象改變的窗體種類(lèi),窗體及界面元素大小適中,且均可見(jiàn); 2) 運(yùn)行程序, 單擊 “生成 ”按鈕, 在 InputBox對(duì)話框中輸入需要生成的數(shù)組元素個(gè)數(shù) ,并生成由兩位隨機(jī)整數(shù)組成的數(shù)組顯示在文本框 1中;單擊“刪除重復(fù)數(shù)” 按鈕將數(shù)組中出現(xiàn)的重復(fù)數(shù)刪除后顯示在文本框 2中; 單擊 “清除 ”按鈕,將所有文本框清空,焦點(diǎn)置于 “生成 ”按鈕上; 3) 程序中至少應(yīng)定義一個(gè)通用過(guò)程,用于將數(shù)組中的重復(fù)數(shù)刪除 。 參考答案 一、選擇題(共 10分,每題 2分) 1.D 2.C 3.A 4.A 5.C 二、填空題( 共 20分, 每空 2分) 1.13 2.17 3.33 4.39 5.36 6.46 7.17 8.1011 9.1111 10.1110 三、操作題(共 50分) 1. 完善程序 (共 12分) (1) he = 0 (2) n Mod k = 0 (3) k = k + 1 (4) L = Len(S) 2. 改錯(cuò)題(共 16分) Option Explicit Private Sub Command1_Click() Dim n As Long, St As String, L As Integer, Flg As Boolean Dim i As Integer, j As Integer, C As String, s As String n = Val(Text1.Text) St = CStr(n) L = Len(St) For i = 1 To L Flg = False For j = 1 To L - i + 1 C = Mid(St, j, i) If Left(C, 1) <> "0" And Prime(Val(C)) Then s = s & C & " " Flg = True End If Next j If Flg Then s = s & vbCrLf Next i Text2.Text = s End Sub Private Function Prime(M As Long) As Boolean Dim i As Long For i = 2 To Int(Sqr(M)) If M Mod i = 0 Then Exit Function Next i If M > 1 Then Prime = True End Function 3. 編程題( 22分) Option Explicit Option Base 1 Dim a() As Integer, n As Integer Private Sub Command1_Click() Dim i As Integer n = InputBox("輸入 n=", , 10) ReDim a(n) For i = 1 To n a(i) = Int(Rnd * 90) + 10 Text1.Text = Text1.Text & Str(a(i)) Next i End Sub Private Sub Command2_Click() Dim i As Integer Call dele(a) For i = 1 To UBound(a) Text2.Text = Text2.Text & Str(a(i)) Next i End Sub Private Sub dele(a() As Integer) Dim i As Integer, j As Integer, k As Integer i = 1 Do j = i + 1 Do If a(i) = a(j) Then For k = j To UBound(a) - 1 a(k) = a(k + 1) Next k ReDim Preserve a(UBound(a) - 1) Else j = j + 1 End If Loop Until j > UBound(a) i = i + 1 Loop Until i >= UBound(a) End Sub Private Sub Command3_Click() Text1.Text = "" Text2.Text = "" Command1.SetFocus End Sub |