VB菜鸟For 循环题

来源:百度知道 编辑:UC知道 时间:2024/06/07 03:12:44
Private Sub Form_Click()
For i = 1 To 2
For a = 1 To i '不懂这里
b = b + 1
Next
Next
Print b
End Sub
结果是b=3
请高手用中文详细翻译一下。为什么等于3

将 i 从1到2
将 a 从1到i
b等于b加1
下一个a
下一个i
显示b

i第一次循环:
i=1时
将 a 从 1 到 1
b等于b(未赋值为0)+1 ‘这时b为1
i第二次循环:
i=2时
将 a 从 1 到 2 ’进行2次
b=b(上次为1)+1
b为2
a的第二次循环:
b=b(上次为2)+1
b为3

显示b 即显示3
所以就显示3了

i 可以等于1和2.
当i等于1时,a=1 to 1,所以a等于1.
当i等于2时,a=1 to 2,所以a可以等于1,也可以等于2.
也就是(1,1)(2,1)(2,2)
b是用来累加的,一共有三组数据。所以累加三次。一共是3.

就是等于3

你这段代码只是将b=b+1重复了三次,变量a和变量i都没有用
这段代码只for语句循环语句的镶嵌而已

2+1等于几?

我说下FOR的特性。FOR循环大多用于已知循环次数的循环中,在STEP缺舍的情况下,默认步长为1。FOR的执行条件限制,基本不会造成死循环,当起始条件和结束条件和步长不冲突,FOR都会执行一次数!当然这个特性不包括起始条件和结束条件都是本身,也就是如果都是他本身那么不管STEP是多少都会执行一次!
比如以下情况就不会执行:
for i=1 to 10 step -3
`````
next i
但改成以下情况就会执行:
for i=1 to 1 step -10000000000
```
next i
这样你的程序就很明了了!
你这个程序的完整应该是这样的:
For i = 1 To 2 step 1
For a = 1 To i step 1 '不懂这里
b = b + 1
Next a
Next i
Print b