每天一道C语言编程(2):自守数

题目描述

自守数是指一个数的平方的尾数等于该数自身的自然数。
例如:
25^2=625
76^2=5776
9376^2=87909376
请求出200000以内的自守数?

样例输出

0  1  5  6  25  76  376  625  9376  90625  109376

代码如下,这是自认为最容易理解的方法,如果有更简单的方法请不吝赐教: 

#include
#include
int main(){
    long long s;
    int i,ii;
    for(i=0;i<200000;i++)
    {
        ii=i;
        int len=1;
        s=pow(i,2);
        while(ii>=10)
        {
            ii/=10;
            len++;
        }
        if(s%(int)pow(10,len)==i)
        {
            printf("%d ",i);
        }
    }
    return 0;
}

你可能感兴趣的:(编程训练,c语言,java,前端)