将一个正整数分解质因数。例如:输入90,打印出90=233*5。
//题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 //程序分析:对n进行分解质因数,应先找到一个最小的质数k #include<stdio.h> int main() { int n,i; printf("请输入整数:"); scanf("%d",&n); printf("%d=",n); for(i=2;i<=n;i++)//遍历从2到本身的所有数 { while(n%i==0)//能整除 { printf("%d",i);//则这个数为其中一个质数 n/=i;//n就除去i,变成一个新的数字继续执行 if(n!=1) { printf("*"); };//直到n=1 if(n==1) { break; } } } printf("\n"); return 0; }
测试: