14.题目:将一个正整数分解质因数。例如:输入90,打印出90=233*5
分析:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,
重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
[注意]不需要先把质数求出来,因为分解的时候从2,3开始,开始的时候已经可以拆出来最小额质数的集合,只是从头开始比较就可以了。
#include<stdio.h>
int main()
{
int n,i=2;
scanf("%d",&n);
while(n!=i)
{
if(n%i==0)
{
printf("%d*",i);
n=n/i;
i=2;
}
else
i++;
}
printf("%d\n",n);
return 0;
}