求教一道VB编程题

在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimiAsInt... 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:
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
程序运行后,单击命令按钮,在文本框中显示的值是(  )。
A) 2
B) 3
C) 4
D) 5
这题答案是B
【解析】程序中For循环的结束有两种情况,一种是循环完指定的次数,一种是达到一定的条件后直接退出循环。由于在循环体中循环变量i的值被修改:i=i+3,因此,每次循环开始时i的取值为0,4,8,i为8时执行i=i+3=11,n=n+1=3,这时i的值大于10,退出For循环,因此For循环执行了3次,即n的值为3。所以在文本框中会显示3。
这里我看不懂为什么i的取值是0,4,8,我感觉i应该是0,3,6才对啊,第一次是0,第二次0+3难道不是6吗?就这里不懂,vb我是菜鸟一个,求大神指教
展开
 我来答
网海1书生
科技发烧友

2014-02-12 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26228

向TA提问 私信TA
展开全部
i既然是循环变量,那么它自身也会递增的啊,比如第1次是0,第2次就是0+1+3=4,第3次是4+1+3=8
你也可以这样想:假如没有i=i+3这一行,则i的值是按0,1,2,3,4,5,6....这样变化的,加入i=i+3后,就是在原来+1的基础上再+3,实际上就相当于+4了!
涐吢铱舊囿儚
2014-02-12 · TA获得超过488个赞
知道小有建树答主
回答量:512
采纳率:100%
帮助的人:584万
展开全部
注意:在For循环中,当执行 Next 语句时,控制变量会被“增量”。
你的这个代码中,For的步长是默认值1,每次Next时,i的值会再增加1
因此就是0、4、8……了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
syx54
2014-02-12 · TA获得超过7378个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2759万
展开全部
关键的一点你忘了?
难道
For i = 0 To 50
print i
Next i
i 永远是0吗?因为执行Next i,i要增加1的呀????????????
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式