素数的判定
问题描述:
质数(prime number)又称素数,有无限个。质数定义为在大于 1 的自然数中,除了 1 和它本身以外不再有其他因数,这样的数称为质数。
代码实现:
// 思路一
int IsPNumber01(int num) {
if (num <= 1) {
return 0; // 非素数
}
// 判断大于2的数是否为素数
for (int i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return 0; // 非素数
}
}
return 1; // 素数
}
// 思路二
int IsPNumber02(int num) {
if (num <= 1) {
return 0; // 非素数
}
// 判断大于2的数是否为素数
for (int i = 2; i*i<=num; i++) {
if (num % i == 0) {
return 0; // 非素数
}
}
return 1; // 素数
}