#include <stdio.h>
#include <string.h>
#define BUFSIZE 100
typedef struct stack{
int top;
char arry[];
}Stack;
int main(void)
{
char str[BUFSIZE];
Stack s;
int mid,i,len;
int next;
printf("输入要判断的字符串\n");
scanf("%s",str);
len = strlen(str);
mid = len / 2;
s.top = 0;//将栈顶设为0
if(len / 2 == 0){//如果为偶数个元素
next=mid ;
}else{//奇数个元素
next = mid+1;
}
//压栈
for(i = 0;i < mid;i++){
s.arry[i] = str[i];
s.top++;
}
//出栈
while(s.top != 0){
if(s.arry[s.top-1] ==str[next]){
s.top--;
next++;
}
else
break;
}
if(s.top == 0)
printf("yes\n");
else
printf("no\n");
return 0;
}