Advertisement
Guest User

Untitled

a guest
Oct 12th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3.  
  4. struct stack{
  5. int data;
  6. stack* prev;
  7. stack* top;
  8. };
  9.  
  10. stack *top = NULL;
  11.  
  12. void push(int a){
  13. stack *p = new stack();
  14. p -> data = a;
  15. p -> prev = top;
  16. top = p;
  17. printf("ok\n");
  18. }
  19.  
  20. int pop(){
  21. if(top == NULL){
  22. printf("error");
  23. }
  24. int ans = top -> data;
  25. top = top -> prev;
  26. return ans;
  27. }
  28.  
  29. int size(){
  30.  
  31. int count = 0;
  32. while(top != NULL){
  33. count++;
  34. top = top -> prev;
  35. }
  36. return count;
  37. }
  38.  
  39. int back (){
  40. if(top == NULL){
  41. printf("error");
  42. }
  43. return top -> data;
  44.  
  45. }
  46. void exit(){
  47. printf("bye");
  48. }
  49.  
  50. void clear(){
  51. stack *top = NULL;
  52. printf("ok\n");
  53. }
  54.  
  55. int main(){
  56. int num;
  57. char str[6];
  58. while(str[1] != 120){
  59. scanf("%s", str);
  60. if(str[1] == 'u'){
  61. scanf("%d", &num);
  62. push(num);
  63. }
  64. if(str[1] == 'o'){
  65. printf("%d\n", pop());
  66. }
  67. if(str[1] == 'i'){
  68. printf("%d\n", size());
  69.  
  70. }
  71. if(str[1] == 'a'){
  72. printf("%d\n", back());
  73. }
  74. if(str[1] == 'l'){
  75. clear();
  76. }
  77. if(str[1] == 'x'){
  78. exit();
  79. }
  80. }
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement