打印所有的素数java
时间: 2023-12-20 22:22:00 浏览: 51
java实现打印素数/质数程序
5星 · 资源好评率100%
以下是打印素数的 Java 代码:
```java
public class PrintPrimes {
public static void main(String[] args) {
int n = 100; // 打印 1 到 100 的素数
boolean[] isPrime = new boolean[n + 1]; // 默认所有数都是素数,初始化为 true
for (int i = 2; i <= n; i++) {
isPrime[i] = true;
}
for (int i = 2; i * i <= n; i++) {
if (isPrime[i]) {
// i 的倍数不是素数
for (int j = i * i; j <= n; j += i) {
isPrime[j] = false;
}
}
}
// 输出素数
for (int i = 2; i <= n; i++) {
if (isPrime[i]) {
System.out.print(i + " ");
}
}
}
}
```
该程序使用了埃氏筛法,时间复杂度为 $O(n \log \log n)$。
阅读全文