有下面程序代码: Private Sub Command1_Click() Dim a%(10) For k = 1 To 9 a(k) = InputBox("") Next k Call proc(a()

admin2019-06-20  30

问题 有下面程序代码:
Private Sub Command1_Click()
    Dim a%(10)
    For k = 1 To 9
        a(k) = InputBox("")
    Next k
    Call proc(a(), 6, 3, 10)
    For k = 1 To 10
        Print a(k); " ";
    Next k
End Sub
Private Sub proc(a%(), x%, m%, n%)
    For k = n To m + 1 Step -1
        a(k) = a(k - 1)
    Next k
    a(k) = x
End Sub
Command1_Click过程运行时,从键盘输入9个数:12  32  65  34  87  56  79  50  52,则输出是

选项 A、12  32  65  34  87  56  79  50  52
B、6  12  32  65  34  87  56  79  50  52
C、12  32  65  34  87  56  79  50  52  6
D、12  32  6  65  34  87  56  79  50  52

答案D

解析 数组作为过程的参数时,进行的是按地址传递,即将实参数组的起始地址传递给形参。本题首先用数组a(k)接收键盘中输入的数,进行初始化;proc()过程实现从a(10)开始依次将后一位值赋值给其前一位,直到a(4)。当k=3时,结束循环,并将x的值赋值给a(3)。故正确答案为选项D。
转载请注明原文地址:https://jikaoti.com/ti/qcN0FFFM
0

最新回复(0)