3. Data Structure Program | Read Now
Data Structure VTU LAB Program -03
- Design, Develop and Implement a menu driven Program in C for the following operations on STACK of Integers (Array Implementation of Stack with maximum size MAX).
- Push an Element on to Stack
- Pop an Element from Stack
- Demonstrate how Stack can be used to check Palindrome
- Demonstrate Overflow and Underflow situations on Stack
- Display the status of Stack
- Exit
- Support the program with appropriate functions for each of the above operations
Program -3 Code [stack.c]
#include <stdio.h> #include <stdlib.h> int s[5],top=-1; void push() { if(top==4) printf("\nStack overflow!!!!"); else { printf("\nEnter element to insert:"); scanf("%d",&s[++top]); } } void pop() { if(top==-1) printf("\nStack underflow!!!"); else printf("\nElement popped is: %d",s[top--]); } void disp() { int t=top; if(t==-1) printf("\nStack empty!!"); else printf("\nStack elements are:\n"); while(t>=0) printf("%d ",s[t--]); } void pali() { int num[5],rev[5],i,t; for(i=0,t=top;t>=0;i++,t--) num[i]=rev[t]=s[t]; for(i=0;i<=top;i++) if(num[i]!=rev[i]) break; /*printf(" num rev\n"); for(t=0;t<=top;t++) printf("%4d %4d\n",num[t],rev[t]);*///remove /* */ to display num and rev if(i==top+1) printf("\nIt is a palindrome"); else printf("\nIt is not a palindrome"); } int main() { int ch; do { printf("\n...Stack operations.....\n"); printf("1.PUSH\n"); printf("2.POP\n"); printf("3.Palindrome\n"); printf("4.Display\n"); printf("5.Exit\n________________\n"); printf("Enter choice:"); scanf("%d",&ch); switch(ch) { case 1:push();break; case 2:pop();break; case 3:pali();break; case 4:disp();break; case 5:exit(0); default:printf("\nInvalid choice"); } } while(1); return 0; }
Data Structure -How to Run this Program
- Step-1: Copy the above code
- Step-2: Paste it in any C compiler [Codeblocks/Dev C++/ VsCode etc]
- Step-3: Save the file name with .C extension
- Step-4: Compile the program
- Step-5: Run the program
- Step-6: Program Execution Successful