质因数(素因数或质因子)在数论里是指能整除给定正整数的质数
质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
正整数的因数分解可将正整数表示为一连串的质因子相乘,质因子如重复可以用指数表示
除了1以外,两个没有其他共同质因子的正整数称为 互质。因为1没有质因子,1与任何正整数(包括1本身)都是互质//公约数只有1的两个整数,叫做互质整数
//求一个数的质因数的个数
#include<stdio.h>  
#include<math.h>  int main()  
{  int n;  while(scanf("%d",&n)!=EOF)  {  int m=n,t=0;  for(int i=2;i<=sqrt(m);i++)  {  while(m%i==0)  {  m=m/i;  t++;  }  }  printf("%d",m>1?t+1:t);  }  
}  //求一个数的最大质因数
#include <iostream>
using namespace std;
int findBigChild(int n){int ans=1;for(int i=2;i<=n;i++){while(n%i==0){n=n/i;ans=i;}}return ans;
} 
int main(){int a;cin>>a;int ans=findBigChild(a);cout<<ans<<endl; return 0;
}//依次输出所有数的质因数
#include<iostream>
#include<cmath>
using namespace std;
int main(){int n,num=0,a[100],i;cin>>n;for(i=2;i<=sqrt(n);++i){while(n%i==0){n=n/i;a[num]=i;num++;}}if(num==0) cout<<num+1<<' '<<n;else {for(i=0;i<num;++i){cout<<a[i]<<' ';}}
}