[计算机类试卷]2004年4月国家二级(VisualBasic)笔试真题试卷及答案与解析.doc

上传人:Iclinic170 文档编号:492442 上传时间:2018-11-30 格式:DOC 页数:17 大小:87KB
下载 相关 举报
[计算机类试卷]2004年4月国家二级(VisualBasic)笔试真题试卷及答案与解析.doc_第1页
第1页 / 共17页
[计算机类试卷]2004年4月国家二级(VisualBasic)笔试真题试卷及答案与解析.doc_第2页
第2页 / 共17页
[计算机类试卷]2004年4月国家二级(VisualBasic)笔试真题试卷及答案与解析.doc_第3页
第3页 / 共17页
[计算机类试卷]2004年4月国家二级(VisualBasic)笔试真题试卷及答案与解析.doc_第4页
第4页 / 共17页
[计算机类试卷]2004年4月国家二级(VisualBasic)笔试真题试卷及答案与解析.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、2004 年 4月国家二级( VisualBasic)笔试真题试卷及答案与解析 1 在窗体上画一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Move 500, 500 End Sub 程序运行后,单击命令按钮,执行的操作为 ( A) 命令按钮移动到距窗体左边界、上边界各 500的位置 ( B)窗体移动到距屏幕左边界、上边界各 500的位置 ( C)命令按钮向左、上方向各移动 500 ( D)窗体向左、上方向各移动 500 2 在窗体 上有若干控件,其中有一个名称为 Text1的文本框。影响 Text1的 Tab顺序的属

2、性是 ( A) TabStop ( B) Enabled ( C) Visible ( D) TabIndex 3 以下定义数组或给数组元素赋值的语句中,正确的是 ( A) Dim a As Variant a=Array(1,2,3,4,5) ( B) Dim a(10) As Integera =Array(1,2,3,4,5) ( C) Dim a%(10) a(1)=“ABCDE“ ( D) Dim a(3),b(3) As Integer a(0)=0 a(1)=1 a(2)=2 b=a 4 在窗体上画一个名称为 List1的列表框,为了对列表框中的每个项目都能进行处理,应使用的循环

3、语句为 ( A) For i=0 To List1.ListCount-1 Next ( B) For i=0 To ListCount-1 Next ( C) For i=1 To List1.listCount Next ( D) For i=1 To ListCount Next 5 以下 Case语句中错误的是 ( A) Case 0 To 10 ( B) Case Is10 ( C) Case Is10 And Is10 6 以下关于图片框控件的说法中,错误的是 ( A) 可以通过 Print方法在图片框中输出文本 ( B)清空图片框控件中图形的方法之一是加载一个空图形 ( C)图片

