3 回答
已采纳
莫名所以
TA贡献12条经验 获得超9个赞
因为for循环初始化值i=7, 判断条件语句是i>0, 每循环一次i=i-2;
直到i=1; 再减下去 i就等于-1了, 因为条件句是i>0所以,是false,不会再执行j*=2;
(在这里说明一下j*=2 其实就是j=j*2 , i-=2 就是i=i-2)
for循环前面定义了变量,int j=2;
第1次循环: i=7 判断大于0,正确执行 运行了1次 j=2*2=4; 结果=4 会赋值前面定义的变量 j
第2次循环: i=7-2=5 判断大于0 ,正确执行 运行了1次 j=4*2=8 结果=8会赋值前面定义的变量 j
第3次循环: i=5-2=3 判断大于0 ,正确执行 运行了1次 j=8*2=16 结果=16会赋值前面定义的变量 j
第4次循环: i=3-2=1 判断大于0,正确执行 运行了1次 j=8*2=32 结果=32会赋值前面定义的变量 j
第5次循环: i=1-2=-1 判断小于0, 返回false ,错误所以不执行大括号中的语句
最后输出j=32
int count =0;//这个count 是计算for循环的次数,这个可以不关注 int j =2; for (int i = 7; i > 0; i-=2) { count++; System.out.println("第"+count +"次循环i=" +i); j*=2; //这个就是 j=j*2 的意思 System.out.println("j=" + j);//我把每一次循环的结果都算出来了 }
留得枯荷听雨声lyx
TA贡献51条经验 获得超16个赞
初始值 i=7;
第一次:j*2=4 i-2=5;
第二次:j*2=8 i-2=3;
第三次 J*2=16 i-2=1;
第四次 j*2=32 i-2=-1
第五次条件判断:i=-1<0不符合条件退出循环
添加回答
举报
0/150
提交
取消