首页 > 试题广场 >

以下代码的循环次数是public class Test...

[单选题]
以下代码的循环次数是
public class Test {
    public static void main(String args[]) {
        int i = 7;
        do {
            System.out.println(--i);
            --i;
        } while (i != 0);
       System.out.println(i);
    }
}


  • 0
  • 1
  • 7
  • 无限次

执行1次,5

执行2次,3

执行3次,1

执行4次,-1

永远执行不到0


发表于 2019-08-15 23:44:20 回复(2)
基础不到位啊, -- i 先运算后赋值,每次 减2,do while循环 是先执行一次,在开始执行步进表达式,所以7 5 3 1 -1 -3,永远不会满足步进表达式的布尔运算,所以是无限次
发表于 2019-12-16 22:04:16 回复(0)

执行1次,输出是6,然后再减1为5进行while判定不为o再进入do

执行2次,输出是4,然后再减1为3进行while判定不为o再进入do

执行3次,输出是2,然后再减1为1进行while判定不为o再进入do

执行4次,输出是0,然后再减1为-1进行while判定不为o再进入do

永远执行不到0

发表于 2019-08-21 22:11:56 回复(1)
从7开始,每次 -2,i  永远不可能==0
发表于 2019-08-24 09:35:09 回复(0)
每执行一次,i的值减2,由于一开始i是一个奇数,i=7,此永远不可能为零,因此会执行无数次
编辑于 2021-09-16 14:20:49 回复(0)
int类型不是有最小值吗?减到最小值之后应该会变成最大值了吧,然后在来一遍循环是可以减到0的鸭,为什么是无限次呢?
发表于 2021-07-14 19:05:15 回复(0)
哈哈哈哈哈哈把判断条件直接当场x>0的集合
发表于 2021-12-16 16:17:40 回复(1)
每次减2 7 5 3 1 -1 ...达不到条件,死循环
发表于 2021-08-05 22:31:25 回复(0)
这道题做了好多遍了
发表于 2021-03-16 11:08:18 回复(0)
每一次循环都会减二,7每次减2都是成奇数。永远执行不到0。
1:syso里减了一次1,do里面还有一句--i。
2:完全执行到0才会结束,执行1次循环及时到0以下也是会继续执行。
发表于 2020-04-06 17:32:14 回复(0)
这题关你i--还是--i都是无限循环。
发表于 2020-03-30 08:56:31 回复(0)
i一次减2 
7 5 3  1 -1 不会等于0
发表于 2023-08-15 22:25:51 回复(0)
失误

发表于 2020-07-11 09:21:48 回复(0)
即使减到了int的最小值:-2147483648,最后还是不会停止循环,因为这个最小值减1是2147483647,后面还是每次循环完都是奇数。
发表于 2024-04-07 22:51:55 回复(0)
每次减二 我傻了看错了
发表于 2023-03-13 08:28:54 回复(0)
这题好牛逼
发表于 2023-01-16 17:27:46 回复(0)
这题while条件不是 !=0 么?
发表于 2022-12-29 07:36:01 回复(0)
i=7:6、5继续循环。 i=5:4、3继续循环。 i=3:2、1继续循环。 i=1:0、-1继续循环。 以此类推,i不会在循环中等于0了,所以会一直无限循环。
发表于 2022-10-20 13:10:35 回复(0)
 System.out.println(--i);
            --i;

上面6下面5上4下3上2下1 上0下-1,下面的直接跳过了0,所以循环无限次

编辑于 2021-11-19 21:39:24 回复(0)
自减了两次,7是倒数,所以不可能等于0
发表于 2021-06-28 18:15:11 回复(0)