有如下程序代码: Function Sum(n As Integer) Static k As Integer k = k + n + 1 Sum = k End Function Private Sub Form_Click()

admin2019-03-14  28

问题 有如下程序代码:
Function Sum(n As Integer)
    Static k As Integer
    k = k + n + 1
    Sum = k
End Function
Private Sub Form_Click()
    Dim i As Integer
    Dim s As Integer
    For i = 1 To 3
       s = s + Sum(i)
    Next i
    Print s
End Sub
运行程序,单击窗体,输出结果为

选项 A、6
B、9
C、12
D、16

答案D

解析 当用Static定义k时,如果没有退出程序,每次引用静态变量的数组后,其值将继续保留,作为下次引用时该变量的初始值。当i=1时,调用sum(1),k=0+1+1=2,s=0+2=2;当i=2时,调用sum(2),k=2+2+1=5,s=2+5=7;当i=3时,调用sum(3),k=5+3+1=9,s=7+9=16。退出For循环,输出s为16,故选D项。
转载请注明原文地址:https://jikaoti.com/ti/kXN0FFFM
0

最新回复(0)