VB For Next 循环嵌套求值问题

Si=0:Sj=0Fori=1To3Forj=1ToiSk=0Fork=jTo3Sk=sk+iNextkSj=sj+jNextjSi=si+1nextiprintsi,s... Si=0:Sj=0
For i=1 To 3
For j=1 To i
Sk=0
For k=j To 3
Sk=sk +i
Next k
Sj=sj+j
Next j
Si=si+1
next i
print si,sj,sk,i,j,k

结果是3,10,3,4,4,4
求解题过程,我是初学者啊,麻烦写清楚啊,这个是考试题!
展开
 我来答
百度网友f7fee79f7
2013-06-26 · TA获得超过395个赞
知道小有建树答主
回答量:341
采纳率:0%
帮助的人:320万
展开全部
这个三层嵌套循环,分别以i,j,k为控制数渣变量,i,k的循环终止值都是3,因此,最后print出来的值就变为4,当变为4时,就不再进入循环了。j循环的终止值是i,而在循环体中i的最后取值是3,即j循环的终止值也是3,最后print出来的就也是4了。
si,sj,sk,这袭毕乎三个变量分别在三层循环中被重新赋值。

第一层i循环,循环次数是确定的,从1到3,3次,而si每一次循环拍悉被加了1,因此si为3,i值在循环结束后,增加到4。
第二层j循环,循环次数不定,其j值从1增加到i。而i进行了三次循环,故在i的三个取值中,
当i=1时,j循环进行了1次,从1到1
当i=2时,j循环进行了2次,从1到2
当i=3时,j循环进行了3次,从1到3,故j循环总的循环次数就是1+2+3=6,而每次循环,sj都被加j,而j值,在六次循环中的取值分别是:
1
1,2
1,2,3
故,这些值累加为sj的值10
同时,j循环最后一次结束时,j值增长到4
第三层的k循环,其循环次数最多,但sk的取值,只与最后一次进行了循环有关,因为每进入j循环,sk就被重新赋值为0.
由前述可知,k循环最后一次进行循环时,i=3,j=3,都进行到了最后一次。这时,k循环的情况就相当于是从3到3,只循环一次,sk=sk+i,得3.因此sk值为3.
当k循环结束时,其值亦增长为4.
网海1书生
科技发烧友

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

向TA提问 私信TA
展开全部
si= 0 sj= 0 sk= 1 i= 1 j= 1 k= 1
si= 0 sj= 0 sk= 2 i= 1 j= 1 k= 2
si= 0 sj= 0 sk= 3 i= 1 j= 1 k= 3
si= 1 sj= 1 sk= 2 i= 2 j= 1 k= 1
si= 1 sj= 1 sk= 4 i= 2 j= 1 k= 2
si= 1 sj= 1 sk= 6 i= 2 j= 1 k= 3
si= 1 sj= 2 sk= 2 i= 2 j= 2 k= 2
si= 1 sj= 2 sk= 4 i= 2 j= 2 k= 3
si= 2 sj= 4 sk= 3 i= 3 j= 1 k= 1
si= 2 sj= 4 sk= 6 i= 3 j= 1 k= 2
si= 2 sj= 4 sk= 9 i= 3 j= 1 k= 3
si= 2 sj= 5 sk= 3 i= 3 j= 2 k= 2
si= 2 sj= 5 sk= 6 i= 3 j= 2 k= 3
si= 2 sj= 7 sk= 3 i= 3 j= 3 k= 3
si= 3 sj= 10 sk= 3 i= 4 j= 4 k= 4
追问
谢谢啊 不过我还是不太懂为什么这样写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式