关于VB的一道题,求高手详细解答,小弟感激不尽!
运行下面的程序,单击命令按钮,输出结果为()。FunctionF(aAsInteger)b=0Staticcb=b+lc=c+1F=a+b+cEndFunctionPri...
运行下面的程序,单击命令按钮,输出结果为( )。
Function F(a As Integer)
b = 0
Static c
b = b + l
c = c + 1
F = a + b + c
End Function
Private Sub Command1_Click()
Dim a As Integer
a = 2
For i = 1 To 3
Print F(a)
Next i
End Sub 展开
Function F(a As Integer)
b = 0
Static c
b = b + l
c = c + 1
F = a + b + c
End Function
Private Sub Command1_Click()
Dim a As Integer
a = 2
For i = 1 To 3
Print F(a)
Next i
End Sub 展开
4个回答
展开全部
4
5
6
三次循环,每次循环a和b的值都是 a=2,b=1
a的值是外部传递进去的,始终是2
b的值,每次进入函数F 都是会重置为0,然后b = b +1 结果都是 b=1
主要是c
由于是静态的 Static
所以,每次进入函数F时候 c的值都保持最后的值不变
第一次 c = c + 1 时候 c=1
F = a + b + c 为 2+1+1=4
第二次 c的初值是1 所以 c = c + 1之后c=2
F = a + b + c 为 2+1+2=5
第三次 c的初值是2 所以 c = c + 1之后c=3
F = a + b + c 为 2+1+3=6
5
6
三次循环,每次循环a和b的值都是 a=2,b=1
a的值是外部传递进去的,始终是2
b的值,每次进入函数F 都是会重置为0,然后b = b +1 结果都是 b=1
主要是c
由于是静态的 Static
所以,每次进入函数F时候 c的值都保持最后的值不变
第一次 c = c + 1 时候 c=1
F = a + b + c 为 2+1+1=4
第二次 c的初值是1 所以 c = c + 1之后c=2
F = a + b + c 为 2+1+2=5
第三次 c的初值是2 所以 c = c + 1之后c=3
F = a + b + c 为 2+1+3=6
展开全部
b=b+I 这行是b=b+i呢,还是b=b+1呢
结果应该是3,4,5
结果应该是3,4,5
追问
是B+1,请问为啥是3,4,5.这个答案是正确的,可小弟不明白怎么得出来的?为啥不是4,5,6?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
b = b + l??是b+1,结果是4,5,6 b + l(l大写L)结果是3,4,5,,,应该是1不是L吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
输出结果为3,4,5
追问
哥们,请问为啥?能否详细说下,感激不尽!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询