4、框控件可以作为容器使用 ( D)用 Stretch属性可以自动调整图片框中图形的大小 7 执行语句 s=Len(Mid(“VisualBasic“,1,6)后, s的值是 ( A) Visual ( B) Basic ( C) 6 ( D) 11 8 以下叙述中错误的是 ( A) 下拉式菜单和弹出式菜单都用菜单编辑器建立 ( B)在多窗体程序中,每个窗体都可以建立自己的菜单系统 ( C)除分隔线外,所有菜单项都能接收 Click事件 ( D)如果把一个菜单项的 Enabled属性设置为 False,则该菜单项不可见 9 在窗体上画一个命令按钮,其名称为 Command1,然后编写如下事件过程:

5、 Private Sub Command1_Click() a = 12345 Print Format$(a, “000.00“) End Sub 程序运行后,单击命令按钮,窗体上显示的是 ( A) 123.45 ( B) 12345.00 ( C) 12345 ( D) 00123.45 10 以下叙述中错误的是 ( A) 一个工程可以包括多种类型的文件 ( B) Visual Basic应用程序既能以编译方式执行,也能以解释方式执行 ( C)程序运行后,在内存中只能驻留一个窗体 ( D)对于事件驱动型应用程序,每次运行时的执行顺序可以不一样 11 以下关于函数过程的叙述中,正确的是 (

6、A) 函数过程形参的类型与函数返回值的类型没有关系 ( B)在函数过程中,过程的返回值可以有多个 ( C)当数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递 ( D)如果不指明函数过程参数的类型,则该参数没有数据类型 12 以下关于变量作用域的叙述中,正确的是 ( A) 窗体中凡被声明为 Private的变量只能在某个指定的过程中使用 ( B)全局变量必须在标准模块中声明 ( C)模块级变量只能用 Private关键字声明 ( D) Static类型变量的作用域是它所在的窗体或模块文件 13 确定一个控件在窗体上的位置的属性是 ( A) Width和 Height ( B) W

7、idth或 Height ( C) Top和 Left ( D) Top或 Left 14 在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Text1.Text = “Visual“ Me.Text1 = “Basic“ Text1 = “Program“ End Sub 程序运行后,如果单击命令按钮 ,则在文本框中显示的是 ( A) Visual ( B) Basic ( C) Program ( D)出错 15 以下关系表达式中,其值为 False的是 ( A) “ABC“A

8、bC“ ( B) the“Int“ 16 语句 Print 5/4*65 Mod 2的输出结果是 ( A) 0 ( B) 1 ( C) 2 ( D) 3 17 在窗体上画一个文本框、一个标签和一个命令按钮,其名称分别为 Text1、Label1和 Command1,然后编写如下两个事件过程: Private Sub Command1_Click() strText = InputBox(“请输入 “) Text1.Text = strTextEnd SubPrivate Sub Text1_Change() Label1.Caption = Right(Trim(Text1.Text), 3)

9、End Sub 程序运行后,单击命令按钮,如果在输入对话框中输入 abcdef,则在标签中显示的内容是 ( A) 空 ( B) abcdef ( C) abc ( D) def 18 在窗体上画一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() x = -5 If Sgn(x) Then y = Sgn(x 2) Else y = Sgn(x) End If Print y End Sub 程序运行后,单击命令按钮,窗体上显示的是 ( A) -5 ( B) 25 ( C) 1 ( D) -1 19 一个工程中含有窗体 For

10、m1、 Form2和标准模块 Model1,如果在 Form1中有语句 Pubilc X As Integer,在 Model1中有语句 Pubilc Y As Integer,则以下叙述中正确的是 ( A) 变量 X、 Y的作用域相同 ( B) Y的作用域是 Model1 ( C)在 Form1中可以直接使用 X ( D)在 Form2中可以直接使用 X和 Y 20 在窗体上画一个名称为 Drive1的驱动器列表框,一个名称为 Dir1的目录列表框。当改变当前驱动器时,目录列表框应该与之同步改变。设置两个控件同步的命令放在一个事件过程中,这个事件过程是 ( A) Drive1_Change

11、( B) Drive1_Click ( C) Dir1_Click ( D) Dir1_Change 21 在窗体上画一个命令按钮(其 NAME属性为 Command1),然后编写如下代码 : Option Base 1 Private Sub Command1_Click() Dim a s = 0 a = Array(1,2,3,4); j = 1 For i = 4 To 1 Step -1 s = s + a(i) * j j = j * 10 Next i Print s End Sub 运行上面的程序,单击命令按钮,其输出结果是 ( A) 4321 ( B) 1234 ( C) 3

12、4 ( D) 12 22 在窗体上画一个名称为 Text1的文本框,要求文本框只能接收大写字母的输入。以下能实现该操作的事件过程是 ( A) Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii 90 Then MsgBox “请输入大写字母 “ KeyAscii = 0 End If End Sub ( B) Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode 90 Then MsgBox “请输入大写字母 “ KeyCode =

13、 0 End If End Sub ( C) Private Sub Text1_MouseDown(Button As Integer,_ Shift As Integer, X As Single, Y As Single) If Asc(Text1.Text) 90 Then MsgBox “请输入大写字母 “ End If End Sub ( D) Private Sub Text1_Change() If Asc(Text1.Text) 64 And Asc(Text1.Text) 91 Then MsgBox “请输入大写字母 “ End If End Sub 23 假定在窗体(名

14、称为 Form1)的代码窗口中定义如下记录类型: Private Type animal animalName As String*20 aColor As String*10 End Type 在窗体上画一个名称为 Command1的命令按钮,然后编写如下事件过程 : Private Sub Command1_Click() Dim rec As animal Open “c:vbTest.dat“ For Random As #1 Len = Len(reCreC.animalName = “Cat“ reC aColor = “White“ Put #1, , rec Close #1

15、End Sub 则以下叙述中正确的是 ( A) 记录类型 animal不能在 Form1中定义,必须在标准模块中定义 ( B)如果文件 c:vbTest.dat不存在,则 Open命令执行失败 ( C)由于 Put命令中没有指明记录号,因此每次都把记录写到文件的末尾 ( D)语句 “Put #1, , rec”将 animal类型的两个数 据元素写到文件中 24 在窗体上画一个名称为 Text1的文本框,一个名称为 Command1的命令按钮,然后编写如下事件过程和通用过程: Private Sub Command1_Click() n = Val(Text1.Text) If n2 = n/

16、2 Then f = f1(n) Else f = f2(n) End If Print f; n End Sub Public Function f1(ByRef x) x=x*x f1=x+x End Function Public Function f2(ByVal x) x=x*x f2=x+x+x End Function 程序运行后,在文本框中输入 6,然后单击命令按钮,窗体上显示的是 ( A) 72 36 ( B) 108 36 ( C) 72 6 ( D) 108 6 25 在窗体上画一个名称为 Command1的命令按钮,然后编写如下事件过程 : Private Sub Co

17、mmand1_Click() c = 1234 c1 = Trim(Str(C) For i = 1 To 4 Print_ Next End Sub 程序运行后,单击命令按钮,要求在窗体上显示如下内容 1 12 123 1234 则在下划线处应填入的内容为 ( A) Right(c1,i) ( B) Left(c1,i) ( C) Mid(c1,i,1) ( D) Mid(c1,i,i) 26 在窗体上画一个名称为 Command1的命令按钮和一个名称为 Text1的文本框,然后编写如下事件过程: Private Sub Command1_Click() n = Val(Text1.Text

18、) For i = 2 To n For j = 2 To sqr(i) If i Mod j = 0 Then Exit For Next j If j Sqr(i) Then Print i Next i End Sub 该事件过程的功能 是 ( A) 输出 n以内的奇数 ( B)输出 n以内的偶数 ( C)输出 n以内的素数 ( D)输出 n以内能被 j整除的数 27 在以下描述中正确的是 ( A) 标准模块中的任何过程都可以在整个工程范围内被调用 ( B)在一个窗体模块中可以调用在其他窗体中被定义为 Public的通用过程 ( C)如果工程中包含 Sub Main过程,则程序将首先执行

19、该过程 ( D)如果工程中不包含 Sub Main过程,则程序一定首先执行第一个建立的窗体 28 在窗体上画一个名称为 Command1的命令按钮,然后编写如下通用过 程和命令按钮的事件过程: Private Function f(m As Integer) If m Mod 2 = 0 Then f = m Else f = 1 End If End Function Private Sub Command1_Click() Dim i As Integer s = 0 For i = 1 To 5 s = s + f(i) Next Print s End Sub 程序运行后,单击命令按钮

20、,在窗体上显 示的是 ( A) 11 ( B) 10 ( C) 9 ( D) 8 29 在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim array1(10, 10) As Integer Dim i As Integer, j As Integer For i = 1 To 3 For j = 2 To 4 array1(i, j) = i + j Next j Next i Text1.Text = array1(2, 3) + array1(3, 4) End Sub

21、 程序运行后,单击命令按钮,在文本框中显示的值是 ( A) 15 ( B) 14 ( C) 13 ( D) 12 30 在窗体上画四个文本框(如图所示),并用这四个文本框建立一个控件数组,名称为 Text1(下标从 0开始,自左至右顺序增大),然后编写如下事件过程: Private Sub Command1_Click() For Each TextBox In Text1 Text1(i) = Text1(i).Index i = i + 1 Next End Sub 程序运行后,单击命令按钮,四个文本框中显示的内容分别为( A) 0 1 2 3 ( B) 1 2 3 4 ( C) 0 1

22、3 2 ( D)出错信息 31 Visual Basic应用程序中标准模块文件的扩展名是【 】。 32 与数学表达式 cos2(a+B)/3x+5 对应的 Visual Basic表达式是【 】。 33 将 C盘根目录下的图形文件 moon.jpg装入图片框 Picture1的语句是【 】。 34 在窗体上画一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() n = 5 f = 1 s = 0 For i = 1 To n f = f【 】 s = s + f Next Print s End Sub 该事件过程的功能是计算

23、 s=1+1/2!+1/3!+1/n! 的值。请填空。 35 在窗体上画一个名称为 Text1的文本框,然后画三个单选按钮,并用这三个单选按钮建立一个控件数组,名称为 Option1,程序运行 后,如果单击某个单选按钮,则文本框中的字体将根据所选择的单选按钮切换,如图所示,请填空。Private Sub Option1_Click(Index As Integer)Select Case【 】 Case 0a = “宋体 “Case 1a = “黑体 “Case 2a = “楷体GB2312“End Selecttext1.【 】 =aEnd Sub 36 在窗体上画两个组合框,其名称分别为

24、Combo1、 Combo2,然后画两个标签,名称分别为 Label1、 Label2,如图所示,程序运行后,如果在 某个组合框中选择一个项目,则把所选中的项目在其下面的标签中显示出来。请填空。Private Sub Combo1_Click( )Call ShowItem(Combo1, Label1)End SubPrivate Sub Combo2_Click()Call ShowItem(Combo2, Label2)End SubPublic Sub ShowItem(tmpCombo As ComboBox, tmpLabel As Label)【 】 .Caption =【 】

25、.TextEnd Sub 37 在窗体上画一个名称为 Command1的命令按钮,然后编写如下程序: Option Base 1 Private Sub Command1_Click() Dim a(10) As Integer For i = 1 To 10 a(i) = i Next Call swap(【 】) For i = 1 To 10 Print a(i); Next End Sub Sub swap(b() As Integer) n =【 】 For i = 1 To n / 2 t = b(i) b(i) = b(n) b(n) = t 【 】 Next End Sub 上

26、述程序的功能是,通过调用过程 swap,调换数组中数值的存放位置,即 a(1)与a(10)的值互换, a(2)与 a(9)的值互换, , a(5)与 a(6)的值互换。请填空。 2004 年 4月国家二级( VisualBasic)笔试真题试卷答案与解析 1 【正确答案】 B 【试题解析】 Move 方法的形式如下: 对象 Move左边距离 ,上边距离 ,宽度 ,高度 对象可以是窗体及除时钟、菜单外的所有控件,默认为窗体。如果对象是窗体,则 左边距离和上边距离以屏幕左边界和上边界为准。宽度和高度可改变其大小。 2 【正确答案】 D 【试题解析】 TabIndex 属性返回或设置窗体中对象响应

27、Tab键的顺序。 3 【正确答案】 A 【试题解析】 利用 Array对数组各元素赋值,声明的数组是可调数组或连圆括号也可省略的数组,并且其类型只能是 Variant,故选项 B)不正确;选项 C)定义错误,应为 Dim a(10)As String;选项 D)中赋值号左边的 b是一个大小固定的数组:故赋值出错。 4 【正确答案】 A 【试 题解析】 List 数组的下标是从 0开始的, ListCount的值表示列表框中项目的数量, ListCount-1表示最后一项的下标。 5 【正确答案】 C 【试题解析】 Case语句中的表达式列表可以是下面的 4种形式之一:表达式、一组用逗号分隔的枚

