以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]流程控制语句 do while loop (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=60828) |
-- 作者:laotang1984 -- 发布时间:2014/12/1 22:40:00 -- [求助]流程控制语句 do while loop 代码1: Dim Sum As Integer Dim i As Integer = 1 Do While i <= 100 i = i + 1 Sum = Sum + i Loop Output.Show(Sum) 结果为5150 代码2: Dim Sum As Integer Dim i As Integer = 1 Do While i <= 100 Sum = Sum + i i = i + 1 Loop Output.Show(Sum) 结果为5050 在流程控制语句中i=i+1的位置不同,所得到的结果不一样 对于两段代码,如何理解?
|
-- 作者:有点甜 -- 发布时间:2014/12/1 22:52:00 -- 代码1,是 2+3+4+5+...+101
代码2,是 1+2+3+4+...+100 |
-- 作者:LAOTANG1984 -- 发布时间:2014/12/1 22:58:00 -- 关键是怎么理解呢 甜版 结果都是知道的 对于第一个5150的结果比较好理解 就是第二个 为么把i=i+1放在sum=sum+i后面? 帮助文件对基础代码语法和流程语句部分的讲解是不是有所欠缺? 没有编程基础的人看起来懵懵懂懂的 |
-- 作者:有点酸 -- 发布时间:2014/12/1 23:13:00 -- i = i +1在前面的话,就是i先加上1,sum再加上i,所以sum是2+3+4+...+101 i = i +1在后面的话,sum先再加上i,i再加上1,所以sum是1+2+3+4+...+100
没有"为什么把i=i+1放在sum=sum+i后面"的疑问,放在前面和后面的计算结果不同,你需要得到那个结果,就那样放。 |