利用栈判断回文字符串
#include<iostream>
#include<cstring>
#include<stack>
using namespace std;
int main()
{
char str[100];
stack<char> s;
cin>>str;
int len=strlen(str);
int i,flag=0;
for(i=0; i<len/2; i++)
s.push(str[i]);
if(len%2!=0)
{
for(i=len/2+1; i<len; i++)
{
if(s.top()!=str[i])
{
flag=1;
break;
}
else
s.pop();
}
}
else
{
for(i=len/2; i<len; i++)
{
if(s.top()!=str[i])
{
flag=1;
break;
}
else
s.pop();
}
}
if(flag)
cout<<"No"<<endl;
else
cout<<"Yes"<<endl;
}