实现回文操作
代码如下:
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i,top,next,mid,len;
char a[101],s[101];
gets(a);
//栈的初始化
top = 0;
len = strlen(a); //获取字符长度
mid = len / 2 - 1;
for(i = 0; i <= mid; i++)
{
s[++top] = a[i] ;
printf("%d %d\n",top,i);
}
//判断奇偶
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--;
}
if(top == 0)
printf("Yes\n");
else
printf("No\n");
return 0;
}
运行结果:
选自《啊哈!算法》