栈的应用:回文数字
栈的实现:1.一维数组
2.top(数组下标)
栈的定义:只能在尾端进行插入或删除操作
#include#include int main() { char a[101],s[101]; int i,len,mid,next,top; gets(a); len=strlen(a); mid=len/2-1; //求字符串的中间元素的左边元素 top=0; //将mid前的元素全部入栈(含mid) for(i=0;i<=mid;i++){ top++; s[top]=a[i]; //可以简写为 s[++top]=a[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"); else printf("NO"); return 0; }



