编写函数prime(m)判断m是否为素数,当m为素数时返回1,负责返回0。用c语言
时间: 2023-12-13 14:06:02 浏览: 62
好的,下面是 C 语言的实现代码:
```c
#include <stdio.h>
int prime(int m) {
int i;
if (m <= 1) { // 判断 m 是否小于等于 1
return 0;
}
for (i = 2; i < m; i++) { // 判断 m 是否能被 2 到 m-1 之间的数整除
if (m % i == 0) {
return 0;
}
}
return 1; // 如果 m 不小于等于 2 且不能被 2 到 m-1 之间的数整除,则 m 是素数
}
int main() {
int m;
printf("请输入一个整数:");
scanf("%d", &m);
if (prime(m)) {
printf("%d 是素数。\n", m);
} else {
printf("%d 不是素数。\n", m);
}
return 0;
}
```
首先,对于小于等于 1 的数来说,它们都不是素数,因为素数定义为大于 1 的自然数。因此,我们需要在函数中加入 `if (m <= 1) { return 0; }` 这一条件判断。
接着,我们用一个 for 循环,从 2 开始到 m-1,判断 m 是否能被这些数整除。如果能被整除,则说明 m 不是素数,返回 0。如果 for 循环结束后都没有找到能整除 m 的数,就说明 m 是素数,返回 1。
最后,在主函数中,我们调用 prime 函数,并根据返回值输出结果。