解题思路:
注意事项:
参考代码:
#include<stdio.h> #include<stdlib.h> typedef struct node{ int data; struct node *next; }node; node *head; void pop(); void push(int a); void stack_a(); int main() { int n,i,a,count=0; char ch[2]; while(scanf("%d",&n)&&n) { head=NULL; for(i=0;i<n;i++) { scanf("%s",ch); if(ch[0]=='P') { scanf("%d",&a); push(a); count++; } else if(ch[0]=='O') { if(count!=0) { pop(); count--; } else count=0; } else if(ch[0]=='A') { stack_a(); } } printf("\n"); } } void push(int a) { node *p; p=(node*)malloc(sizeof(node)); if(head==NULL) { p->data=a; p->next=NULL; head=p; } else { p->data=a; p->next=head; head=p; } } void pop() { node *p; //p=(node*)malloc(sizeof(node)); if(head!=NULL) { p=head; head=head->next; free(p); } // else printf("\n"); } void stack_a() { node *p; p=head; if(head==NULL) printf("E\n"); else printf("%d\n",p->data); }
0.0分
0 人评分
数组输出 (C语言代码)错误???浏览:602 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:900 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:541 |
Wu-求圆的面积 (C++代码)浏览:1994 |
printf基础练习2 (C语言代码)浏览:653 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:497 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:820 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1029 |
【魔板】 (C++代码)浏览:1236 |
C语言程序设计教程(第三版)课后习题10.1 (C++代码)浏览:529 |