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;
}
プログラムを実行した後、数を入力すると、その数が素数かどうかが判定されて結果が出力されます。