# include <stdio.h> # define MAX 6 int CQ[MAX]; int front = 0; int rear = 0; int count = 0; void insertCQ(){ int data; if(count == MAX) { printf("\n Circular Queue is Full"); } else { printf("\n Enter data: "); scanf("%d", &data); CQ[rear] = data; rear = (rear + 1) % MAX; count ++; printf("\n Data Inserted in the Circular Queue "); } } void deleteCQ() { if(count == 0) { printf("\n\nCircular Queue is Empty.."); } else { printf("\n Deleted element from Circular Queue is %d ", CQ[front]); front = (front + 1) % MAX; count --; } } void displayCQ() { int i, j; if(count == 0) { printf("\n\n\t Circular Queue is Empty "); } else { printf("\n Elements in Circular Queue are: "); j = count; for(i = front; j != 0; j--) { printf("%d\t", CQ[i]); i = (i + 1) % MAX; } } } int menu() { int ch; printf("\n \t Circular Queue Operations using ARRAY.."); printf("\n -----------**********-------------\n"); printf("\n 1. Insert "); printf("\n 2. Delete "); printf("\n 3. Display"); printf("\n 4. Quit "); printf("\n Enter Your Choice: "); scanf("%d", &ch); return ch; } void main(){ int ch; do { ch = menu(); switch(ch) { case 1: insertCQ(); break; case 2: deleteCQ(); break; case 3: displayCQ(); break; case 4: return; default: printf("\n Invalid Choice "); } } while(1); }