求素数
root@ubuntu:~/algorithm# cat testarray.c
#include <stdio.h>
#define N 10000
int main(){
int i,j ,a[N];
for(i=2;i<N;i++) a[i]=1;
for(i=2;i<N;i++)
if(a[i])
for(j=i;i*j<N;j++) a[i*j]=0;
for(i=2;i<N;i++)
if(a[i]) printf("%4d ",i);
printf("\n");
}
#include <stdio.h>
#include <stdlib.h>
int main(int argc,char *argv[] ){
long int i,j ,N=atol(argv[1]);
int *a=malloc(N*sizeof(int));
for(i=2;i<N;i++) a[i]=1;
for(i=2;i<N;i++)
if(a[i])
for(j=i;i*j<N;j++) a[i*j]=0;
for(i=2;i<N;i++)
if(a[i]) printf("%4d ",i);
printf("\n");
}