素数问题
程序代码:#include<stdio.h>
#include<math.h>
#define N 101
main()
{
int i,j,line,a[N];
for(i=2;i<N;i++)
{
a[i]=i;
}
for(i=2;i<sqrt(N);i++)
{
for(j=i+1;j<N;j++)
{
if(a[i]!=0&&a[j]!=0)
if(a[j]%a[i]==0)
a[j]=0;
}
}
printf("\n");
for(i=2,line=0;i<N;i++)
{
if(a[i]!=0)
{
printf("%5d",a[i]);
line++;
}
if(line==10)
{
printf("\n");
line=0;
}
}
} for(i=2;i<sqrt(N);i++){
for(j=i+1;j<N;j++)
{
if(a[i]!=0&&a[j]!=0)
if(a[j]%a[i]==0)
a[j]=0;
}
}
帮忙解释下这几句。。。。还有那个sqrt(n)为什么不是100的开方而是101的开方?






