C语言写一个分解质因数
时间: 2024-10-15 13:07:38 浏览: 29
C语言编写一个简单的函数来分解整数的质因数可以采用循环和除法的方式。这里有一个基础的示例,用于分解输入的正整数n:
```c
#include <stdio.h>
// 函数声明,接受一个整数并返回其质因数列表
void prime_factors(int n);
int main() {
int num;
printf("请输入一个正整数:");
scanf("%d", &num);
prime_factors(num); // 调用分解质因数函数
return 0;
}
// 函数实现 - 分解质因数
void prime_factors(int n) {
int i = 2; // 初始因子从2开始
while (i * i <= n) { // 当i^2小于等于n时,继续查找质因数
if (n % i == 0) { // 如果n能被i整除
printf("%d ", i); // 输出当前因子i
n /= i; // 更新n为n除以i的结果,以便去除已知的因子
} else {
i++; // 没有找到因子,增加检查的数
}
}
// 如果n大于1,说明最后一个因子就是n本身,因为它已经过了平方根范围且不能再整除了
if (n > 1) {
printf("%d", n);
}
printf("\n"); // 结果后换行
}
阅读全文