for(j=0,i=0;j<6,i<10;j++,i++) { k=i+j; } k 值最后是多少?
<scripttype="text/javascript">functionTest(){vark=0;for(j=0,i=0;j<6,i<10;j++,i++){k=i...
<script type="text/javascript">
function Test()
{
var k=0;
for(j=0,i=0;j<6,i<10;j++,i++)
{
k=i+j;
}
alert(k);
}
</script>
它是怎么循环的? 展开
function Test()
{
var k=0;
for(j=0,i=0;j<6,i<10;j++,i++)
{
k=i+j;
}
alert(k);
}
</script>
它是怎么循环的? 展开
展开全部
答案是18,首先每次for循环的i和j值是相等的:
第一次:j=0,i=0, 符合条件,k=j+i=0;
第二次:j=1,i=1,符合条件,k=j+i=2;
第三次:j=2,i=2,符合条件,k=j+i=4;
第四次:j=3,i=3,符合条件,k=j+i=6;
第五次:j=4,i=4,符合条件,k=j+i=8;
第六次:j=5,i=5,符合条件,k=j+i=10;
第七次:j=6,i=6,符合条件,k=j+i=12(这里需要注意,循环继续的判断依据以分号前的最后一项为准,即判断i<10符不符合条件。
第八次:j=7,i=7,符合条件,k=j+i=14;
第九次:j=8,i=8,符合条件,k=j+i=16;
第十次:j=9,i=9,符合条件,k=j+i=18;
第十一次:j=10,i=10,不符合条件,循环结束。
for循环共执行10次,k的最终值等于18。
这里值得一提的是如果把条件j<6,i<10;改成j<10,i<6;
结果将完全不同,此时循环执行到i=5就会结束,此时k=10。
第一次:j=0,i=0, 符合条件,k=j+i=0;
第二次:j=1,i=1,符合条件,k=j+i=2;
第三次:j=2,i=2,符合条件,k=j+i=4;
第四次:j=3,i=3,符合条件,k=j+i=6;
第五次:j=4,i=4,符合条件,k=j+i=8;
第六次:j=5,i=5,符合条件,k=j+i=10;
第七次:j=6,i=6,符合条件,k=j+i=12(这里需要注意,循环继续的判断依据以分号前的最后一项为准,即判断i<10符不符合条件。
第八次:j=7,i=7,符合条件,k=j+i=14;
第九次:j=8,i=8,符合条件,k=j+i=16;
第十次:j=9,i=9,符合条件,k=j+i=18;
第十一次:j=10,i=10,不符合条件,循环结束。
for循环共执行10次,k的最终值等于18。
这里值得一提的是如果把条件j<6,i<10;改成j<10,i<6;
结果将完全不同,此时循环执行到i=5就会结束,此时k=10。
展开全部
结果为18 。
条件代码为j<6,i<10,中间为逗号,条件表达式的最后结果要看逗号后的结果,因此,这个循环进行10次,第一次:j和i均为0,......第十次j=9,i=9后,自加1 ,进行条件判断,10<10不成立,循环停止。
条件代码为j<6,i<10,中间为逗号,条件表达式的最后结果要看逗号后的结果,因此,这个循环进行10次,第一次:j和i均为0,......第十次j=9,i=9后,自加1 ,进行条件判断,10<10不成立,循环停止。
追问
条件表达式的最后结果要看逗号后的结果,这名话是什么意思我的i<6它怎么能为9呢
追答
举例:
a=(b=3,c=4);//结果为a==4,并且完成了,b和c的赋值
a=(b==0,c<0);//设b=0,c=c,这个表达式的结果,a为假
a=(b<0,c==0)//设b=0,c=c,这个表达式的结果,a为真
等等;问题中j<6,i<10,虽然j<6已经为假,但循环没有结束,因此j++还要进行,就是这个原因。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最后 是 9 + 9 = 18
j<6 i<10
当i=9时 j=9
k=18
当i=10 j=10 不满足 i<10
不执行 i+j 所以 k停留在18上
j<6 i<10
当i=9时 j=9
k=18
当i=10 j=10 不满足 i<10
不执行 i+j 所以 k停留在18上
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询