C编写函数prime(m)判断m是否为素数,当m 为素数时返回1,否则返回0.
时间: 2023-12-13 15:06:01 浏览: 151
下面是一个简单的 C 语言函数实现,用于判断一个整数 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;
}
```
该函数首先判断输入参数是否小于等于 1,如果是,则直接返回 0,因为小于等于 1 的整数不是素数。然后从 2 开始遍历到 m 的一半,如果 m 能够被 i 整除,则说明 m 不是素数,返回 0;否则继续循环。如果循环结束后都没有找到 m 的因子,则说明 m 是素数,返回 1。
相关问题
编写函数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;
}
```
C语言编写函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。(要求:每一行代码都必须做注释)
好的,下面是C语言编写函数prime(m)的代码:
```c
int prime(int m) { // 定义函数prime,传入参数m,返回值为整数型int
int i; // 定义循环计数器i,i用于从2到m-1的所有自然数做除数
if (m < 2) { // 判断m是否小于2,若是,则m不是素数,直接返回0
return 0;
}
for (i = 2; i < m; i++) { // 循环从2到m-1的所有自然数,用i做除数
if (m % i == 0) { // 判断m能否被i整除(即m是否为合数),若是,则m不是素数,直接返回0
return 0;
}
}
return 1; // 如果循环结束都没有返回0,则m一定是素数,返回1
}
```
希望我的回答对您有帮助!
阅读全文
相关推荐














