In: Computer Science
C language
Write a program in C to implement Queue and its operation (like create, insert, delete, search) using array data structure.
Write a program in C to implement Queue and its operation (like create, insert, delete, search) using array data structure.
Code :-
#include <stdio.h>
#include<stdlib.h>
#define MAX 50
void insert();
void delete();
void display();
void Search();
int queue_array[MAX];
int rear = - 1;
int front = - 1;
int main()
{
int choice;
while (1)
{
printf("1.Insert element to queue \n");
printf("2.Delete element from queue \n");
printf("3.Display all elements of queue \n");
printf("4.search element in queue \n");
printf("5.Quit \n");
printf("Enter your choice : ");
scanf("%d", &choice);
switch (choice)
{
case 1:
insert();
break;
case 2:
delete();
break;
case 3:
display();
break;
case 4:
Search();
break;
case 5:
printf(" you quit from the program");
exit(1);
default:
printf("Wrong choice \n");
}
}
}
void insert()
{
int add_item;
if (rear == MAX - 1)
printf("Queue Overflow \n");
else
{
if (front == - 1)
/*If queue is initially empty */
front = 0;
printf("Inset the element in queue : ");
scanf("%d", &add_item);
rear = rear + 1;
queue_array[rear] = add_item;
}
}
void delete()
{
if (front == - 1 || front > rear)
{
printf("Queue Underflow \n");
return ;
}
else
{
printf("Element deleted from queue is : %d\n", queue_array[front]);
front = front + 1;
}
}
void display()
{
int i;
if (front == - 1)
printf("Queue is empty \n");
else
{
printf("Queue is : \n");
for (i = front; i <= rear; i++)
printf("%d ", queue_array[i]);
printf("\n");
}
}
void Search()
{
int found = 0,i=0,item;
printf("\nEnter element to search: ");
scanf("%d", &item);
for(i=front;i<=rear;i++)
{
if(queue_array[i] == item)
{
found = 1;
break;
}
}
if(found == 1)
{
printf("\n %d is found in the array\n ", item);
}
else
{
printf("\n%d is not found in the array\n", item);
}
}
Output:-
1.Insert element to queue
2.Delete element from queue
3.Display all elements of queue
4.search element in queue
5.Quit
Enter your choice : 1
Inset the element in queue : 12
1.Insert element to queue
2.Delete element from queue
3.Display all elements of queue
4.search element in queue
5.Quit
Enter your choice : 1
Inset the element in queue : 18
1.Insert element to queue
2.Delete element from queue
3.Display all elements of queue
4.search element in queue
5.Quit
Enter your choice : 1
Inset the element in queue : 8
1.Insert element to queue
2.Delete element from queue
3.Display all elements of queue
4.search element in queue
5.Quit
Enter your choice : 1
Inset the element in queue : 25
1.Insert element to queue
2.Delete element from queue
3.Display all elements of queue
4.search element in queue
5.Quit
Enter your choice : 3
Queue is :
12 18 8 25
1.Insert element to queue
2.Delete element from queue
3.Display all elements of queue
4.search element in queue
5.Quit
Enter your choice : 2
Element deleted from queue is : 12
1.Insert element to queue
2.Delete element from queue
3.Display all elements of queue
4.search element in queue
5.Quit
Enter your choice : 4
Enter element to search: 8
8 is found in the array
1.Insert element to queue
2.Delete element from queue
3.Display all elements of queue
4.search element in queue
5.Quit
Enter your choice : 5
you quit from the program.