问题:
将一个正整数分解成质因数。例如:输入90,打印出90 = 2 *3 *3 *5 。
问题分析:
将一个正整数分解成质因数,只要将这个正整数对最小的质数取模开始;
1:如果取模之后为0,则说明该数可以分成这个质数和另一个更小的数,用一个变量将这个更小的数记录下来,对这个更小的数继续取模,如果能取,则继续1,否则将最小的质数加1,继续取模;
代码:
#include<stdio.h>
int main()
{
int n;
printf("\nplease input the number:");
scanf("%d",&n);
for(int i=2;i<=n;i++)
{
while(n!=i)
{
if(n%i==0){
printf("%d*",i);
n=n/i;
}
else
break;
}
}
printf("%d",n);
}