全国二级VB问题

来源:百度知道 编辑:UC知道 时间:2024/05/10 11:43:12
过程如下
Private Sub Command1_Click()
n = 0
For i = 1 To 3
For j = 5 To 1 Step -1
n = n + 1
Next j, i
Print n; j; i
End Sub
请问答案为什么是“15 0 4”?
n是15没问题的,为什么j和i输出值为0和4?

在内循环中,比如
For j = 5 To 1 Step -1
n = n + 1
Next j,i
在i=1的时候,然后给j赋值5,时,然后经过step -1,j的值已经变成了4,然后再经过n=n+1,n的值就=1了,然后j=4在返回去验证是否属于5 to 1,结果4在那个区间中,再经过step -1,j此时变成3了,再经过n=n+1,n变成2。依次类推,当经过5次累加是j已经变成0,不满足条件,然后返回i(此时i=2)。
外循环也一样理解,所以当i=4,j=0的时候,整个循环结束,输入结果15 0 4

两个for循环嵌套!说的直白点:就是i从1到3 && (这个知道吧?C中代表‘与’)j从5到0的时候执行 n=n+1 ,当n=15的时候i=? && j=?算下!
n=15的时候,i=4,j=0 ——所以 此时print n;j;i 就是这个答案了,说的很直白了,能听懂不?

j在内循环中是步长为1做递减,最后循环为0时不满足条件退出,结束当然是0
i是外层循环同理是4;

for循环是自动+变量值的,加完再判断是否符合条件 如果符合执行 就算不符合 它也加完了