已解决
[此贴子已经被作者于2006-4-11 12:51:17编辑过]
解决了3楼提出的问题,我将程序改为
#include <stdio.h>
main()
{
int N,a,i,t,n,m,k;
scanf("%d",&N);
for ( ;N;N--)
{
scanf("%d",&a);
printf("%d=",a);
n=a;
m=0;k=0;
for (i=2;i<=a;i++)
{
t=0;
while (a%i==0)
{
t++;
a=a/i;
}
if (t==1)
{
if (a==1) {break;}
else {printf("%d",i);m=0;k++;if (a!=1) printf("*");continue;}
}
else if (t>1)
{
if ((a==1)&&(0==k)) {printf("%d^%d",i,t);m=1;break;}
else {printf("(%d^%d)",i,t);k++;m=1;if (a!=1) printf("*");continue;}
}
}
if (0==m) printf("%d",i);
printf("\n",a);
}
return 0;
}
但还是不行。。。。。大家再帮忙看看吧,在此谢过各位了。。。
[此贴子已经被作者于2006-2-10 10:35:51编辑过]