新手求助,关于无效内存引用
#include"stdio.h" #include"math.h"
int main()
{
int N,i,n,x,f[10];
scanf("%d",&N);
for(n=1;n<=N;n++)
scanf("%d",&f[n]);
n=1;
while(n<=N)
{
x=f[n];
i=2;
printf("%d =",f[n]);
while(i<=sqrt(x))
{
while(x%i==0)
{
printf(" %d",i);
x/=i;
printf(" *");
if(x==1)
{printf(" %d",i);
goto k;}
else if(i>sqrt(x))
{printf(" %d\n",x);
goto k;}
}
i++;
}
if(i>sqrt(x))
printf(" %d\n",x);
k:n++;
}
},我想问你一下,上面面这个程序是分解质因数的,但是当输入一个很大的数时,输出就有问题,并且部分测试用例通不过,老说是无效内存引用,能帮我看一下哪出问题了吗?谢谢