高分悬赏了,在线等!!Java语言程序设计,输出1-200以内所有的质数,并且每5个换一行,每个之间有一个空格
你好,这是我刚刚写好的代码,求素数的方法使用的是Eratosthenes筛选法
代码如下
public class Main
{
public static void main(String[] args){
//使用Eratosthenes筛选法,从a[2]到a[200],每个值为0的a[i]的i就是素数
int[] a = new int[205];
for (int i = 2; i <= 200; i++)
if (a[i] == 0)
for (int j = 2; j * i <= 200; j++)
a[j * i] = 1;
//准备好控制格式所需要的一些变量
int counter = 0;
//开始打印
for (int i = 2; i <= 200; i++){
//判断是否为素数
if (a[i] == 0){
//格式控制,如果counter!=0,则打印一个空格
if (counter != 0)
System.out.print(" ");
//打印素数
System.out.print(i);
//计数器 + 1
counter++;
}
//判断是否满足换行条件
if (counter == 5){
//换行
System.out.println();
//重置计数器
counter = 0;
}
}
}
}
如果有什么疑问的话,可以说出来