题解 | 筛选法求素数

#include <stdio.h>

int main() {
    int n, arr[100];
    while (scanf("%d", &n) != EOF) {
        for (int i = 0; i < n - 1; i++) {
            arr[i] = i + 2;
        }
        for (int i = 0; i < n - 1; i++) {
            if (arr[i] != 0) {
                for (int j = i + 1; j < n - 1; j++) {
                    if (arr[j] != 0 && arr[j] % arr[i] == 0)
                        arr[j] = 0;
                }
            }
        }
        int count=0;
        for (int j = 0; j < n - 1; j++) {
            if (arr[j] != 0) {
                printf("%d ", arr[j]);
                count++;
            }
        }

        printf("\n%d\n",n-count-1);
    }
    return 0;
}

全部评论

相关推荐

野猪不是猪🐗:我assume that你must技术aspect是solid的,temperament也挺good的,however面试不太serious,generally会feel style上不够sharp
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务