用c语言编写:要求程序能够反复输入一个非负整数,判断其是否是素数,如果是素数,输出“**数是素数”,如果不是素数,输出“**数不是素数,其有**个约数”,当输入0时,结束循环。
时间: 2023-05-25 16:05:44 浏览: 87
c语言:实现一个函数,判断一个数是不是素数
5星 · 资源好评率100%
```
#include <stdio.h>
int is_prime(int num) { // 判断是否是素数函数
if (num <= 1) {
return 0;
}
for (int i = 2; i < num; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int num;
while (1) { // 循环输入
printf("请输入一个非负整数(输入0结束):");
scanf("%d", &num);
if (num == 0) {
break;
}
if (is_prime(num)) { // 判断是否为素数
printf("%d是素数\n", num);
} else { // 不是素数
int count = 0; // 记录约数个数
for (int i = 1; i <= num; i++) {
if (num % i == 0) {
count++;
}
}
printf("%d不是素数,其有%d个约数\n", num, count);
}
}
return 0;
}
```
阅读全文