第五章单元测试
  1. 假定有如下的Sub过程:

    Sub fun(x As Single, y As Single)

        t = x

        x = t / y

        y = t Mod y

    End Sub

    在窗体上画一个命令按钮,然后编写如下事件过程:

    Private Sub Command1_Click()

        Dim a As Single

        Dim b As Single

        a = 6

        b = 4

        fun a, b

        Print a, b

    End Sub

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


  2. A:

    1  1

    B:

    5  4

    C:

    1.25  4

    D:

    1.5  2


    答案:

    1.5  2


  3. 假定有以下函数过程:

    Function Fun(s As String) As String

        Dim s1 As String

        For i = 1 To Len(s)

            s1 = UCase(Mid(s, i, 1)) + s1

        Next i

        Fun = s1

    End Function

    在窗体上添加一个命令按钮,然后编写如下事件过程:

    Private Sub Command1_Click()

        Dim Str1 As String

        Dim Str2 As String

        Str1 = InputBox("请输入一个字符串")

        Str2 = Fun(Str1)

        Print Str2

    End Sub

    程序运行后,单击命令按钮,如果在输入对话框中输入字符串“abcdefg”,则单击“确定”按钮后再窗体上输出的结果为(   )。


  4. A:

    ABCDEFG

    B:

    GFEDCBA

    C:

    Abcdefg

    D:

    gfedcba

  5. 有如下函数过程:

    Function secproc(x As Integer, y As Integer, z As Integer)

        secproc = 3 * y + z + 2 * x

    End Function

     

    Private Sub Command1_Click()

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

        a = 2: b = 3: c = 4

        Print secproc(c, b, a)

    End Sub

    该程序的运行结果是(   )。


  6. A:

    19

    B:

    20

    C:

    17

    D:

    18

  7. 有如下函数过程:

    Function Cys(ByVal x As Integer, ByVal y As Integer) As Integer

        Dim quotients

        Do While y <> 0

            quotients = x / y

            x = y

            y = quotients

        Loop

        Cys = x

    End Function

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

    Private Sub Command1_Click()

        Dim a As Integer

        Dim b As Integer

        a = 10

        b = 2

        x = Cys(a, b)

        Print x

    End Sub


  8. A:

    0

    B:

    5

    C:

    100

    D:

    25

  9. 以下是一个能返回数组a中最大数的函数过程代码: 

    Function maxval(a() As Integer) As Integer   

    Dim max%   

    max = 1 

    For i = 2 To 10 

    If a(i) > a(max) Then max = i   

    Next i 

         maxval = max 

    End Function 

    Private Sub Command1_Click()

        Dim x(1 To 10) As Integer

        For i = 1 To 10

            x(i) = Int(Rnd() * 100)

            Print x(i);

        Next i

        Print

        Print maxval(x())

    End Sub

    程序运行时,发现函数过程的返回值是错的需要修改,下面的修改方案中正确的是(  )。 


  10. A:

    语句“max = 1”应改为“max = a(1)” 

    B:

    If语句“max = i”应改为“max = a(i)”

    C:

    语句“For i = 2 To 10”应改为“For i = 1 To 10”

    D:

    语句“maxval = max ”应改为“maxval  = a(max)”

  11.  在窗体上画一个命令按钮(名称为Command1),并编写如下代码:

    Function Fun1(ByVal a As Integer, b As Integer) As Integer

        Dim t As Integer

        t = a - b

        b = t + a

        Fun1 = t + b

    End Function

     

    Private Sub Command1_Click()

        Dim x As Integer

        x = 10

        Print Fun1(Fun1(x, (Fun1(x, x - 1))), x - 1)

    End Sub

    程序运行后,单击命令按钮,输出结果是(  )。


  12. A:

     10

    B:

     0

    C:

     11

    D:

     21

  13. 下面程序的运行结果为(   )。

    Dim a%, b%, c%

    Sub p1(x%, y%)

        Dim c As Integer

        x = 2 * x: y = y + 2: c = x + y

    End Sub

    Sub p2(x%, ByVal y%)

        Dim c As Integer

        x = 2 * x: y = y + 2: c = x + y

    End Sub

    Private Sub Command1_Click()

        a = 2: b = 4: c = 6

        Call p1(a, b)

        Call p2(a, b)

        Print a; b; c

    End Sub


  14. A:

     4  6  10

    B:

     8  6  6

    C:

     8  8  6

    D:

     4  6  6

  15. 下面程序:

    Function a(x)

        Static b As Integer

        b = b + x ^ 2

        Print b

    End Function

     

    Private Sub Command1_Click()

        Dim c%

        c = a(2)

    End Sub

    单击两次命令按钮,第二次显示的结果是(   )。


  16. A:

     6

    B:

     4

    C:

     2

    D:

     8

  17. 下列叙述中正确的是(   )。


  18. A:

    在某个Sub过程中定义的局部变量可以与其他事件过程中定义的局部变量同名,但其作用域只限于该过程

    B:

    在窗体的Form_Load事件中定义的变量是全局变量

    C:

    局部变量的作用域可以超出所定义的过程

    D:

    在调用过程时,所有局部变量被系统初始化为0或空字符串

  19. 若已编写了一个Sort子过程,在该工程中有多个窗体,为了方便地调用Sort子过程,应将该过程放在  (   )中。


  20. A:

    标准模块

    B:

    类模块

    C:

    窗体模块

    D:

    工程

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