VB菜鸟题

来源:百度知道 编辑:UC知道 时间:2024/09/27 10:16:22
Private Sub Command1_Click()
For i=1 To 9
a=a + i
Next i
x=Val(i)
MsgBox x
End Sub

最后输出的值 为什么是 10???

那是因为For语句的一个特点,即next 之后会根据步长增加或减小变量的大小。
设想当i=9时(即执行循环的最后一次),执行语句a=a+i之后。根据我前面所说的:在next语句的效果下,即变量i增加(步长)1变为10。这也就是为什么会在而后的输出时会出出现10

因为第9次循环结束时执行到到Next i时先把i + 1,然后检查,发现i的值超过了循环的结束值9,所以循环结束,所以i=10,而不是=9