c语言多重循环与break的相关问题,求素数,是素数输出yes不是输出no

#include <stdio.h>
int main() {
int num, i, isPrime = 1; // 假设 num 是素数
printf("请输入一个正整数:");
scanf("%d", &num);
for (i = 2; i < num; i++) {
if (num % i == 0) { // 如果 num 能被 i 整除
isPrime = 0; // 将 isPrime 设为 0,表示不是素数
break; // 跳出循环
}
}
if (num <= 1) {
printf("no\n"); // 1 不是素数
} else {
if (isPrime) {
printf("yes\n"); // 是素数
} else {
printf("no\n"); // 不是素数
}
}
return 0;
}
在这个示例程序中,我们使用了一个 for 循环来遍历从 2 到 num-1 的所有数,判断 num 是否能被这些数整除。如果 num 能被某个数整除,则将 isPrime 设为 0,表示不是素数,并使用 break 语句跳出循环。最后根据 isPrime 的值来输出结果。