6. Data Structure Program | Read Now
Data Structure Lab program -06
- Design, Develop and Implement a menu driven Program in C for the following operations on Circular QUEUE of Characters (Array Implementation of Queue with maximum size MAX)
- Insert an Element on to Circular QUEUE
- Delete an Element from Circular QUEUE
- Demonstrate Overflow and Underflow situations on Circular QUEUE
- Display the status of Circular QUEUE
- Exit
- Support the program with appropriate functions for each of the above operations
Program-6 Code [circularqueue.c]
#include <stdio.h> #include <stdlib.h> #define max 5 int q[max],f=-1,r=-1; void ins() { if(f==(r+1)%max) printf("\nQueue overflow"); else { if(f==-1) f++; r=(r+1)%max; printf("\nEnter element to be inserted:"); scanf("%d",&q[r]); } } void del() { if(r==-1) printf("\nQueue underflow"); else { printf("\nElemnt deleted is:%d",q[f]); if(f==r) f=r=-1; else f=(f+1)%max; } } void disp() { if(f==-1) printf("\nQueue empty"); else { int i; printf("\nQueue elements are:\n"); for(i=f;i!=r;i=(i+1)%max) printf("%d\t",q[i]); printf("%d",q[i]); printf("\nFront is at:%d\nRear is at:%d",q[f],q[r]); } } int main() { printf("\nCircular Queue operations"); printf("\n1.Insert"); printf("\n2.Delete"); printf("\n3.Display"); printf("\n4.Exit"); int ch; do{ printf("\nEnter choice:"); scanf("%d",&ch); switch(ch) { case 1:ins();break; case 2:del();break; case 3:disp();break; case 4: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