ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

JavaSE基础50题:9. 求1~100内的所有素数

2026/8/16 0:26:06 拓冰建站 浏览量
JavaSE基础50题:9. 求1~100内的所有素数

【概述】
素数:只能被1和自己整除。

素数的判断方法:
我们把非素数都写成 a×b 的形式,如:
16 = 1×16 16 = 2×8
24 = 1×24 24 = 2×12 24 = 3×8 24 = 4×6
同样,我们发现,a 和 b 其中一定会有一个数字 <= 根号n,比方法2的范围又缩小了。
在代码中,用 Math.sqrt(); 表示根号
————————————————
判断一个数是否为素数,在我之前写的那篇有3种方法的详解,在此附上原文连接,
原文链接:https://blog.csdn.net/T2283380276/article/details/134723172

【代码】

package practice;import java.util.Scanner;/*** @Author : tipper* @Description :求1-100中所有的素数*/
public class P9 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt(); //输出 1-n内所有素数for (int i = 1; i <= n; i++) {int j = 2;for (; j <= Math.sqrt(i); j++) {if (i % j == 0) {break;}}if (j > Math.sqrt(i)) {System.out.println(i + "是素数!");}}}
}

【输出结果】
在这里插入图片描述