/**
Program Name: STACK
Description: This Program implements Stack Data Structure using Linear Array
Author: Tauqirul Haque
*/
#define SIZE 5
int stack[SIZE];
int top = -1; // this is the initial condition
void push();
void pop();
void display();
int main()
{
int choice;
while(choice != 4)
{
printf("\n\t\t\t1. Push an Element ");
printf("\n\t\t\t2. POP an Element");
printf("\n\t\t\t3. Display The Stack");
printf("\n\t\t\t4. Exit Program");
printf("\nEnter Your Choice # ");
scanf("%d",&choice);
switch(choice)
{
case 1:
push();
break;
case 2:
pop();
break;
case 3:
display();
break;
case 4:
printf("\n\nProgram Terminated ...\n");
exit(0);
}
}
}
void push()
{
int item;
printf("\nEnter The Element You Want to Insert # ");
scanf("%d",&item);
if(top == SIZE -1)
{
printf("\n STACK OVERFLOW ....\n\n");
return;
}
top++; //incrementing the top
stack[top] = item; //adding the new element
}
void pop()
{
int item;
if(top == -1)
{
printf("\n\nSTACK UNDERFLOW .. \n\n");
return;
}
item = stack[top];
top--;
printf("\nThe Element POPed Out is # %d \n",item);
}
void display()
{
if(top==-1)
{
printf("\n\nThe Stack Is Empty\n\n");
return;
}
printf("\n\nThe Elements in the Stack Are .. \n");
for(int i=top; i>=0; i--)
{
printf("%5d",stack[i]);
}
}
Program Name: STACK
Description: This Program implements Stack Data Structure using Linear Array
Author: Tauqirul Haque
*/
#define SIZE 5
int stack[SIZE];
int top = -1; // this is the initial condition
void push();
void pop();
void display();
int main()
{
int choice;
while(choice != 4)
{
printf("\n\t\t\t1. Push an Element ");
printf("\n\t\t\t2. POP an Element");
printf("\n\t\t\t3. Display The Stack");
printf("\n\t\t\t4. Exit Program");
printf("\nEnter Your Choice # ");
scanf("%d",&choice);
switch(choice)
{
case 1:
push();
break;
case 2:
pop();
break;
case 3:
display();
break;
case 4:
printf("\n\nProgram Terminated ...\n");
exit(0);
}
}
}
void push()
{
int item;
printf("\nEnter The Element You Want to Insert # ");
scanf("%d",&item);
if(top == SIZE -1)
{
printf("\n STACK OVERFLOW ....\n\n");
return;
}
top++; //incrementing the top
stack[top] = item; //adding the new element
}
void pop()
{
int item;
if(top == -1)
{
printf("\n\nSTACK UNDERFLOW .. \n\n");
return;
}
item = stack[top];
top--;
printf("\nThe Element POPed Out is # %d \n",item);
}
void display()
{
if(top==-1)
{
printf("\n\nThe Stack Is Empty\n\n");
return;
}
printf("\n\nThe Elements in the Stack Are .. \n");
for(int i=top; i>=0; i--)
{
printf("%5d",stack[i]);
}
}
Comments