用c语言写一个判断一个小于2^31的数是否为素数
时间: 2023-05-19 09:05:22 浏览: 197
以下是用 C 语言编写的判断一个小于 2^31 的数是否为素数的代码:
```c
#include <stdio.h>
#include <math.h>
int is_prime(int n) {
if (n <= 1) {
return 0;
}
int i;
for (i = 2; i <= sqrt(n); i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n;
printf("请输入一个小于 2^31 的正整数:");
scanf("%d", &n);
if (is_prime(n)) {
printf("%d 是素数。\n", n);
} else {
printf("%d 不是素数。\n", n);
}
return 0;
}
```
该程序首先定义了一个名为 `is_prime` 的函数,用于判断一个数是否为素数。该函数接受一个整数参数 `n`,如果 `n` 是素数则返回 1,否则返回 0。该函数的实现采用了试除法,即从 2 到 $\sqrt{n}$ 遍历所有可能的因子,如果找到一个能整除 `n` 的因子,则 `n` 不是素数,否则 `n` 是素数。
程序的 `main` 函数中,首先提示用户输入一个小于 2^31 的正整数,然后调用 `is_prime` 函数判断该数是否为素数,并输出相应的结果。
阅读全文