单选题 在窗体上面画一个命令按钮和一个标签,其名称分别为Command1和Labell,然后编写如下代码:
Sub S(x As Integer, y As Integer)
Static z As Integer
y=x*x+z
z=y
End Sub
Private Sub Command1_Click()
Dim i As Integer, z As Integer
m=0
z=0
For i=1 To 3
S i, z
m=m+z
Next i
Label1.Caption=Str(m)
程序运行后,单击命令按钮,在标签中显示的内容是______。
【正确答案】 B
【答案解析】[解析] 本题中有Sub过程,此过程中S函数使用的参数传递为地址传递,并且z变量为静态变量,所以变量z将会保存上一次计算的值,而z=y是为静态变量进行赋值。在Click事件中的z和Sub过程中的z只是同名,没有其他的关系,所以当i=1时调用S函数,此时的y=1*1+0=1,z=y=1,当i=2时,y=2*2+1=5,z=y=5,当i=3时,y=3*3+5=14,z=14,此时m=m+z,所以m=0+1+5+14=20,所以答案选择B。