b) 从下标2开始(忽略下标0和1),判断每个元素是否为true。如果是,则循环遍历数组的后续部分,将所有下标为该下标倍数的元素都设置为false。然后对下一个值为true的元素重复上面的过程。
当上述过程结束时,数组中为true的元素表示对应的下标是素数。
用一个长度为100的数组,判断并显示2~99之间的素数。
好了 经过我重新调整思路现在终于出来了,希望你能满意!!!
代码如下::
public class Sai{
public static void main(String []args){
boolean []a=new boolean[100];
int i,p=2;
for( i=2;i<a.length;i++){
a[i]=true;
}
for(i=2;i<a.length/2;i++){
a[i*2]=false;
p=2;
}
while(p*p<a.length){
p=p+1;
while(a[p]==false){
p++;
}
int t=p*p;
int s=2*p;
while(t<a.length){
a[t]=false;
t=t+s;
}
}
for(i=2;i<a.length;i++){
if(a[i])System.out.println("a["+i+"]="+a[i]);
}
}
}