#include#include #include #include typedef struct stack{ char c; struct stack *next; }Listack,*pListack; pListack initStack() { pListack p = (pListack)malloc(sizeof(Listack)); if(!p) exit(-1); p->next = NULL; return p; } void push(pListack S,char t) { pListack p = (pListack)malloc(sizeof(Listack)); if(!p) exit(-1); p->c = t ; p->next = S->next; S->next = p; } bool pop(pListack S) { pListack p = S->next ; if(!p) return 0; S->next = p->next; free(p); return 1; } bool isEmpty(pListack S) { if(!S->next) return 1; else return 0; } char top(pListack S) { if(!S->next) exit(-1); else return S->next->c; } int main() { pListack S = initStack(); char s[100]; scanf("%s",s); int len = strlen(s); for(int i=0;i



