题解 | #筛选法求素数#
筛选法求素数
https://www.nowcoder.com/practice/06c3dcc303654ef4926654023eca1e5a
#include <stdio.h>
int main() {
int n = 0, arr[100], count = 0,t =0 ;
while (scanf("%d", &n) != EOF) { // 注意 while 处理多个 case
// 64 位输出请用 printf("%lld") to
for (int i = 0; i < n-1; i++) {
arr[i] = i+2;
}
printf("2 3 ");
for (int j = 2; j < n-1; j++) {
for (int k = 0; k < j; k++) {
if (arr[j]%arr[k] == 0) {
count++;
break;
}
t++;
}
if(t==j)printf("%d ",arr[j]);
t=0;
}
printf("\n");
printf("%d",count);
}
return 0;
}
