else1s[0]=s[0]+1;s[s[0]=x;printf("压栈后:");printf("top=%ds[top]=%d]n", s[0], s[s[0];printf("In");一1/*弹出栈顶元素*void pop_stack(int s[maxsize+1])if (s[0]==0)printf("栈空!\n");elsets[0]=s[0]-1;printf("出栈的元素是:%d;当前栈顶是:%d",s[s[0]+1],s[0];1void main()1for (k=1;k<=num;k++)scanf("%d",&x);push_stack(x,data);printf("\n");printf("栈中元素为:");for (k=1;k<=maxsize;k++)printf("%d-",data[k]);printf("In");/*把8压入栈元素*/d=8;push_stack(d, data);/*输出栈中元素*/printf("栈中元素为:");for (k=1;k<=maxsize;k++)printf("%d]", data[k);printf("\n");6/18
6 / 18 else { s[0]=s[0]+1; s[s[0]]=x; printf(" 压栈后: "); printf(" top=%d s[top]=%d\n", s[0], s[s[0]]); printf("\n"); } } /*弹出栈顶元素*/ void pop_stack(int s[maxsize+1]) { if (s[0]==0) printf("栈空!\n"); else { s[0]=s[0]-1; printf("出栈的元素是: %d; 当前栈顶是: %d", s[s[0]+1], s[0]); } } void main() { for (k=1;k<=num;k++) { scanf("%d",&x); push_stack(x,data); } printf("\n"); printf("栈中元素为:"); for (k=1;k<=maxsize;k++) printf("%d-",data[k]); printf("\n"); /*把 8 压入栈元素*/ d=8; push_stack(d, data); /*输出栈中元素*/ printf("栈中元素为:"); for (k=1;k<=maxsize;k++) printf("%d|", data[k]); printf("\n");
/*出栈元素*/pop_stack(data);printf("栈中元素为:");for (k=1;k<=maxsize;k++)printf("%d]", data[k]);printf("In");-7 / 18
7 / 18 /*出栈元素*/ pop_stack(data); printf("栈中元素为:"); for (k=1;k<=maxsize;k++) printf("%d|", data[k]); printf("\n"); }