我写了一段代码求守形数,但是结果和啊哈磊不一样,咋回事啊?
#include <stdio.h>
#include <math.h>
#define N 100000000
int main()
{int j,k,m,sum=0,flag=10;
int i,n=pow(10,10);
int ccc;
double cc;
for(i=1;i<=sqrt(N);i++)
{ m=i*i;
///////////////////////////////////////////////
for(j=0;i/n==0;j++) ///////
{ flag--; ///////
n=pow(10,flag-1); ///////
} ///////
///////////////////////////////////////////////
cc=pow(10,flag);
ccc=(int) cc;
m=m%ccc;
if(i==m)
{ printf("%d ",i);
sum++;}
flag=10;
n=pow(10,10);
}
printf("\n%d\n",sum);
system("pause");
return 0;
}
结果:1,5,6,25,76,376,625,9376
|