28、举值、表达式 1 To 表达式 2、 Is关系运算符表达式,故选项 c错误。 6 【正确答案】 D 【试题解析】 Stretch 属性用于图像框,用来自动调整图片框中图形的大小。 7 【正确答案】 C 【试题解析】 Len 函数用于取其中字符串的长度 ,而函数 Mid 返回包含字符串中指定数量的字符。 8 【正确答案】 D 【试题解析】 Enabled 属性用于决定菜单项是否可用, Visiual 属性决定菜单项是否可见。 9 【正确答案】 B 【试题解析】 对于符号 “0”,实际数字小于符号位数时,数字前后加 0;大于时,若要显示数值表达式的整数部分位数多于格式字符串的位数,按实际数值显示。

29、若小数部分的位数多于格式字符串的位数,按四舍五入显示。 10 【正确答案】 C 【试题解析】 程序运行后可以在内存中驻留多个窗体。 11 【正确 答案】 A 【试题解析】 选项 B中函数的返回值只有一个;选项 C中当数组做为函数的形参时,只能以传址方式传递;选项 D中如果不指明函数过程的参数类型,则该参数为变体类型。 12 【正确答案】 B 【试题解析】 选项 A中凡被声明为 Private 的变量能被本模块的其他过程使用,但不可以被其他模块使用;选项 C模块级变量可以使用 Dim和 Private关键字声明; Static类型的作用域是它所在的过程。 13 【正确答案】 C 【试题解析】 T

