用c语言c89编写简单函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0
时间: 2023-12-13 22:04:51 浏览: 70
好的,以下是用 C89 编写的判断素数函数 prime(m):
```c
int prime(int m) {
int i;
if (m <= 1) {
return 0;
}
for (i = 2; i <= m / 2; i++) {
if (m % i == 0) {
return 0;
}
}
return 1;
}
```
函数的思路是,如果 m 小于等于 1,直接返回 0;否则,从 2 到 m 的一半进行循环,如果 m 能被 i 整除,说明 m 不是素数,返回 0;如果循环结束仍然没有找到能被 m 整除的数,说明 m 是素数,返回 1。
使用时,只需要在程序中调用 prime(m) 函数,其中 m 是要判断的数,函数返回值为 1 表示是素数,返回值为 0 表示不是素数。
相关问题
使用c语言编写函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。
以下是使用C语言编写的函数prime(m)判断m是否为素数的示例:
```c
#include <stdio.h>
int prime(int m) {
int i;
for (i = 2; i <= m / 2; i++) {
if (m % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n;
printf("请输入一个整数:");
scanf("%d", &n);
if (prime(n) == 1) {
printf("%d是素数\n", n);
} else {
printf("%d不是素数\n", n);
}
return 0;
}
```
编写函数prime(m)判断m是否为素数,当m为素数是返回1,否则返回0。c语言代码
在C语言中,我们可以编写一个函数来检查一个给定的数字m是否为素数。以下是实现的一个简单版本:
```c
#include <stdbool.h> // 引入布尔类型支持
bool is_prime(int m) {
// 素数定义:大于1且只有两个正因数(1和自身)
if (m <= 1) { // 1不是素数
return false;
}
for (int i = 2; i * i <= m; i++) { // 只需检查到√m即可
if (m % i == 0) { // 如果能被整除,则不是素数
return false;
}
}
return true; // 若遍历结束后未发现因子,则m是素数
}
int prime(int m) {
return is_prime(m) ? 1 : 0; // 根据is_prime返回的结果,返回1或0
}
int main() {
int num;
printf("Enter a number to check if it's prime: ");
scanf("%d", &num);
int result = prime(num);
if (result == 1) {
printf("%d is a prime number.\n", num);
} else {
printf("%d is not a prime number.\n", num);
}
return 0;
}
```
阅读全文