第六章单元测试
  1. 定义过程的格式中,Static关键字的作用是指定过程中的局部变量在内存中的存储方式。若使用了Static关键字,则__________


  2. A:每次调用此过程,该过程中的局部变量都会被重新初始化 B:每次调用此过程时,该过程中的局部变量的值保持在上一次调用后的值
    C:定义了该过程中定义的局部变量为“自动”变量 D:在本过程中使用到的,在其他过程中定义的变量也为Static型
    答案:每次调用此过程时,该过程中的局部变量的值保持在上一次调用后的值

  3. 在过程中定义的变量,若希望在离开该过程后,还能保存过程中局部变量的值,则应使用__________关键字在过程中定义局部变量。



  4. A:Dim B:Static C:Private D:Public
  5. 根据变量的作用域,可以将变量分为3类,分别为__________


  6. A:局部变量、模块变量和窗体变量
    B:局部变量、模块变量和标准变量 C:局部变量、标准变量和全局变量
    D:局部变量、模块变量和全局变量
  7. 下列关于过程叙述不正确的是__________


  8. A:无论过程传值调用还是过程传址调用,参数传递都是双向的 B:过程的传址调用是将实参在内存的地址传递给形参 C:过程的传值调用是将实参的具体值传递给形参 D:过程的传值调用参数是单向传递的,过程的传址调用参数是双向传递的
  9. 要想从子过程调用后返回两个结果,下面子过程语句说明合法的是__________


  10. A:Sub f2(ByVal n%,ByVal m%) B:Sub f1( n%,ByVal m%) C:Sub f1(ByVal n%,m%) D:Sub f1(n%,m%)
  11. 下列定义为abc的过程定义语句中正确的是__________

  12. A:Dim Sub abc(x,y) B:Private Sub abc(x,y) As Integer
    C:Sub abc(x,y)
    D:Public abc(x,y)
  13. 有如下函数过程:

     Function gys(ByVal X As Integer, ByVal Y As Integer) As Integer

       Do While Y <> 0

    reminder = X Mod Y

    X = Y

    Y = reminder

    Loop

    gys = X

    End Function

    以下调用函数的事件过程,该程序的运行结果是__________

    Private Sub Command7_Click()

    Dim a As Integer

    Dim b As Integer

    a = 100

    b = 25

    X = gys(a, b)

    Print X

    End Sub



  14. A:25
    B:50
    C:100
    D:0
  15. 已知过程定义的首行为Sub sum(a As Integer, b As Integer)则下面过程调用语句中正确的是________


  16. A:sum x; y B:sum(x , y) C:Call sum(x ; y) D:sum x, y
  17. 设有如下程序代码

    Dim a%

    Public b%, c%

    Private Sub Form_Click()

        Dim b%

        Print a; b; c

    End Sub

    Private Sub Form_Load()

        Dim a%

        a = 5

        b = 8

        c = 10

    End Sub

    运行程序时单击窗体则在窗体上显示的是________



  18. A:0  0  10 B:5  8  10 C:5  0  10 D:0  8  10
  19. 设有以下程序片段

    Public x%

    Private y$

    Private Sub Command1_Click()

        Dim a

        ……

    End Sub

     

    Private Sub Command2_Click()

        Static b

        ……

    End Sub

    Command1_Click过程中无法访问的变量是________



  20. A:a B:b C:y D:x
  21. 编写如下程序代码

    Private Sub Command1_Click()

       Const n = 5

       Dim arrx(n) As Integer

       For i = 1 To 5

          arrx(i) = i * i

       Next i

       Call swap(arrx(), n)

       For i = 1 To n

          Print arrx(i);

       Next

    End Sub

     

    Public Sub swap(a() As Integer, k As Integer)

       For i = 1 To k / 2

          t = a(i)

          a(i) = a(k - i + 1)

          a(k - i + 1) = t

       Next

    End Sub

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


  22. A:4   1   9   25   16
    B:1   4   9   4   1 C:25   16   9   4   1
    D:1   4   9   16   25
  23. 如果在过程A中用语句Call proc(a, b) 调用下面的过程

    Private Sub proc(b As Integer, ByVal a As Integer)

        a = a + 1

        b = b * 2

    End Sub

    则调用结束后的结果是________



  24. A:过程A中变量b的值变为原有值的2倍 B:过程A中变量a的值变为原有值的2倍,b的值等于原有值加1 C:过程A中变量a的值变为原有值的2倍 D:过程A中变量b的值变为原有值的2倍,a的值等于原有值加1
  25. 在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写以下程序代码:

    Private Sub sub1(ByRef d(), ByRef m1 As Integer)

      Dim i As Integer

      m1 = d(LBound(d))

      For i = LBound(d) + 1 To UBound(d)

        If m1 < d(i) Then m1 = d(i)

      Next i

    End Sub

    Private Sub Command1_Click()

      Dim n1 As Integer

      n1=-1

      Dim data()

      data = Array(10, 20, -20, 50, 15, -5)

      Call sub1(data(), n1)

      Text1.Text = n1

    End Sub

    程序运行过程中当单击命令按钮Command1则在文本框Text1中显示的结果为________



  26. A:50 B:0 C:-5 D:-1
  27. 有以下程序代码

    Private Sub Command1_Click ()

        Print fun(10), fun(5)

    End Sub

    Private Function fun(n As Integer) As Integer

        Static t

        For k = 1 To n

            t = t + k

        Next k

        fun = t

    End Function

    执行Command1_Click过程产生的输出是________


  28. A:15            55 B:55            15 C:55            70 D:15            70
  29. 以下叙述中错误的是________


  30. A:标准模块文件的扩展名是 .bas ,工程文件的扩展名是 .vbp B:一个工程中可以包含一个或多个窗体,但不能包含其他模块 C:保存程序时,应分别保存窗体文件和工程文件 D:打开一个工程文件时,系统自动装入与该工程有关的窗体文件
  31. 以下叙述中错误的是________


  32. A:一个Visual Basic应用程序可以包含一个或多个工程 B:一个Sub过程内不能嵌套定义另一个Sub过程 C:Visual Basic应用程序只能以解释方式执行 D:MsgBox函数的返回值与在对话框中所单击的按钮有关,为一整数
  33. 要求函数的功能是:从参数str字符串中删除所有参数ch所指定的字符,返回实际删除字符的个数,删除后的字符串仍在str中,为此某人编写了函数DelChar如下:

    Function DelChar(str As String, ch As String) As Integer

        Dim n%, st$, c$

        st = ""

        n = 0

        For k = 1 To Len(str)

            c = Mid(str, k, 1)

            If c = ch Then

                st = st & c

            Else

                n = n + 1

            End If

        Next k

    str = st

        DelChar = n

    End Function

    并用下面的Command1_Click()过程观察函数调用结果

    Private Sub Command1_Click()

        ch$ = Text1.Text

        Print DelChar(ch, "x"), ch

    End Sub

    发现结果有错误程序代码需要修改以下正确的修改方案是________


  34. A:删掉语句str = st B:把语句Print DelChar(ch, 'x'), ch改为Print DelChar(ch, 'x') :Print ch C:把语句If  c = ch  Then 改为If  c <> ch  Then D:把语句DelChar = n 改为 DelChar = st
  35. 如果窗体模块A中有一个过程

    Private Sub Proc( )

        ……

    End Sub

    则下面叙述中错误的是________



  36. A:在窗体模块B中可以调用此过程 B:在标准模块中不能调用此过程 C:窗体模块A中任何其他过程都可以调用此过程 D:在窗体模块B中可以有与此相同名称的过程
  37. 以下关于VB文件的叙述中,正确的是________


  38. A:一个.vbp文件只能含有一个标准模块文件 B:一个.vbg文件中可以包括多个.vbp文件 C:标准模块文件的扩展名是.frm D:类模块文件的扩展名为.bas
  39. 下面叙述中正确的是________


  40. A:一个工程中只能有一个标准模块 B:一个工程由一个窗体模块和一个标准模块组成 C:窗体模块中包含本窗体的所有事件过程,标准模块中包含本标准模块的所有事件过程 D:一个窗体是一个窗体模块
  41. 以下叙述中错误的是________


  42. A:打开一个工程文件时,系统自动装入与该工程有关的窗体文件 B:标准模块文件的扩展名是 .bas ,工程文件的扩展名是 .vbp C:一个工程中可以包含一个或多个窗体,但不能包含其他模块 D:保存程序时,应分别保存窗体文件和工程文件
  43. 以下叙述中错误的是________


  44. A:在标准模块中不能定义过程 B:标准模块文件是纯代码文件 C:标准模块文件的扩展名是.bas D:在标准模块中声明的全局变量可以在整个工程中使用
  45. 下面有关标准模块的叙述中,错误的是________


  46. A:标准模块中的全局变量可以被工程中的任何模块引用 B:标准模块中的Private过程不能被工程中的其他模块调用 C:标准模块的文件扩展名为.bas D:标准模块不完全由代码组成,还可以有窗体
  47. 下面关于标准模块的叙述中错误的是________


  48. A:标准模块中可以声明全局变量 B:一个工程中可以含有多个标准模块
    C:标准模块中可以包含一个Sub Main过程,但此过程不能被设置为启动过程 D:标准模块中可以包含一些Public过程
  49. 在标准模块中用Public关键字定义的变量,其作用域为________


  50. A:所有窗体 B:整个工程 C:本模块所有过程 D:所有标准模块
  51. 以下叙述中错误的是________


  52. A:窗体和标准模块需要分别保存为不同类型的磁盘文件 B:在一个窗体文件中用Private定义的通用过程可以被其他窗体调用 C:全局变量可以在标准模块中定义 D:一个工程中可以包含多个窗体文件
  53. 下列关于标准模块的叙述中,错误的是________


  54. A:标准模块文件的扩展名为.bac B:标准模块可以在某个窗体中建立 C:标准模块是一个纯代码文件 D:标准模块中的Public过程可以被不同窗体的程序调用
  55. 以下关于VB文件的叙述中,错误的是________


  56. A:一个工程只有一个工程文件 B:工程文件的扩展名为.frm C:标准模块文件不属于任何一个窗体 D:一个工程可以有多个窗体文件
  57. 以下关于VB文件的叙述中,正确的是________


  58. A:一个工程文件只能含有一个标准模块文件 B:类模块文件的扩展名为.bas
    C:VB应用程序可以被编译为.exe文件 D:标准模块文件的扩展名是.frm
  59. 如果在窗体模块中所有程序代码的前面有语句:Dim x  ,则x________


  60. A:局部变量
    B:静态变量
    C:窗体级变量 D:全局变量
  61. 如果将数组名作为函数调用的实参,则传递给形参的是________


  62. A:数组最后一个元素的值 B:数组第一个元素的地址 C:数组全部元素的值 D:数组第一个元素的值

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(4) dxwkbang
返回
顶部