判断一个字符串是否是回文字符串 就类似 ‘ababa‘ 这样的字符串,正读和反读都一样
int main()
{
char a[101], s[101];
int i, len, mid, next, top;
gets(a);
len = strlen(a); //求字符串a的长度
mid = len / 2 - 1; //求出字符串的中点
top = 0; //将栈清空
for (i = 0; i <= mid; i++)
s[++top] = a[i]; //将mid之前的字符串都压入栈中
//判断字符串的长度是奇数还是偶数,并找出需要进行字符匹配的下标的起始位置
if (len % 2 == 0)
next = mid + 1;
else
next = mid + 2;
//开始匹配
for (i = next; i <= len - 1; i++){
if (a[i] != s[top])
break;
top--;
}
//top = 0 就是回文字符串,打印“yes”
if (top == 0)
printf("yes");
//否则,打印“no”
else
printf("no");
system("pause");
return 0;
}