题目:判断一个字符串是不是回文字符串,所谓回文字符串,就是指字符串的第i个字符与字符串的第n+1-i个字符相等,i小于等n/2。比如"abcba","abba"都是回文字符串。
解题思路:
比较字符串第i个字符与字符串的第n+1-i个字符相等,i小于等n/2,如果不相等就返回false,如果循环执行完了还没有返回的话就返回true。
算法实现:
bool isPalindromeStr(char str[])
{
if(str==NULL||str[0]=='\0')
{
printf("字符串为空或为空串,不是回文字符串");
return false;
}
int n=0;//表示字符串长度
while(str[n]!='\0')
{
n++;
}
for(int i=0;i<n/2;i++)
{
if(str[i]!=str[n-i-1]) return false;
}
return true;
}