int i,j,n,a[101]; //对数组赋值 for (i=1;i<=100;i++) a[i]=i; a[1]=0;
//将非素数赋值为0。 for (i=2;i<sqrt(100);i++) for (j=i+1;j<=100;j++)//若a[j]为0,则已经判断了,不是素数。a[i]不为0,因其应为素数。 {if(a[i]!=0 && a[j]!=0) if (a[j]%a[i]==0) a[j]=0; } cout<<endl;
//输出素数,不为0的即为素数 for (i=1,n=0;i<=100;i++) {if (a[i]!=0) {cout<<setw(5)<<a[i]<<" "; n++;} if(n==10) {cout<<endl; n=0;} } cout<<endl;
本文介绍了一种使用C++实现的素数筛选算法。通过双重循环遍历数组元素,将非素数标记为0,最终输出1到100之间的所有素数。此算法有效地展示了素数筛选的过程。

被折叠的 条评论
为什么被折叠?



