C Program to implement Stack Operations Using Stack
Program for implementing a stack using arrays.It involves
various operations such as push,pop,stack empty,stack full and
display.
#include<stdio.h> #include<conio.h> #include<stdlib.h> #define size 5 /* stack structure*/ struct stack { int s[size]; int top; }st; //------------------------------------- int stfull() { if(st.top>=size-1) return 1; else return 0; } //------------------------------------- void push(int item) { st.top++; st.s[st.top] =item; } //------------------------------------- int stempty() { if(st.top==-1) return 1; else return 0; } //------------------------------------- int pop() { int item; item=st.s[st.top]; st.top--; return(item); } //------------------------------------- void display() { int i; if(stempty()) printf("\n Stack Is Empty!"); else { for(i=st.top;i>=0;i--) printf("\n%d",st.s[i]); } } //------------------------------------- void main(void) { int item,choice; char ans; st.top=-1; clrscr(); printf("\n\t\t Implementation Of Stack"); do { printf("\n Main Menu"); printf("\n1.Push\n2.Pop\n3.Display\n4.exit"); printf("\n Enter Your Choice"); scanf("%d",&choice); switch(choice) { case 1: printf("\n Enter The item to be pushed"); scanf("%d",&item); if(stfull()) printf("\n Stack is Full!"); else push(item); break; case 2: if(stempty()) printf("\n Empty stack!Underflow !!"); else { item=pop(); printf("\n The popped element is %d",item); } break; case 3: display(); break; case 4: exit(0); } printf("\n Do You want To Continue?"); ans=getche(); }while(ans =='Y'||ans =='y'); getch(); }
Explanation of the C Porgram : Stack Using Array
Step 1 : Declare One Stack Structure
#define size 5 struct stack { int s[size]; int top; }st;
- We have created ‘stack’ structure.
- We have array of elements having size ‘size’
- To keep track of Topmost element we have declared top as structure member.
Incoming search terms:
- create a flowchart to show the process that will allow the implementation of stack push and pop operations (5)
- flowchart for stack implementation (3)
- flowchart to show the process that will allow the implementation of stack push and pop operations (3)
- flowchart for stack operations (3)
- flow chart for push operations (2)
- implementation of array in flowchat (1)