c语言写一个函数判断x是否是素数
时间: 2023-12-31 22:55:18 浏览: 78
以下是一个判断 x 是否是素数的 C 语言函数:
```c
int is_prime(int x) {
if(x < 2) {
return 0; // 0和1不是素数
}
for(int i = 2; i * i <= x; i++) {
if(x % i == 0) {
return 0; // x可以被i整除,x不是素数
}
}
return 1; // x是素数
}
```
该函数先判断 x 是否小于 2,若是则返回 0,因为 0 和 1 都不是素数。接着使用 for 循环从 2 到 x 的平方根遍历,如果有一个数 i 可以整除 x,则返回 0,因为 x 不是素数。最后返回 1,表示 x 是素数。
相关问题
用c语言设计一个函数fun()功能是:判断x是否是素数。若x是素数,返回1;若不是素数,返回0。x的值由主函数从键盘读入。
好的,下面是代码实现:
```c
#include <stdio.h>
int fun(int x) {
int i;
if (x <= 1) { // 小于等于1的数都不是素数
return 0;
}
for (i = 2; i * i <= x; i++) { // 判断从2到x的平方根之间的数是否能整除x
if (x % i == 0) {
return 0; // 能整除说明不是素数,返回0
}
}
return 1; // 如果没有能整除的数,说明是素数,返回1
}
int main() {
int x;
printf("请输入一个正整数:");
scanf("%d", &x);
if (fun(x)) {
printf("%d是素数\n", x);
} else {
printf("%d不是素数\n", x);
}
return 0;
}
```
输入一个正整数,如果是素数就输出“x是素数”,否则输出“x不是素数”。
C语言编写函数判断一个数是否是素数
以下是两种C语言编写函数判断一个数是否是素数的例子:
1. 不使用函数的代码:
```c
#include <stdio.h>
int main() {
int i = 0;
scanf("%d", &i);
int n = 0;
for (n = 2; n < i; n++) {
if (i % n == 0) {
break;
}
}
if (i == n) {
printf("素数!\n");
} else {
printf("不是素数!\n");
}
return 0;
}
```
2. 使用自定义函数is_prime()的代码:
```c
#include <stdio.h>
int is_prime(int x) {
int n = 0;
for (n = 2; n < x; n++) {
if (x % n == 0) {
break;
}
}
if (x == n) {
return 1;
}
}
int main() {
int i = 0;
scanf("%d", &i);
if (is_prime(i) == 1) {
printf("素数!\n");
} else {
printf("不是素数!\n");
}
return 0;
}
```
阅读全文