DS Lab 6
DS Lab 6
/* DS Lab 6
Develop a menu driven Program in C for the
following operations on Circular QUEUE of
Characters (Array Implementation of Circular Queue
with maximum size MAX)
a. Insert an Element on to Circular QUEUE
b. Delete an Element from Circular QUEUE
C. Demonstrate Overflow and Underflow situations on
Circular QUEUE
d. Display the status of Circular QUEUE
e. Exit
Support the program with appropriate functions for
each of the above operations
*/
#include<stdio.h>
#include<stdlib.h>
*rear = CQ_SIZE - 1;
}
}
printf("\n");
}
void main()
{
int choice, front = 0, rear = -1, count = 0;
char item, *cqueue;
cqueue = (char *)malloc(CQ_SIZE * sizeof(char));
for (;;)
{
printf("1: Insert rear 2: Delete front 3:
Display 4: Exit : ");
scanf("%d", &choice);
switch (choice)
{
case 1:
printf("Enter the Character : ");
scanf(" %c", &item); // Space
-3-
C:\Users\jayap\Desktop\Final-JSH\Circular _Queue_Dynamically_Char.c Saturday, 2 November, 2024 09:01 AM
case 2:
delete_front(cqueue, &front, &count
);
break;
case 3:
display(cqueue, front, count);
break;
case 4:
free(cqueue); // Free allocated
memory
exit(0);
default:
printf("Invalid choice. Please try
again.\n");
}
}
}
/*
Output :
Item deleted: A
1: Insert rear 2: Delete front 3: Display 4: Exit :
3
Circular Queue Elements: B C D E
1: Insert rear 2: Delete front 3: Display 4: Exit :
2
Item deleted: B
1: Insert rear 2: Delete front 3: Display 4: Exit :
3
Circular Queue Elements: C D E
1: Insert rear 2: Delete front 3: Display 4: Exit :
2
Item deleted: C
1: Insert rear 2: Delete front 3: Display 4: Exit :
3
Circular Queue Elements: D E
1: Insert rear 2: Delete front 3: Display 4: Exit :
2
Item deleted: D
1: Insert rear 2: Delete front 3: Display 4: Exit :
3
Circular Queue Elements: E
1: Insert rear 2: Delete front 3: Display 4: Exit :
2
Item deleted: E
1: Insert rear 2: Delete front 3: Display 4: Exit :
3
Circular Queue is Empty
1: Insert rear 2: Delete front 3: Display 4: Exit :
5
Invalid choice. Please try again.
1: Insert rear 2: Delete front 3: Display 4: Exit :
4
-6-
C:\Users\jayap\Desktop\Final-JSH\Circular _Queue_Dynamically_Char.c Saturday, 2 November, 2024 09:01 AM
*/
-7-