C语言判断素数,用while循环轻松搞定!


在C语言中,判断一个数是否为素数,我们可以使用`while`循环来实现。以下是一个简单的示例代码,用于判断一个给定的正整数是否为素数:

```c

include

include

bool isPrime(int num) {

if (num <= 1) {

return false; // 0和1不是素数

}

int i = 2;

while (i i <= num) {

if (num % i == 0) {

return false; // 如果能被除了1和它本身以外的数整除,则不是素数

}

i++;

}

return true; // 不能被任何数整除,是素数

}

int main() {

int number;

printf("请输入一个正整数: ");

scanf("%d", &number);

if (isPrime(number)) {

printf("%d 是素数。\n", number);

} else {

printf("%d 不是素数。\n", number);

}

return 0;

}

```

在这个代码中,我们定义了一个函数`isPrime`,它接受一个整数`num`作为参数,并返回一个布尔值,表示该数是否为素数。在`isPrime`函数中,我们首先判断如果`num`小于等于1,则直接返回`false`,因为0和1不是素数。然后,我们使用一个`while`循环,从2开始,一直检查到`i i`大于`num`。在循环中,如果`num`能被`i`整除,则返回`false`,否则继续循环。如果循环结束后没有找到能整除`num`的数,则返回`true`,表示`num`是素数。

在`main`函数中,我们通过用户输入获取一个正整数,然后调用`isPrime`函数来判断该数是否为素数,并输出结果。