网站建设教学后记,网站建设与管理课程实训,哈尔滨网页制作最新招聘信息,专注聊城做网站的公司题目描述 输入一串字符#xff08;长度小于100#xff09;#xff0c;判断该串字符是否是回文串#xff08;正序读与逆序读内容相同#xff09;。 输入 输入一串字符#xff08;长度小于100#xff09;。 输出 若该串字符是回文串输出“yes#xff0c;否则输出”… 题目描述 输入一串字符长度小于100判断该串字符是否是回文串正序读与逆序读内容相同。 输入 输入一串字符长度小于100。 输出 若该串字符是回文串输出“yes否则输出”no“。 示例输入 asdfgfdsa 示例输出 yes #include iostream #include cstring #include cstdlib #include cstdio using namespace std; const int maxsize 10000; typedef char elemtype; typedef struct Stack { int Size; elemtype *top,*base; } Stack; bool Empty(Stack s)//判断是否为空栈 { if (s.top s.base) { return 1; } return 0; } void Creat(Stack s)//栈的初始化 { s.basenew elemtype[maxsize]; s.tops.base; s.Sizemaxsize; } void push(Stack s,elemtype e) { if (s.top-s.base s.Size) { s.base(elemtype *)realloc(s.base,2*maxsize*sizeof(Stack)); s.Sizemaxsize; ///s.tops.bases.Size; } s.top; *s.tope; } void out(Stack s)//栈内元素的输出 { s.base; while(s.bases.top) { cout*s.base; s.base; } coutendl; } void Clear(Stack s)//清空栈 { while (!Empty(s)) { pop(s); } } void exch(Stack s,char a[],int n)//判断是否为回文串 { int i; for (i0; in; i) { push(s,a[i]); } for (i0; in; i) { if (a[i]!*s.top) { coutnoendl; return ;//不等则判断结束 } else s.top--; } coutyesendl; return ; } int main() { char a[101]; Stack s;//栈的定义 Creat(s);//栈的初始化‘ cina; int n; nstrlen(a); exch(s,a,n);//判断是否为回文串 return 0; }