Below is the C program to implement various queue operations,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | #include<stdio.h> #include<conio.h> #define max 5 int q[10],front=0,rear=-1; void main() { int ch; void insert(); void delet(); void display(); clrscr(); printf("\nQueue operations\n"); printf("1.insert\n2.delete\n3.display\n4.exit\n"); while(1) { printf("Enter your choice:"); scanf("%d",&ch); switch(ch) { case 1: insert(); break; case 2: delet(); break; case 3:display(); break; case 4:exit(); default:printf("Invalid option\n"); } } } void insert() { int x; if(rear==max-1) printf("Queue is overflow\n"); else { printf("Enter element to be insert:"); scanf("%d",&x); q[++rear]=x; } } void delet() { int a; if((front==0)&&(rear==-1)) { printf("Queue is underflow\n"); getch(); exit(); } a=q[front++]; printf("Deleted element is:%d\n",a); if(front>rear) { front=0; rear=-1; } } void display() { int i; if(front==0&&rear==-1) { printf("Queue is underflow\n"); getch(); exit(); } for(i=front;i<=rear;i++) printf("\t%d",q[i]); printf("\n"); } getch(); |