VB For i = 1 To 4 Next i Print i 为什么结果是5

2024-12-15 00:49:07
推荐回答(3个)
回答1:

Next i 的作用相当于i=i+1,所以当循环结束时,i就是5。
从另一个角度来想,如果i等于4,那么它就仍然符合循环条件,会继续循环下去。正是由于它等于5,才有可能退出循环。

回答2:

因为当I循环完4次之后,会自动加1,并且返回去判断I在不在循环的范围,所以I的值会+1
你可以通过以下代码测试
Private Sub Form_Load()
For i = 1 To 4
Debug.Print i
Next i
End Sub

回答3:

for循环是这样运行的
For i = 1 To 4
Next i
Print i
程序遇到for语句是否将数值1赋值给循环变量i判断是否超过终值4,否,执行循环体,这是循环体为空,什么都不执行进入下一条语句next i 这个语句是这样的吧循环变量i加上步长,此处步长为1 (以省略)即i=i+1,next i 执行完i变为2返回到for
判断是否超过终值4,否(i现在为2),执行循环体,进入下一条语句next i ,循环变量i加上步长,i变为3返回到for
判断是否超过终值4,否(i现在为3),执行循环体,进入下一条语句next i ,循环变量i加上步长,i变为4返回到for
判断是否超过终值4,否(i现在为4),执行循环体,进入下一条语句next i ,循环变量i加上步长,i变为5返回到for
判断是否超过终值4,否(i现在为5),不执行循环体直接调到next 的下一条语句
执行完循环否循环变量总是大于(没有等于的)终值的(除了中途跳出)

不懂可以追问