Simple Stack Program in C Programming
On this page (5sections)
About this program
This is an example program in stack programs. Read the concept first: C Array, then study the code and output below.
Definition
A stack is a basic computer science data structure and can be defined in an abstract, implementation-free manner, or it can be generally defined as a linear list of items in which all additions and deletion are restricted to one end that is Top.
Simple Stack Program in C Programming
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define MAX_SIZE 5
int main() {
int item, choice, i;
int arr_stack[MAX_SIZE];
int top = 0;
int exit = 1;
printf("\nSimple Stack Example - Array");
do {
printf("\n\nnStack Main Menu");
printf("\n1.Push \n2.Pop \n3.Display \nOthers to exit");
printf("\nEnter Your Choice : ");
scanf("%d", &choice);
switch (choice) {
case 1:
if (top == MAX_SIZE)
printf("\n## Stack is Full!");
else {
printf("\nEnter The Value to be pushed : ");
scanf("%d", &item);
printf("\n## Position : %d , Pushed Value : %d ", top, item);
arr_stack[top++] = item;
}
break;
case 2:
if (top == 0)
printf("\n## Stack is Empty!");
else {
--top;
printf("\n## Position : %d , Popped Value : %d ", top, arr_stack[top]);
}
break;
case 3:
printf("\n## Stack Size : %d ", top);
for (i = (top - 1); i >= 0; i--)
printf("\n## Position : %d , Value : %d ", i, arr_stack[i]);
break;
default:
exit = 0;
break;
}
} while (exit);
return 0;
}
Sample Output:
Simple Stack Example - Array
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1
Enter The Value to be pushed : 34
## Position : 0 , Pushed Value : 34
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1
Enter The Value to be pushed : 89
## Position : 1 , Pushed Value : 89
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1
Enter The Value to be pushed : 900
## Position : 2 , Pushed Value : 900
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1
Enter The Value to be pushed : 450
## Position : 3 , Pushed Value : 450
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1
Enter The Value to be pushed : 789
## Position : 4 , Pushed Value : 789
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1
## Stack is Full!
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2
## Position : 4 , Popped Value : 789
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2
## Position : 3 , Popped Value : 450
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2
## Position : 2 , Popped Value : 900
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2
## Position : 1 , Popped Value : 89
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2
## Position : 0 , Popped Value : 34
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2
## Stack is Empty!
Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 4
------------------
(program exited with code: 0)
Related Pages
Learn the concept first, then study the code:
- Data Structures — Browse all Data Structures.
- C Array — Concept — arrays underpin stack implementations.
- Simple Stack Program using functions in C Programming — More in stack programs.
- Simple Stack Program using pointers in C Programming — More in stack programs.