《2022年2022年江苏省年秋二级计算机考试VB笔试试题 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年江苏省年秋二级计算机考试VB笔试试题 .pdf(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2009秋计算机等级考试(二级)Visual Basic 程序设计第二部分第二部分Visual Basic 程序设计一单选题21.要将焦点设置在某个控件上,以下四个选项中正确的是21 。A. 只能使用鼠标直接点击控件B. 只能使用Tab 键将焦点移到该控件C. 只能在程序中调用该控件的SetFocus方法D. A、B、C 三选项中涉及的方法均可使用22.在下列属性中,属于CommandButton 控件、 ListBox 控件共有的是22 。A. Caption 、Text B. Visible 、Font C. Caption、Visible D. List 、Visible 23. 数学表
2、达式yxeyxSin2ln)30(对应的 Visual Basic 表达式是23 。A. Sin(30*3.14159/180)+Sqr(Log(x)+y)/2*3.14159+Exp(x+y) B. (Sin(30* /180)+Sqr(Ln(x)+y)/(2*+Exp(x+y)C. Sin(30*180/3.14159)+Sqr(Log(x)+y)/(2*3.14159+e(x+y) D. (Sin(30*3.14159/180)+Sqr(Log(x)+y)/(2*3.14159+Exp(x+y) 24. 下面的关系表达式中,运算结果为True 的是24 。A. CInt(1.5)=Int
3、(1.5) B. Fix(1.5)=Int(1.5) C. Fix(-1.5)=CInt(-1.5) D. Fix(-1.5)=Int(-1.5) 25. 下面有关数组的叙述中,不正确的是25 。 在过程中用ReDim 语句定义的动态数组,其下标的上下界可以是变量 数组作为形式参数时,传递的是每个数组元素的值 在窗体模块的通用声明处可以用Public 说明一个全局数组 数组定义语句中可以用负数或小数来指定某一维的维下界或维上界的值A. B. C. D. 26. 以下关于文件的叙述中,错误的是26 。A. 用 Output 模式打开一个顺序文件,即使不对它进行写操作,原来的内容也被清除B. 可以
4、用 Print #语句或Write# 语句将数据写到顺序文件中C. 若以 Output、Append、Random、Binary 方式打开一个不存在的文件,系统会出错D. 顺序文件或随机文件都可以用二进制访问模式打开27. 下列有关控件数组的说法中,错误的是27 。A. 控件数组由一组具有相同名称和相同类型的控件组成,不同类型的控件无法组成控件数组B. 控件数组中的所有控件不得具有各自不同的属性设置值名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - -
5、- - - - - C. 控件数组中的所有控件共享同一个事件过程D. 控件数组中每个元素的下标由控件的Index 属性指定28. 以下 Case语句中,能正确描述Y 的绝对值大于6 的是28 。A. Case Abs(Y)6 B. Case -6 To 6 C. Case Not(-6 To 6) D. Case Is6 29 若在模块中用Private Function Fun(A as Single,B as Integer) As Integer 定义了函数Fun。调用函数Fun 的过程中定义了I、J 和 K 三个 Integer 型变量, 则下列语句中不能正确调用函数 Fun 的语句是
6、 _。AFun 3.14,J B Call Fun(I,365) CFun(I),(J) D K=Fun( “ 24” ,” 35” ) 30. 若需要在同一窗体内安排两组相互独立的单选按钮(OptionButton ) ,可使用30 控件做容器将它们分开。TextBox PictureBox Image Frame A. 或B. 或C. 或D. 或二填空题1. 执行下面的程序,单击 Command1,则数组元素a(1,2)的数值是 _,数组元素 a(2,3)的数值是 _,数组元素 a(4,3)的数值是 _. Option Explicit Private Sub Command1_Click
7、() Dim a(4, 4) As Integer, i As Integer Dim j As Integer, k As Integer, n As Integer n = 16: k = 2 Do For i = 1 To 4 For j = 1 To 4 If i + j = k Then a(i, j) = n n = n - 1 End If Next j Next i k = k + 1 Loop Until k 8 For i = 1 To 4 For j = 1 To 4 Print Right( & a(i, j), 3); Next j Print Next i End
8、Sub 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 2.运行下面的程序,单击Command1,窗体上显示的第一行内容是_,第三行内容是_,最后一行内容是_. Option Explicit Private Sub Command1_Click() Dim i As Integer, s As Integer For i = 1 To 9 Step 3 s = fun(i) + fun(i) Print s Next i En
9、d Sub Private Function fun(m As Integer) As Integer Static a As Integer If m Mod 2 = 0 Then a = a + 1 m = m + 1 Else a = a + 2 m = m + 2 End If fun = a + m Print fun End Function 3.运行下面的程序,单击Command1,窗体上显示的第一行内容是_,第二行内容是_,最后一行内容是_. Option Explicit Private Sub Command1_Click() Dim a As Integer Dim b
10、As Integer a = 1 b = 2 Print fun(a + 2, fun(2 * a, b) Print a; b End Sub Private Function fun(x As Integer, ByVal y As Integer) As Integer x = x + 2 y = x - y + 3 fun = x + y Print x; y; fun End Function 4.执行下面的程序,单击Command1,窗体上显示的第二行内容是_,第三行内容是_,第四行内容是_. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
11、 - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - Option Explicit Private Sub Command1_Click() Dim n As Integer, k As Integer n = 36: k = 5 Print trans(n, k) End Sub Private Function trans(n As Integer, k As Integer) as string Dim r As Integer If n 0 Then r = n Mod k If r 3 End Sub Pri
12、vate Sub encrypt(a As String, b As String) Dim sp As String, n As Integer, i As Integer sp = 0000 n = Len(b) - Len(a) If n 0 Then a = Right(sp & a, Len(b) For i = 1 To Len(b) If Mid(a, i, 1) = Mid(b, i, 1) Then Mid(a, i, 1) = 0 Else 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -
13、 - - - - - 第 4 页,共 8 页 - - - - - - - - - Mid(a, i, 1) = 1 End If Next i End Sub 6下面程序的功能是求序列:1/2,2/3,3/5,5/8,8/13,13/21, 前若干项的和,项数由文本框输入。试完善程序使其达到功能要求。Option Explicit Private Sub 计算_Click() Dim n As Integer, a1 As Integer, a2 As Integer Dim i As Integer, t As Single, s As Single n = Val(Text1.Text)
14、a1 = 1 a2 = 2 For i = 1 To n (16)s = s + t a2 = a1 + a2 (17) Next i Text2 = s End Sub 7程序的功能是: 从一组以16 进制数形式表示的若干个字节数据中,找出其中的汉字代码(若相邻的两个字节中,每个字节的最高一位的数值都大于或等于8,则这两个字节为一个汉字的代码)。试完善程序使其达到功能要求。Option Explicit Private Sub Command1_Click() Dim st() As String, p As String, k As Integer Dim n As Integer, i
15、As Integer p = Trim(Text1) Do n = InStr(p, ) If (18) Then k = k + 1 ReDim Preserve st(k) st(k) = Left(p, n - 1) p = Right(p, Len(p) - n) Else ReDim Preserve st(k + 1) (19) End If Loop Until n = 0 For i = 1 To UBound(st) - 1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -
16、- 第 5 页,共 8 页 - - - - - - - - - If chinese(st(i), st(i + 1) Then List1.AddItem st(i) & , & st(i + 1) (20) End If Next i End Sub Private Function chinese(p As String, q As String) As Boolean Dim st As String, k As Integer, n As Integer Dim i As Integer st = 0123456789ABCDEF For i = 1 To Len(st) If Le
17、ft(p, 1) = Mid(st, i, 1) Then k = i - 1 (21) Next i If k = 8 And n = 8 Then chinese = True End Function 8本程序的功能是求出nm 之间所有的可分解整数。所谓可分解整数是指具有以下性质的数。它的各位数字之和等于其所有质因子各位数字之和(注意:素数不是可分解整数)。例如整数121,各位数字之和是4,其质因子是11,11,质因子的各位数字之和也是4(1+1+1+1=4) ,所以 121 是可分解整数。试完善程序使其达到功能要求。Option Explicit Private Sub Command
18、1_Click() Dim n As Integer, m As Integer, k As Integer n = Text1 m = Text2 For k = n To m If sum1(k) = sum2(k) Then List1.AddItem k End If Next k End Sub Private Function sum1( (22) ) As Integer 求一个数的各位数字之和Do sum1 = (23) n = n 10 Loop Until n = 0 End Function Private Function sum2(ByVal n As Integer
19、) As Integer 求质因子及其各位数字之和Dim k As Integer, nn As Integer (24) nn = n 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 8 页 - - - - - - - - - Do If n Mod k = 0 Then sum2 = sum2 + sum1(k) n = n k Else (25) End If Loop Until k nn / 2 End Function 9.下面程序的功能是:将a,b 两个数组
20、的数据按从大到小的顺序合并到数组c 中。 a,b 两个数组的数据分别从文本框A 和文本框 B 输入,数据以空格分隔.合并结果在文本框C 中输出.试完善程序使其达到功能要求。Option Explicit Option Base 1 Private Sub Command1_Click() Dim a() As Integer, b() As Integer, c() As Integer Dim i As Integer, st As String st = Trim(Text1) Call load_a(st, a) st = Trim(Text2) Call load_a(st, b) R
21、eDim c(1) (26) For i = 2 To UBound(a) Call change(a(i), c) Next i For i = 1 To UBound(b) Call change(b(i), c) Next i For i = 1 To UBound(c) Text3 = Text3 & Str(c(i) Next i End Sub Private Sub load_a(s As String, a() As Integer) 将文本框中数据存入数组Dim i As Integer, k As Integer, p As String, q As String * 1
22、For i = 1 To Len(s) q = Mid(s, i, 1) If q = 0 And q = 9 Or q = - Then (27) ElseIf p Then k = k + 1 ReDim Preserve a(k) a(k) = Val(p) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 8 页 - - - - - - - - - (28) End If Next i If p Then ReDim Preserve a (k + 1) a(k +
23、 1) = p End If End Sub Private Sub change(n As Integer, c() As Integer) 插入排序Dim i As Integer, j As Integer ReDim Preserve c(UBound(c) + 1) For i = 1 To UBound(c) - 1 If n c(i) Then For j = UBound(c) To i + 1 Step -1 c(j) = c(j - 1) Next j (29) End If Next i (30) End Sub 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 8 页 - - - - - - - - -