求正整数N(N>1)的质因数的个数。注意:1不是N的质因数:若N为质数,N是N的质因数。相同的质因数需要重复计算。
如120=2*2*2*3*5,共有5个质因数。
输入:
正整数N,1<N<109
输出:
N的质因数的个数
#include<stdio.h>
#include<stdlib.h>
int main()
{
int n,i,j,t=0;
freopen("input.txt","r",stdin);
freopen("output.txt","w+",stdout);
while(scanf("%d",&n)!=EOF)
{
for(i=2;i<=n;)
{
for(j=2;j<i;j++)
{
if(i%j==0)
break;
}
if(i==j&&n%i==0)
{
t++;
n=n/i;
i=2;
}
else
{
i++;
}
}
printf("%d\n",t);
t=0;
//
}
return 0;
}