#include<stdio.h> int circle(int m,int n)//该函数判断m的n进制数是否为回文数 { int s=0,l=m; while(l) { s=s*n+l%n;//该语句是反顺序计算数值 l/=n; } return s==m;//如果是回文数,那么正反顺序的数字应该是相等的 } void main() { int num[]={434,783,909}; int sys[]={2,8,10,16}; int i,j; for(i=0;i<3;i++) for(j=0;j<4;j++) { if(circle(num[i],sys[j]))//num[i]的sys[j]进制是否是回文数,是的话返回1 printf("%d(%d) is a circle number!\n",num[i],sys[j]); else printf("%d(%d) is not a circle number!\n",num[i],sys[j]); } }
判断一个数的n进制是不是回文数,布布扣,bubuko.com
原文地址:http://blog.csdn.net/zxx150633/article/details/38705219