Experiment 4
Experiment 4
Experiment 4
4
Circular Queue
#include <stdio.h>
#include <stdlib.h>
printf("Enter the maximum number of elements for the circular queue: ");
scanf("%d", &n);
initialize(&q, n);
while (1) {
printf("\nCircular Queue Menu:\n");
printf("1. Enqueue\n");
printf("2. Dequeue\n");
printf("3. Display\n");
printf("4. Exit\n");
printf("Enter your choice: ");
scanf("%d", &choice);
switch (choice) {
case 1:
printf("Enter the value to enqueue: ");
scanf("%d", &value);
enqueue(&q, value);
display(&q);
break;
case 2:
dequeue(&q);
display(&q);
break;
case 3:
display(&q);
break;
case 4:
printf("Exiting...\n");
free(q.items); // Free dynamically allocated memory
return 0;
default:
printf("Invalid choice! Please try again.\n");
break;
}
}
}
OUTPUT
Enter the maximum number of elements for the circular queue: 6
Enter up to 6 initial values (or enter -1 to stop):
Enter value 1: 45
Enqueued 45
Enter value 2: 12
Enqueued 12
Enter value 3: 36
Enqueued 36
Enter value 4: 56
Enqueued 56
Enter value 5: 5
Enqueued 5
Enter value 6: -1