C练习实例14 - 将一个正整数分解质因数

简介: C练习实例14 - 将一个正整数分解质因数。

题目:将一个正整数分解质因数。例如:输入90,打印出90=233*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于(小于的时候,继续执行循环)n,则说明分解质因数的过程已经结束,另外 打印出即可。
(2)但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n.重复执行第二步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

include

int main()
{
int n,i;
printf("请输入整数:");
scanf("%d",&n);
printf("%d=",n);
for(i=2;i<=n;i++)
{
while(n%i==0)
{
printf("%d",i);
n/=i;
if(n!=1) printf("*");
}
}

printf("\n");
return 0;

}
以上实例输出结果为:
请输入整数:90
90=233*5

相关文章
|
9月前
整数的阶乘(英语:factorial)是所有小于及等于
整数的阶乘(英语:factorial)是所有小于及等于
|
5月前
将一个正整数分解质因数
将一个正整数分解质因数。
89 8
|
9月前
L1-025 正整数A+B
L1-025 正整数A+B
61 1
|
9月前
54.将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5
54.将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5
56 0
|
9月前
55.输入两个正整数m和n,求其最大公约数和最小公倍数
55.输入两个正整数m和n,求其最大公约数和最小公倍数
60 0
|
9月前
26.一个正整数如果恰好等于它的因子之和,这个数称为“完数”,如6=1+2+3,求1000以内所有的完数.
26.一个正整数如果恰好等于它的因子之和,这个数称为“完数”,如6=1+2+3,求1000以内所有的完数.
97 0
|
人工智能 算法 程序员
求两个正整数的最小公倍数
求两个正整数的最小公倍数
129 1
|
程序员
【牛客网】HJ99 自守数、OR86 返回小于 N 的质数个数
目录 HJ99 自守数 OR86 返回小于 N 的质数个数
93 0
【每周一坑】​正整数分解质因数 +【解答】计算100以内质数之和
关于分解质因数:每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,把一个合数用质因数相乘的形式表示出来,叫做分解质因数。分解质因数只针对合数。
分解质因数---输出一个数的所有质数因子
分解质因数---输出一个数的所有质数因子
166 0