求助(急)
求一个数的分解因式这是我的程序
main()
{int i,n;
printf("Iput a number:\n");
scanf("%d",&n);
printf("%d=",n);
for(i=n;i>1;i--)
{
while(i!=n)
{
if(n%i==0)
n=i;
}
printf("%d*",n);
}
printf("%d\n",n);
}
系统编译没有错误,但得到的结果不是想要得


确实是for....while...不太合适,而且我对于n的来回赋值也没有看太懂。
自己写了一个供批评参考
#include<stdio.h>
#include<math.h>
void main()
{int i,n,m;
printf("Iput a number:\n");
scanf("%d",&n);
printf("The results are:\n");
for(i=n;i>=sqrt(n);i--)
{
if(n%i==0){
printf("%d=",n);
m=i;
printf("%d*",m);
m=n/m;
printf("%d\n",m);
}
}
}