这是我写的程序,大家看看有什么问题?
因子分解★输入n(1 <= n <= 1e9),有多组测试数据:
616
27
输出:
616 = 2^3 * 7 * 11
27 = 3^3
(注意输出空格,但行末不要有空格)
这是我写的程序,大家看看有什么问题?总是通不过测试。
#include<stdio.h>
int main(void)
{
int i, count=0, old=0;
long n;
while(scanf("%ld",&n)!=EOF)
{
printf("%ld = ", n);
for(i=2; n!=1;)
{
if(n%i==0)
{
if(old==i)
count++;
else
{
if(old==0)
printf("%d", i);
else printf(" * %d", i);
}
old=i;
n/=i;
}
else
{
if(count>0)printf("^%d", count+1);
i++;
count=0;
}
}
if(old==i && count!=0)printf("^%d", count+1);
old=0;
count=0;
printf("\n");
}
return 0;
}