题解 | #筛选法求素数#
筛选法求素数
https://www.nowcoder.com/practice/06c3dcc303654ef4926654023eca1e5a
#include <stdio.h> int main() { int n; int a[100]; int sum=0; while(scanf("%d",&n)!=EOF) { for(int i=2;i<n+1;i++) { a[i-2]=i; } for(int i=0;i<n-1;i++) { if(a[i]>11) { for(int j=2;j<10;j++) { if(a[i]%j==0) { a[i]=0; sum++; break; } } } else { if(a[i]!=2&&a[i]!=3) { if((a[i]%2==0||a[i]%3==0)) { a[i]=0; sum++; } } } } for(int i=0;i<n-1;i++) { if(a[i]!=0) { printf("%d ",a[i]); } } printf("\n"); printf("%d",sum); sum=0; } return 0; }