c语言寻找1000以内的同构数

正整数n若是它平方数的尾部,则称n为同构数。
例如:5的平方数是25,且5出现在25的右侧,那么5就是一个同构数。
 1 #include <stdio.h>
 2 int check(int n);
 3 int main(int argc, char *argv[])
 4 {
 5     int i;
 6     for(i=1;i<=1000;i++){
 7         if(check(i)) printf("%d \n",i);        
 8     }    
 9     return 0;
10 }
11 
12 int check(int n){
13     int flag = 0;
14     int i;
15     for(i=10;i<=1000;i=i*10){
16         if(n/i == 0) break;
17     }
18     if((n*n)%i == n) flag=1;
19     return flag;
20 } 

输出:

1
5
6
25
76
376
625

posted @ 2016-07-27 18:02  阿豪boy  阅读(4324)  评论(0编辑  收藏  举报