#include
#include
#define MAX 5
int top = -1;
int stack_arr[MAX];
int item;
void push()
{
int pushed_item;
if(top == (MAX-1))
{
printf("\n\t--------------------\n");
printf("\tStack Overflow\n");
printf("\n\t--------------------\n");
}
else
{
printf("\n\t----------------------\n");
printf("\tEnter the item to be pushed in stack : ");
scanf("%d",&pushed_item);
top=top+1;
stack_arr[top] = pushed_item;
}
}/*End of push()*/
void pop()
{
if(top == -1)
{
printf("\n--------------------\n");
printf("\tStack Underflow\n");
printf("\n\t--------------------\n");
}
else
{
item=stack_arr[top];
printf("\n\t--------------------\n");
printf("\tPopped element is : %d\n",item);
printf("\n\t--------------------\n");
top=top-1;
}
}/*End of pop()*/
void display()
{
int i;
if(top == -1)
{
printf("\n\t--------------------\n");
printf("\tStack is empty\n");
printf("\n\t--------------------\n");
}
else
{
printf("\n\t--------------------\n");
printf("\n\tStack elements : ");
printf("\n\t--------------------\n");
for(i = top; i >=0; i--)
printf("\t%d\n", stack_arr[i] );
printf("\n\t--------------------\n");
}
}/*End of display()*/
main()
{
int choice;
clrscr();
while(1)
{
printf("\n\t--------------------\n");
printf("\t STACK OPERATIONS \n");
printf("\n\t--------------------\n");
printf("\t1.Push\n");
printf("\t2.Pop\n");
printf("\t3.Display\n");
printf("\t4.Quit\n");
printf("\n\t--------------------\n");
printf("\tEnter your choice : ");
scanf("%d",&choice);
switch(choice)
{
case 1 :
push();
break;
case 2:
pop();
break;
case 3:
display();
break;
case 4:
exit(1);
default:
printf("\n\tWrong choice\n");
}/*End of switch*/
}/*End of while*/
}/*End of main()*/