疑惑:内层循环前面没有将j的值重新赋值为1,二层循环就不会再满足了,不明白k为什么是16;

来源:6-2 continue语句

何小色

2019-11-28 16:23:30

k应该为4才对吧

写回答

1回答

好帮手慕小尤

2019-11-28

同学你好,请同学查看下面循环,如图所示:

http://img.mukewang.com/climg/5ddf940709a2e3d104110223.jpg

当i = 1时,

    j = 1,j%2不等于0,则k=0+1然后执行j++,

    j = 2时,j%2等于0,则 k=2,并跳出此次循环,进行j++  

    j = 3时,j不小于3,则 for(int j=1;j<3;j++) 结束循环。执行i++

则 i=2时,

    j=1时,j%2不等于0则k=1+1    j++

    j = 2,j%2等于0,则k=4,并跳出此次循环,j++

    j = 3时,j小于3,则 for(int j=1;j<3;j++) 结束循环。执行i++

则 i=3时,

    i 不小于3,结束循环,则结果为2

同理同学可以按照这个方法推理一下i和j分别为5时的过程。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

1

0 学习 · 11489 问题

查看课程