请高手帮我看下这个程序题的答案是什么?为什么?多谢了

来源:百度知道 编辑:UC知道 时间:2024/05/09 01:49:53
Private Sub Command1_Click()
Dim i As Integer, n As Integer
For i = 0 To 50
i = i + 3
n = n + 1
If i > 10 Then Exit For
Next
Text1.Text = Str(n)

End Sub

第一次:
i = 3 <10
n = 1
NEXT:i = 4

第二次:
i = 7 <10
n = 2
NEXT:i = 8
i = 11>10
n = 3
退出FOR循环
NEXT:无
所以Text1.Text = 3

第1次循环后
i=4:n=1
2次循环后
i=8:n=2
3次循环中
i=11:n=3
退出

可以一步一步的来分析
当i= 0 时
i = 3
n = 1
i +=1 = 4
i = 7
n = 2
i +=1 = 8
i = 11
n = 3
exit for
所以n = 3

你这段代码可以换成更简单的,功能一样的代码(VB2005或VB2008)

Private Sub Command1_Click()
Dim n As Integer
For i As Integer = 3 To 10 Step 3
n += 1
Next
Text1.Text = n
End Sub

循环
当I=0 执行第一次循环
则 N =1;I变成3
那么又执行I=3的循环
此时N=2;I=6
继续N=3;I=9
注意此时,I还没有大于10
则还要执行一次循环 此时结果为
N=4 I=12
12>10 退出循环.
将N的值转换成字符串(STR)显示在文本框里
即文本框显示 4

注意NEXT的时候i会加1,所以应该是3.