用篩法求之N內的素數。
阿新 • • 發佈:2019-01-04
-----------------------------------------------第一次,失敗---------------------------------------
-------------------------------------------------第二次,成功-------------------------------------------------------#include<stdio.h> int isprime(int n); int main(void) { int N,b,c,d,e,f; int ar[1000]; scanf("%d",&N); for(c=2;c<=N;c++) { ar[c-2]=c; } for(b=0;b<=N-2;b++) { puts("a"); if(isprime(ar[b])) { for(d=2;d*ar[b]<=N;d++) for(e=b;e<=N;e++) if(ar[e]==d*ar[b]) ar[e]=0; } } for(f=0;f<N-2;f++) if(ar[f]!=0) printf("%d ",ar[f]); return 0; } int isprime(int n) { int i=2; for(i=2;i<n;i++) if(n%i==0) return 0; return 1; }
#include<stdio.h> int main(void) { int a,b,c,d,e,n; int ar[1000]; scanf("%d",&n); for(a=2;a<=n;a++) ar[a]=a; for(b=2;b<=n;b++) for(d=b+1;d<=n;d++) if(d%b==0) ar[d]=0; for(e=2;e<=n;e++) if(ar[e]!=0) printf("%d\n",ar[e]); return 0; }