C Program of the circular queue
Data Structure / Queue Data Structure
724Program:
/*Program of circular queue*/ #include #include #define MAX 10 int cqueue_arr[MAX]; int front=-1; int rear=-1; void display( ); void insert(item); int del(); int peek(); int isEmpty(); int isFull(); main() { int choice,item; while(1) { printf("1.Insert\n"); printf("2.Delete\n"); printf("3.Peek\n"); printf("4.Display\n"); printf("5.Quit\n"); printf("Enter your choice : "); scanf("%d",&choice); switch(choice) { case 1 : printf("Input the element for insertion : "); scanf("%d",&item); insert(item); break; case 2 : printf("Element deleted is : %d\n",del()); break; case 3: printf("Element at the front is : %d\n",peek()); break; case 4: display(); break; case 5: exit(1); default: printf("Wrong choice\n"); }/*End of switch*/ }/*End of while */ }/*End of main()*/ void insert(int item) { if( isFull() ) { printf("Queue Overflow\n"); return; } if(front == -1 ) front=0; if(rear==MAX-1)/*rear is at last position of queue*/ rear=0; else rear=rear+1; cqueue_arr[rear]=item ; }/*End of insert()*/ int del() { int item; if( isEmpty() ) { printf("Queue Underflow\n"); exit(1); } item=cqueue_arr[front]; if(front==rear) /* queue has only one element */ { front=-1; rear=-1; } else if(front==MAX-1) front=0; else front=front+1; return item; }/*End of del() */ int isEmpty() { if(front==-1) return 1; else return 0; }/*End of isEmpty()*/ int isFull() { if((front==0 && rear==MAX-1) || (front==rear+1)) return 1; else return 0; }/*End of isFull()*/ int peek() { if( isEmpty() ) { printf("Queue Underflow\n"); exit(1); } return cqueue_arr[front]; }/*End of peek()*/ void display() { int i; if(isEmpty()) { printf("Queue is empty\n"); return; } printf("Queue elements :\n"); i=front; if( front<=rear ) { while(i<=rear) printf("%d ",cqueue_arr[i++]); } else { while(i<=MAX-1) printf("%d ",cqueue_arr[i++]); i=0; while(i<=rear) printf("%d ",cqueue_arr[i++]); } printf("\n"); }/*End of display() */
Output:
1.Insert 2.Delete 3.Peek 4.Display 5.Quit Enter your choice : 1 Input the element for insertion : 12 1.Insert 2.Delete 3.Peek 4.Display 5.Quit Enter your choice : 3 Element at the front is : 12 1.Insert 2.Delete 3.Peek 4.Display 5.Quit Enter your choice : 1 Input the element for insertion : 13 1.Insert 2.Delete 3.Peek 4.Display 5.Quit Enter your choice : 4 Queue elements : 12 13 1.Insert 2.Delete 3.Peek 4.Display 5.Quit Enter your choice : 5 Press any key to continue . . .
Explanation:
nope
This Particular section is dedicated to Programs only. If you want learn more about Data Structure. Then you can visit below links to get more depth on this subject.
# C Tutorials
# JAVA Tutorials
# HTML Tutorials
# Computer Fundamental
# Data Structure
# DBMS Tutorials
SQL
# C# Language
# R Language
# PHP
# Python
# Vue JS