以下是C语言代码,用于求解小于等于输入整数的所有素数。

#include <stdio.h>

int main() {
    int n, i, j, isPrime;
    printf("请输入一个整数:");
    scanf("%d", &n);
    printf("小于等于%d的素数有:\n", n);

    // 从2开始遍历到n,判断每个数是否是素数
    for (i = 2; i <= n; i++) {
        isPrime = 1;  // 假设i是一个素数
        // 判断i是否能被小于i的数整除,如果能则不是素数
        for (j = 2; j < i; j++) {
            if (i % j == 0) {
                isPrime = 0;  // i不是素数
                break;
            }
        }
        if (isPrime == 1) {
            printf("%d ", i);
        }
    }
    printf("\n");
    return 0;
}

需要注意的是,本算法并不是最优解。在判断一个数是否为素数时,可以只判断小于等于它平方根的数即可。这样可以减少不必要的计算。

用C语言写求素数

原文地址: http://www.cveoy.top/t/topic/bw0F 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录