VB达人请进,急!!!!!!

来源:百度知道 编辑:UC知道 时间:2024/06/23 04:41:35
有一道VB编程题如下:
Dim y As Integer
Private Sub Command1_Click()
Dim x As Integer
x = 2
Text1.Text = p2(p1(x), y): Text2.Text = p1(x)

End Sub
Private Function p1(x As Integer) As Integer
x = x + y: y = x + y
p1 = x + y

End Function
Private Function p2(x As Integer, y As Integer) As Integer
p2 = 2 * x + y

End Function

请高手帮忙解下。。。。最好有详细的解题过程。。。。
单击1次和2次Command1时,输出的是什么,怎么计算的.

这里你只要区分出y在主函数和p1函数中是全局变量,但在p2函数里是局部变量,用的是参数值。另外全局变量y的初始值是0

函数调用顺序
第一次点击
1. p1(2) 返回4 y变成2
2. p2(4,2) 返回10
3. p1(2) 返回10 y变成6

Text1.Text=10
Text2.Text=10

第二次点击
1. p1(2) 返回22 y变成14
2. p2(22,14) 返回58
3. p1(2) 返回46 y变成30

Text1.Text=22
Text2.Text=46

解什么? 每条语句的意义 ?