C言語で素数を判定する方法は何ですか。

素数かどうかを判断する一般的な方法は割り算法です。すなわち、判断する数nについて、2からsqrt(n)まで順番にnをこれらの数で割ると、割り切れる場合はnは素数ではありません。割り切れない場合はnは素数です。

具体の実装は次の通りです。

#include <stdio.h>
#include <math.h>

// 判断一个数是否为素数
int isPrime(int n) {
    if (n <= 1) {
        return 0;
    }
    for (int i = 2; i <= sqrt(n); i++) {
        if (n % i == 0) {
            return 0;
        }
    }
    return 1;
}

int main() {
    int n;
    printf("请输入一个数:");
    scanf("%d", &n);
    if (isPrime(n)) {
        printf("%d是素数\n", n);
    } else {
        printf("%d不是素数\n", n);
    }
    return 0;
}

プログラムを実行した後、数を入力すると、その数が素数かどうかが判定されて結果が出力されます。

bannerAds