题解 | #质数因子#
质数因子
http://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
#include <math.h>
int main()
{
int n = 0, i= 0, last_pri = 0;
scanf("%d",&n);
//i 到 n 开方就可,last_pri 上一个质数
for(i = 2; i <= sqrt(n);++i)
{
if(n % i == 0)
{
last_pri = i;
printf("%d ", last_pri);
//提取当前质数
n = n / i;
//从上一个质数开始继续寻找
i = last_pri - 1;
}
}
printf("%d",n);
return 0;
}