如何判断回文数/回文串
所谓回文,就是从左往右读和从右往左读都是一样的,这样的数字或者字符称为回文数/回文字符。
做题的时候经常能看到判断回文操作。判断回文的一般有两种,一种是数字类型,一种是字符类型。两种分别介绍一下。
一、回文数字
参考方法1:经过分离重组后的数字和原数字相等。
int huiwen(int num) { int s=0; int num2=num; while(num){ s=s*10+num%10; num=num/10; } if(s==num2) return 1; else return 0; }
二、回文字符
int huiwen( char *s ) { int n,i; n=strlen(s)-1; for(i=0;i<=n/2;i++) if(s[i]!=s[n-i]) return 0; return 1; }
或者
int huiwen ( char *p) { register int i = 0; //计数变量初始化 int len = strlen(p); //使用STRLEN函数取字符串数组的字符位数 for (i = 0; i <= len; i++) { if (p[i] == p[len - 1]) { len--; //若首尾两个字符等值,分别向字符串中心移动一位,并判断 } else return 0; } return 1; }
(adsbygoogle = window.adsbygoogle || []).push({});