标题:为什么a的值是6?
只看楼主
easonzgf
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2014-12-4
结帖率:75%
已结贴  问题点数:10 回复次数:7 
为什么a的值是6?
a = 6
    For k = 1 To 0
    a = a + k
       Next k
    Print k; a
2014-12-10 21:30
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:3 
因为不走循环   可以把中间的三条语句当空气

DO IT YOURSELF !
2014-12-10 23:34
easonzgf
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2014-12-4
得分:0 
回复 2楼 wp231957
可是k=1呀,不是走一个k=1的么?
2014-12-11 10:51
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
回复 3楼 easonzgf
这个流程是这样的:

1、a = 6
2、k=1
3、判断k与0的关系  如果大于则转第6步 如果小于0 则转第4步
4、a = a + k
5、Next k(k值自增后 跳转至第3步,继续判断k与0的关系)
6、Print k; a

这里因为是k=1进入循环首部 所以越过4、5 直接第6步

[ 本帖最后由 wp231957 于 2014-12-11 11:04 编辑 ]

DO IT YOURSELF !
2014-12-11 11:02
lianyicq
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:26
帖 子:735
专家分:3478
注 册:2013-1-26
得分:3 
没定步长,步长缺省为正1

大开眼界
2014-12-11 11:05
smart3000
Rank: 2
等 级:论坛游民
威 望:1
帖 子:14
专家分:12
注 册:2014-12-5
得分:3 
a = 6
    For k = 1 To 0
    a = a + k
       Next k
    Print k; a


VB循环默认步长为1,因为循环初始值k=1>0所以直接跳出循环,直接执行print语句
2014-12-11 12:36
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:3 
For k = 1 To 0 Step=-1
解决
2014-12-11 23:07
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:0 
不对,刚才错了
是For k=1 To 0 Step -1
2014-12-11 23:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-439818-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.284572 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved