1,编写函数int fun(long *x)找出所有满足以下条件的六位整数:该数是一个完全平方数,即时某数的平方;该数是回文数,即该数等于它的反序数。例如,698896是863的平方且698896是回文数,因此698896满足。将上述六位数存入x指向的数组中返回整数的个数。
2,编写main(),申明result数组,调用fun将满足条件的六位数存入result中。
测试数据及结果:698896
我编的如下: #includemath.h
#includestdio.h
int fun(long *x)
{long n,a,b,c,d=0,j=0;
for(n=100000;n=999999;n)
{a=sqrt(n);
if(a*a==n)
{b=n;
while(b0)
{c=b;d=d*10 c;b=b/10;}
if(d==n)
x[j]=n;}
}
return j;
}
main()
{ long result[10];int i,j;
j=fun(result);
for(i=0;ij;i)
printf(\"\\n%d\",result);
}
最终可以运行,但为什么什么都输不出,求原因,跪求!!
|