#include <stdio.h>
void primeFactors(int n) {
// 循环除以2,直到n不再是2的倍数
while (n % 2 == 0) {
printf("%d ", 2);
n = n / 2;
}
// n现在是一个奇数,可以循环除以奇数i
for (int i = 3; i <= n; i = i + 2) {
while (n % i == 0) {
printf("%d ", i);
n = n / i;
}
}
// n是质数时,大于2
if (n > 2) {
printf("%d ", n);
}
}
int main() {
int num;
printf("请输入一个正整数: ");
scanf("%d", &num);
printf("%d的质因数为: ", num);
primeFactors(num);
printf("\n");
return 0;
}
C语言 输入正整数将正整数分解质因数。质因数要满足两个条件:1)是这个数的因数;2)是质数(素数)如: 6=2*3 12=2*2*3
于 2024-02-29 20:18:04 首次发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)