java根据键盘输入的n值,求n以内的素数,一行显示5个素数
时间: 2024-05-15 22:15:43 浏览: 107
以下是Java代码实现:
```java
import java.util.Scanner;
public class PrimeNumbers {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个正整数n:");
int n = input.nextInt();
int count = 0; // 记录每行已输出的素数个数
for (int i = 2; i <= n; i++) { // 从2开始判断到n
if (isPrime(i)) { // 如果i是素数
System.out.print(i + " ");
count++;
if (count % 5 == 0) { // 每输出5个素数换行
System.out.println();
}
}
}
}
// 判断是否为素数的方法
public static boolean isPrime(int num) {
if (num <= 1) { // 1不是素数
return false;
}
for (int i = 2; i <= Math.sqrt(num); i++) { // 判断到根号num就行了
if (num % i == 0) { // 如果能被整除,不是素数
return false;
}
}
return true;
}
}
```
样例输入1:
```
请输入一个正整数n:20
```
样例输出1:
```
2 3 5 7 11
13 17 19
```
样例输入2:
```
请输入一个正整数n:30
```
样例输出2:
```
2 3 5 7 11
13 17 19 23 29
```
阅读全文