刚学,问一下这个代码为什么输出会在第三行,第五行空出一行啊,哪里出错了?

刚学,问一下这个代码为什么输出会在第三行,第五行空出一行啊,哪里出错了?

问题描述:


public static void main(String[] args) {
        //将100-150之间不能被3整除的数输出,并且每行输出5个
        int count = 0;
        for (int i = 100; i <= 150; i++) {
            if (i % 3 != 0) {
                System.out.print(i + "\t");
                count++;
            }
            if (count%5==0){
                System.out.println();
            }
        }
    }

img


    public static void main(String[] args) {
        //将100-150之间不能被3整除的数输出,并且每行输出5个
        int count = 0;
        for (int i = 100; i <= 150; i++) {
            if (i % 3 != 0) {
                count++;
                System.out.print(i + "\t");
                if (count % 5 == 0) {
                    System.out.println();
                }
            }
        }
    }

以上是改过后的 因为 第二行113到第四行115输出的时候 中间还有个114的遍历,此时count % 5 == 0还是满足的,此时的count为10

同理第五行也是这个原因 128到130之间还有个129

把以下代码放到i % 3 != 0里就可以了:

                if (count % 5 == 0) {
                    System.out.println();
                }