江苏省高校计算机等级考试命题研究院 江苏省高校计算机等级考试辅导
2014年3月全国计算机二级VB选择题真题

25

 

1.设循环队列为Q(1: m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为

A.4

B.6

C.m-5

D.m-6

2.下列叙述中正确的是

A.循环队列属于队列的链式存储结构

B.双向链表是二叉树的链式存储结构

C.非线性结构只能采用链式存储结构

D.有的非线性结构也可以采用顺序存储结构

3.某二叉树中有n个叶子结点,则该二叉树中度为2的结点数为

A.n+1

B.n-1

C.2n

D.n/2

4.下列叙述中错误的是

A.算法的时间复杂度与算法所处理数据的存储结构有直接关系

B.算法的空间复杂度与算法所处理数据的存储结构有直接关系

C.算法的时间复杂度与空间复杂度有直接关系

D.算法的时间复杂度与算法程序执行的具体时间是不一致的

5.软件工程的三要素是

A.方法、工具和过程

B.建模、方法和工具

C.建模、方法和过程

D.定义、方法和过程

6.通常软件测试实施的步骤是

A.集成测试、单元测试、确认测试

B.单元测试、集成测试、确认测试

C.确认测试、集成测试、单元测试

D.单元测试、确认测试、集成测试

7.下面可以作为软件设计工具的是

A.系统结构图

B.数据字典(DD)

C.数据流程图(DFD图)

D.甘特图

8.在数据库设计中,将E-R图转换成关系数据模型的过程属于

A.逻辑设计阶段

B.需求分析阶段

C.概念设计阶段

D.物理设计阶段

9.设有关系表学生S( 学号,姓名,性别,年龄,身份证号) ,每个学生学号唯一。除属性学号外,也可以作为键的是

A.姓名

B.身份证号

C.姓名,性别,年龄

D.学号,姓名

10.在数据库系统中,考虑数据库实现的数据模型是

A.概念数据模型

B.逻辑数据模型

C.物理数据模型

D.关系数据模型

11.在Visual Basic标准工具栏中,"菜单编辑器"的图标是

A.

B.

C.

D.

12.类模块文件的扩展名为

A..res

B..cls

C..vbp

D..vbg

13.对于窗体而言,在运行期间对其值改变无效的属性是

A.Caption

B.Enabled

C.AutoRedraw

D.BorderStyle

14.对于语句Dim Var1, Var2 As String * 10下列说法中正确的是

A.Var1和Var2都被定义为定长字符串变量

B.Var1被定义为变长字符串变量,Var2被定义为定长字符串变量

C.Var1被定义为定长字符串变量,Var2被定义为变长字符串变量

D.Var1被定义为变体变量

15.已知num1 = 15,则表达式Len("abc" & num1) + InStr("Internet", "net")的值为

A.11

B.9

C.5

D.错误

16.下列关于数组的叙述中,错误的是

A.Visual Basic中的数组必须先定义,后使用

B.语句Option Base n中的n用以设置数组下标的下界,它可以是任意的非负整数

C.同一个过程中定义的数组与变量不能同名

D.在定义数组时,每一维的元素个数必须是常数,不能是变量或表达式

17.在程序运行时,不会引发窗体Resize事件的操作是

A.使用了窗体的"还原"按钮

B.使用Move方法改变了窗体的大小

C.使用Move方法改变了窗体的位置

D.通过鼠标拖动边框调整了窗体的大小

18.不能使某个对象获得焦点的操作是

A.在运行时单击该对象

B.在运行时用访问键选择该对象

C.在程序代码中使用该对象的SetFocus方法

D.在程序代码中使用该对象的GotFocus方法

19.不能脱离对象而独立存在的过程是

A.子程序过程

B.函数过程

C.事件过程

D.通用过程

20.下列描述中错误的是

A.窗体是对象

B.窗体必须有Name属性

C.窗体可以拖放和移动

D.在设计阶段双击一个控件可以打开属性窗口

21.Visual Basic为每种控件规定了一个默认属性,在设置默认属性时,不必给出属性名。下列控件中默认属性为Text的控件是

A.框架(Frame)

B.组合框(ComboBox)

C.标签(Label)

D.形状(Shape)

22.窗体上有2个名称分别为List1和List2的列表框,各显示有若干个项目。当双击List1中的某个项目时,该项目就会自动添加到List2中。下列无法实现上述操作的事件过程是

A.

     Private Sub List1_DblClick()

       List2.List(List2.ListCount) = List1.Text

     End Sub

B.

     Private Sub List1_DblClick()

       List2.AddItem List1.Text

     End Sub

C.

     Private Sub List1_DblClick()

       List2.AddItem List1.List(ListIndex)

     End Sub

D.

     Private Sub List1_DblClick()

       Call List2.AddItem(List1.Text)

     End Sub

23.对于文本框控件下列说法错误的是

A.当Locked属性值为True可以通过程序代码修改文本框内容

B.当Locked属性值为False时,用户可以直接编辑修改文本框内容

C.MaxLength属性值既可以在设计阶段设定,也可以在运行时设定

D.当文本框可以显示多行文本时,MaxLength属性用来确定每行最大字符数

24.下列操作中,不能够引发命令按钮Click事件的是

A.使用Tab键将输入焦点移到命令按钮上,并按空格键

B.使用Tab键将输入焦点移到命令按钮上,并按Enter键

C.在程序中将命令按钮的Value属性值赋以True2

D.当命令按钮的Default属性为False时,按Enter键

25.对于图片框和图像控件,下列说法错误的是

A.AutoSize属性为True时,图片框控件会自动改变大小以适应所显示图片的大小

B.Stretch属性为True时,图像框会自动缩放所显示图片,使其充满图像框控件

C.图片框为容器控件

D.图像控件不支持DblClick事件

26.Visual Basic组合框可表现为简单组合框、下拉式组合框、下拉式列表框三种类型,决定组合框表现为哪种类型的属性是

A.Style

B.Sorted

C.DataSource

D.Appearance

27.对于计时器控件,下列叙述错误的是

A.计时器控件没有Visible属性

B.将Interval属性设置为0时,计时器控件不起作用

C.将Enabled属性设置为False时,计时器控件无效

D.为了实现每秒发生一个计时器事件,需将Interval属性设置为100

28.窗体上有1个名称为Text1的文本框和1个名称为Label1的标签。运行以下程序,在文本框中输入VisualBasic,则标签中显示内容为basic的是

A.

     Private Sub Text1_Change()

        Label1.Caption = LCase(Mid(Text1.Text, 7))

     End Sub

B.

     Private Sub Text1_Change()

        Label1.Caption = UCase(Left(Text1.Text, 5))

     End Sub

C.

     Private Sub Text1_Change()

        Label1.Caption = UCase(Right(Text1.Text, 5))

     End Sub

D.

     Private Sub Text1_Change()

        Label1.Caption = LCase(Left(Text1.Text, 5))

     End Sub

29.为了改变文本框中所显示文本的颜色需设置的属性为

A.FontColor

B.BackColor

C.ForeColor

D.FillColor

30.窗体上有1个名称为CD1的通用对话框,1个名称为Command1的命令按钮,并有如下程序:

Private Sub Command1_Click()

   CD1.CancelError = True

   CD1.FileName = "new.txt"

   CD1.Filter = "All Files|*.*|Word|*.doc|"

   CD1.FilterIndex = 2

   CD1.ShowSave

End Sub

运行程序,下面叙述中正确的是

A.单击"取消"按钮关闭对话框时,将显示出错信息

B.对话框文件的"保存类型"框中显示"*.doc"

C.Filter属性中没有指定类型".txt",导致程序运行出错

D.实现打开文件操作,且文件名为"new.txt"

31.编写如下程序:

Private Sub Command1_Click()

   x = InputBox("请输入一个字符:")

   Select Case x

      Case Is <= 9

         Print "分支1"

      Case Is <= "Z"

         Print "分支2"

      Case Else

         Print "分支3"

   End Select

End Sub

程序运行后单击命令按钮Command1并在输入对话框中输入字符"a"输出结果为

A.分支1

B.分支2

C.分支3

D.程序出错

32.编写如下程序

Private Sub Command1_Click()

   Dim i As Integer, n As Integer

   Dim arr() As Integer

 

   n = InputBox("请输入数值")

   ReDim arr(n)

   For i = 1 To UBound(arr)

      arr(i) = i

   Next

   For i = 1 To UBound(arr) \ 2

      temp = arr(i)

      arr(i) = arr(n - i + 1)

      arr(n - i + 1) = temp

   Next

   For i = 1 To UBound(arr)

      Print arr(i);

   Next

End Sub

程序运行后,单击命令按钮Command1,并在输入对话框中输入7,输出结果为

A.7  6  5  4  3  2  1

B.1  2  3  4  5  6  7

C.3  2  1  4  7  6  5

D.4  3  2  1  5  6  7

33.编写如下程序:

Dim x As Integer, y As Integer, z As Integer

Private Sub Command1_Click()

   Dim x As Integer

   x = 1: y = 2: z = 3

   z = fun_s(x)

   Print x; y; z

End Sub

 

Public Function fun_s(ByVal y As Integer) As Integer

   x = 5

   y = z + 1

   fun_s = x + y

End Function

程序运行后,单击命令按钮Command1,输出结果为

A.4  2  9

B.1  2  9

C.5  2  9

D.5  4  9

34.编写如下程序:

Private Sub Command1_Click()

   Dim i As Integer, x As Integer

   i = 1

   While i <= 5

      x = InputBox("请输入第" & i & "个数")

      If x Mod 3 = 2 Then

         If x \ 5 = x / 5 Then

            Print "A";

         Else

            Print "B";

         End If

      End If

      i = i + 1

   Wend

End Sub

程序运行后单击命令按钮Command1并依次在输入对话框中输入1120153217输出结果为

A.BAABB

B.ABBAA

C.BABB

D.ABAA

35.在窗体上画1个名称为Command1的命令按钮,1个名称为Label1的标签,然后编写如下事件过程:

Private Sub Command1_Click()

   Dim n As Integer, t As Integer

   n = 1: t = 1

   Do

      n = n + 1

      t = t * n

   Loop Until n > 4

   Label1.Caption = t

End Sub

程序运行后单击命令按钮Command1则标签中显示的内容是

A.1

B.2

C.24

D.120

36.编写如下程序:

Private Sub Command1_Click()

   Dim a As Integer, b As Integer, c As Integer

   Dim n As Integer, s As Integer

   a = 1

   While a <= 3

      For b = 1 To a

         For c = b To 3

            s = s + 1

         Next c

         n = n + 1

      Next b

      a = a + 1

   Wend

   Print n; s

End Sub

程序运行后单击命令按钮Command1输出结果为

A.3  14

B.6  14

C.3  9

D.6  9

37.在窗体上画1个名称为Command1的命令按钮,然后编写如下事件过程:

Private Sub Command1_Click()

   Dim k As Integer, x As Integer

   Randomize

 

   Do

      For k = 1 To 1000

         x = Int(Rnd() * 100)

         Print x;

         Select Case x

            Case 10

               Exit For

            Case 50

               Exit Do

            Case 60, 90

               End

         End Select

      Next k

   Loop

End Sub

上述事件过程执行后下列叙述中正确的是

A.事件过程无法正常结束

B.DO循环的执行次数为1000

C.当产生的随机数为10时退出所有循环

D.当产生的随机数为60或90时关闭窗体,结束程序

38.在窗体上画1个名称为Command1的命令按钮,1个名称为Label1的标签,然后编写如下事件过程:

Private Sub Command1_Click()

   Dim m As Integer, x As Integer

   Dim tag As Boolean

 

   x = InputBox("请输入一个正整数")

   Do

      tag = True

      m = 2

      Do While tag And m < x \ 2

         If x Mod m = 0 Then

            tag = False

         Else

            m = m + 1

         End If

      Loop

      If Not tag Then x = x + 1

   Loop While Not tag

   Label1.Caption = x

End Sub

程序运行后,单击命令按钮Command1,并在输入对话框中输入14,则标签中显示的内容是

A.7

B.13

C.14

D.17

39.编写如下程序:

Private Sub Command1_Click()

   Dim a As Integer, i As Integer

   a = 2

   For i = 1 To 3

      Print fun_s(a);

   Next i

End Sub

 

Function fun_s(a As Integer) As Integer

   Dim b As Integer

   Static c As Integer

   a = a + 1

   b = b + 1

   c = c + 1

   fun_s = a + b + c

End Function

程序运行后单击命令按钮Command1输出结果为

A. 4  5  6

B. 5  6  7

C. 5  7  9

D. 4  6  8

40.窗体上有2个名称为List1、List2的列表框,1个标题为"移动"的命令按钮Command1,如图所示。在List1中选择多个项目,并单击"移动"命令按钮,则选中的项目被移动到List2中。编写如下程序:

Private Sub Command1_Click()

    Dim i As Integer,j As Integer, k As Integer

    Dim n As Integer,arr() As Integer

    n=List1.SelCount

    ReDim arr(1 to n)

 

    m=1

    For i=1 To List1.ListCount 'i循环

        If List1.Selected(i) Then

            arr(m)=i

            m=m+1

        End if

     Next i

     For j=1 To n              'j循环

        List2.AddItem.List1.List(arr(i))

        List1.RemoveItem arr(i)

        For k=j+1 TO n         'k循环

             arr(k)=arr(k)-1

        next k

      next j

End Sub

运行程序,发现有错误,以一下正确的修改是

A.i循环的初始语句应改为:For i = 0 To List1.ListCount - 1

B.k循环的循环体应改为:arr(k) = arr(k) + 1

C.j循环的初始语句应改为:For j = m - 1 To n

D.删除k循环涉及的三行代码

1.A  2.D  3.B  4.C  5.A  6.B  7.A  8.A  9.B  10.B  11.C  12.B  13.D  14.D  15.A  16.B  17.C  18.D  19.C  20.D  21.B  22.C  23.D  24.D  25.D  26.A  27.D  28.A  29.C  30.A  31.C  32.A  33.B  34.C  35.D  36.B  37.D  38.D  39.C  40.A