30、op 和 Left属性决定了控件在窗体中的位置, Top 表 示控件到窗体顶部的距离, Left表示到窗体左边框的距离。 14 【正确答案】 C 【试题解析】 Text是文本框的默认属性。 15 【正确答案】 A 【试题解析】 关系运算符的两个操作数若是字符型,则按字符的 ASCII码值从左到右一一比较。 16 【正确答案】 B 【试题解析】 先计算 5/4,得 1.25;再计算 1.25*6,得 7.5;接着计算 7.55,得 1;最后是 1 Mod 2,结果得 1。 17 【正确答案】 D 【试题解析】 函数 Trim用于去掉字符串 “abcdef“两边的空格, Right函数从字符串右边

31、取出指定数量的字符。 18 【正确答案】 C 【试题解析】 函数 Sgn(N)用于取数 N的符号。 X=-5,故 Sgn(X)=-1,为真,执行 Y=Sgn(X2)=Sgn(25),故得 1。 19 【正确答案】 C 20 【正确答案】 A 【试题解析】 当用户在驱动器列表框中选择一个新的驱动器后, Drivel的 Drive属性改变,触发 Change事件。 21 【正确答案】 B 【试题解析】 s=a(4)+a(3)*10+a(2)*100+a(1)*1000=1234。 22 【正确答案】 A 【试题解析】 选项 B)中的大写字母与小写字母的 KeyCode相同;选项 C)中文本框没有触

