素数是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数整除的数。本题要求实现一个函数,判断函数参数传递过来的数是否素数。如果是素数,函数的返回值就是该数,否则函数的返回值为0。 函数接口定义: int IsPrime(int number ); number 是用户传入的参数,是欲判断的数。 裁判测试程序样例: #include <stdio.h> /* 请在这里填写答案 */ int main() { int number; scanf("%d",&number); if(IsPrime(number)) printf("%d is prime number.\n",number); else printf("%d is not prime number.\n",number); return 0; }用c语言程序设计代码,要求简洁
时间: 2024-03-14 18:43:26 浏览: 55
以下是实现判断一个数是否为素数的C语言代码:
```c
#include <stdio.h>
int IsPrime(int number) {
if (number <= 1) { // 小于等于1的数不是素数
return 0;
}
for (int i = 2; i * i <= number; i++) { // 只需要判断到number的平方根
if (number % i == 0) { // 如果可以被整除,说明不是素数
return 0;
}
}
return number; // 如果都不能整除,说明是素数
}
int main() {
int number;
scanf("%d", &number);
if (IsPrime(number)) {
printf("%d is prime number.\n", number);
} else {
printf("%d is not prime number.\n", number);
}
return 0;
}
```
在函数内部,我们首先判断传入的数是否小于等于1,如果是,则直接返回0,因为小于等于1的数都不是素数。
接着,我们从2开始,一直到该数的平方根,逐个判断是否能整除该数。如果能整除,说明该数不是素数,直接返回0。
最后,如果都不能整除,说明该数是素数,返回该数本身。在主函数中,我们根据返回值是否为0,输出不同的结果。