您的位置:首页 > 其它

判断回文数与回文字符串

2018-03-09 14:11 351 查看

判断回文数

判断一个数是否为回文数。

回文数:回文数也是一个数字,数字的特点是正反序是同一个数字,如:12321,3443

思路:给一个数字,求出它的反序数字,与本身进行比较,相同即是回文数。

代码:

int Palindrome(int num)
{
int tmp=num;
int ret=0;
if(num < 1)
return -1;
else
{
while(tmp)
{
ret=ret*10+tmp%10;
tmp=tmp/10;
}
}
return ret;
}
int main()
{
int num = 12321;
int ret = Palindrome(num);
if(ret==num)
printf("YES\n");
else
printf("NO\n");
return 0;
}


判断回文字符串

判断一个字符串是否为回文字符串。

回文字符串:是一个字符串,但是原字符串和字符串逆序之后一样,比如:“abcba”“cddc”就是回文字符串。

思路:给一个字符串,求出它的逆序字符串,比较即可。

#include <stdio.h>
#include <string.h>
void Palindrome(char *p,int count)
{
char *start=p;
char *end=p+count-1;
while(count--)
{
char *tmp=start;
start=end;
end=tmp;
}
}
int main()
{
char arr[]="abcba";
char tmp[32]={};
int len =strlen(arr);
strcpy(tmp,arr);
Palindrome(tmp,len);
if(strcmp(tmp,arr)==0)
printf("YES\n");
else
printf("NO\n");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: