需要注意判断n是否为质数,个数有所不同

#include<stdio.h>
int main(){
    int n;

    while(scanf("%d",&n)!=EOF){
        int count=0;
        for(int i=2;i*i<=n;i++){
            while(n%i==0){

              count++;
                n/=i;
        }
    }
        if(n>1){    //质数时
             printf("%d\n",count+1);
        }else{       //非质数时
            printf("%d\n",count);
}

    }
    return 0;
}