用c写一个程序,求出闭区间中所有整数的质因数分解,输入a,b分别为区间左右界
时间: 2023-06-14 11:05:52 浏览: 120
整数分解质因数C语言实现
以下是用C语言编写的程序,求出闭区间中所有整数的质因数分解:
```c
#include <stdio.h>
// 判断一个数是否为质数
int is_prime(int n)
{
if (n <= 1)
return 0; // 不是质数
for (int i = 2; i * i <= n; i++)
{
if (n % i == 0)
return 0; // 不是质数
}
return 1; // 是质数
}
// 输出n的质因数分解
void print_factors(int n)
{
printf("%d = ", n);
if (n <= 1)
printf("%d\n", n);
else
{
int i = 2;
while (n > 1)
{
if (n % i == 0)
{
printf("%d", i);
n /= i;
if (n > 1)
printf(" * ");
}
else
{
i++;
while (!is_prime(i))
i++;
}
}
printf("\n");
}
}
int main()
{
int a, b;
printf("Enter the interval [a, b]: ");
scanf("%d %d", &a, &b);
printf("Prime factorizations of integers in [%d, %d]:\n", a, b);
for (int i = a; i <= b; i++)
print_factors(i);
return 0;
}
```
程序运行时,用户需输入区间的左右界a和b,程序会输出区间中所有整数的质因数分解。
阅读全文