将一个正整数分解质因数,例如,输入90,输出2 3 3 5。
输入一个正整数n(2<=n<=2000)。
从小到大输出n的所有质因子,每两个数之间空一格。
20
2 2 5
注意,最后一个数后面没有空格!!
#include<stdio.h>
int main(){
int n;
scanf("%d",&n);
for(int i = 2;n!=1;){
int flag = 1;
for(int j=2;j<=i/2;j++){
if(i%j==0){
flag = 0;
break;
}
}
if(flag){
if(n%i==0){
printf("%d ",i);
n/=i;
}else{
i++;
}
}else{
i++;
}
}
return 0;
}
运行结果: