/*
素数的筛选找法
coder:qpz
time:2014-12-15
*/
#include <stdio.h>
#include <stdlib.h>
void Init(char *a,int n)
{
inti;
for(i=0;i<n;i++){
if(i<2){
a[i]=0;
}else{
a[i]=1;
}
}
}
void findit(char *a,int n);
int main(void)
{
intn;
scanf("%d",&n);
char*a=(char *)malloc((n+1)*sizeof(char));
Init(a,n);
findit(a,n);
return0;
}
void findit(char *a,int n)
{
inti,j;
intcnt;
printf("%d以内的素数有:",n);
for(i=4;i<=n;i++){
for(j=2;j*j<i;j++){
if(a[j]){
if(i%j == 0){
a[i]=0;
break;
}
}
}/*endj*/
}/*endi*/
for(i=0,cnt=0;i<=n;i++){
if(a[i]){
if(cnt%10== 0) {
putchar('
');
}
printf("%5d",i);
cnt++;
}
}
}