| 
 
TA的每日心情|  | 开心 2014-6-18 08:29
 | 
|---|
 签到天数: 14 天 [LV.3]偶尔看看II 滴水大师  
 
 
	积分2345 
 | 
 
| 题目 
  
 解决代码及点评
 
 
 
 
 <pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"></pre><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code">/* 功能:打印所有不超过 n( n<256)的其平方具有对称性的数(也称回文数)    */    #include<stdio.h>  #include<stdlib.h>    int judgReOrd(int);  int getBit(int);        //返回整数值的位数    void main(){      for (int i = 0; i < 256; i++)      {          int flag = judgReOrd(i*i);          //进入函数判断是否为回文数 1为回文,0为非回文          if (flag == 1)              printf("%d * %d = %d \n",i,i,i*i);      }      system("pause");  }    int judgReOrd(int n){      int a[10] = { 0 };      int t = getBit(n);      for (int i = 0; i < t; i++){         //将每一位数传给数组a            a = n % 10;          n /= 10;      }      /*for (int i = 0; i < t; i++){          printf("%d",a);     }*/            int flag = 1;                           //标示符flag 1位回文      for (int i = 0; i<t / 2; i++){           //利用数组下标判断是否为回文数            if (a != a[t-1-i]){              flag = 0;              break;          }      }      return flag;  }    int getBit(int n){      int x = 0;      while (n > 0){          x++;          n /= 10;      }      return x;  }</pre><br><br><br></pre>  
 
 
 | 
 |