网上有类似方法,但我感觉这个更简单点
#include <stdio.h>
int main()
{
int n,i;
scanf("%d",&n);
printf("%d=",n);
for(i=2;i<n;i++)
{
if(n%i==0)
{
printf("%d*",i);
n=n/i;
i-=1;
}
}
printf("%d",n);
return 0;
}
区别就是 i-=1,有这一步是为了让一个因数能单独除n。以90为例子,凸现不出这一步的作用,但是输入80可以看到,输出的是80=2*2*2*5,原本2循环了一次,i要变成3,但是减一之后,i仍旧是2