32、发 MouseDown 事件;选项 D)中判断条件错误,其判断的为输入的是否为大写字母,正好与题目要求相反。 23 【正确答案】 D 24 【正确答案】 A 【试题解析】 因为输入的 6满足条件 n2=n/2,所以执行 f=f1(n),而 f1里形参类型为 ByRef即址传递,所以在函数里形参的改变会影响到实参。 25 【正确答案】 B 【试题 解析】 本题主要是要理解这几个函数的作用, Right(c1, i)是从字符串 c1右边取 i个字符, Left(c1, i)是从字符串左边取 i个字符, Mid(c1, i, 1)是从字符串 c1 的第 i个位置取 1个字符。 26 【正确答案】 C

33、 【试题解析】 要理解本事件过程的作用就要看最后打印的条件 j sqr(i),而最后这个条件是否成立又取决于内循环,内循环的作用就是判断在 2到某个数的平方根之间是否有它本身的因数,显然这是判断素数的条件。 27 【正确答案】 B 【试题解析】 工程里首先执行哪个窗体由 “工程属性 ”对话框中 “通用 ”选项卡的启动对象决定。默认为第一个建立的窗体。 28 【正确答案】 C 【试题解析】 本题的结果取决于函数 f,而 f 的作用是如果参数为偶数返回实值,如果为奇数则返回 1。 29 【正确答案】 D 【试题解析】 本题没有太多的技巧,关键就是要搞清楚两层循环给数组的元素所赋的值,不难得出结果。

34、 30 【正确答案】 A 【试题解析】 每个文本框里放的都是它自己的在控件数组里的下标, i=i+1只是起个步长变化的作用。 31 【正确答案】 .bas 32 【 正确答案】 (cos(a+B)2/(3*x)+5 33 【正确答案】 Picture1.picture=loadpicture(“c:moon.jpg”) 34 【正确答案】 /i 35 【正确答案】 Index , FontName 36 【正确答案】 tmplabel , tmpCombo 37 【正确答案】 a( ) , ubound(B) , n=n-1 【试题解析】 子过程的功能是实现数组前后对应元素的交换,比如 a(1)和a(10)、 a(2)和 a(9)依次类推, n=UBound(B)取得数组的上界下标, n=n-1实现后面元素的向前递变。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1