写一个判断素数的c语言函数
时间: 2023-06-16 13:02:10 浏览: 97
可以使用以下代码来判断一个数是否为素数:
```c
#include <stdio.h>
int isPrime(int n) {
if (n <= 1) {
// 1及以下都不是素数
return 0;
}
// 判断2和3的情况
if (n <= 3) {
return 1;
}
// 判断能否被2或3整除
if (n % 2 == 0 || n % 3 == 0) {
return 0;
}
// 判断是否能被其他数整除
for (int i = 5; i * i <= n; i += 6) {
if (n % i == 0 || n % (i + 2) == 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;
}
```
该函数首先判断n是否小于等于1,如果是,就返回0,因为1及以下的数都不是素数。然后判断2和3的情况,如果n小于等于3,就返回1,因为2和3都是素数。接着判断n能否被2或3整除,如果可以,就返回0。最后,使用一个循环判断n能否被其他数整除,如果可以,就返回0,否则返回1。
阅读全文