C趣味编程百例(08)回文数 |
|
www.nanhushi.com 佚名 不详 |
28.回文数 打印所有不超过n(取n<256) 的其平方具有对称性质的数(也称回文数)。 *题目分析与算法设计 对于要判断的数n,计算出其平方后(存于a),将a的每一位进行分解,再按a的从低到高的顺序将其恢复成一个数k(如n=13,则a=169且k=961),若a等于k则可判定n为回亠数。 *程序说明与注释 #include<stdio.h> void main() { int m[16],n,i,t,count=0; long unsigned a,k; printf("No. number it’s square(palindrome)\n"); for(n=1;n<256;n++) /*穷举n的取值范围*/ { k=0;t=1;a=n*n; /*计算n的平方*/ for(i=1;a!=0;i++) /*从低到高分解数a的每一位存于数组m[1]~m[16]*/ { m[i]=a%10; a/=10; } for(;i>1;i--) { k+=m[i-1]*t; t*=10; } if(k==n*n) printf("%2d%10d%10d\n",++count,n,n*n); } } *运行结果 No. number it’s square(palindrome) 1 1 1 2 2 4 3 3 9 4 11 121 5 22 484 6 26 676 7 101 10201 8 111 12321
9 121 14641
|
|
|
文章录入:杜斌 责任编辑:杜斌 |
|
上一篇文章: C趣味编程百例(08)亲密数 下一篇文章: C趣味编程百例(08)自守数 |
【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
|