原题:用Java语言编写程序输出1000以内的素数,我这么写输出了1-1000的所有数。为什么呢?

img


请问为什么我这样写出来的代码输出的是所有数的数呢?我应该如何修改呢?希望能够给出修改建议,谢谢。

第二个for循环,结尾多了一个分号
去掉看看
然后你下面也不对,因为素数是要全部判断,不能只是单个。
稍等,我帮你写一个

    public static void main(String[] args) {
        for (int i = 2; i <= 1000; i++) {
            boolean flag = true;
            for (int s = 2; s < i / 2; s++) {
                if (i % s == 0) {
                    flag = false;
                    break;
                }
            }
            if (flag) {
                System.out.println(i);
            }
        }
    }