#include<stdio.h> #include<stdlib.h> #define MAX 5 int queue[MAX]; int front = -1, rear = -1; void enqueue(); void dequeue(); void display(); main() { int choice; do { printf("\n----MENU----\n"); printf("1.enqueue\n2.dequeue\n3.display\n4.EXIT\n"); printf("\nEnter your choice\n"); scanf("%d",&choice); switch(choice) { case 1:enqueue();break; case 2:dequeue();break; case 3:display();break; case 4:printf("\n~~~~Thank You~~~~\n");break; default:printf("\nINVALID INPUT !!!!\n"); } }while(choice!=4); } void enqueue() { int value; if((rear==MAX-1 && front == 0) || front == rear + 1) printf("\nQueue overflow !!!!!\n"); else { printf("\nEnter the value to be inserted\n"); scanf("%d",&value); if(front==-1) { front=0; rear=0; } else if(rear==MAX-1) { rear=0; } else rear++; queue[rear]=value; display(); } } void dequeue() { if(front==-1) printf("\nQueue underflow !!!!!\n"); else if(front==rear) { front=-1; rear=-1; } else if(front==MAX-1) front=0; else front++; display(); } void display() { int left,right; left=front; right=rear; if(left==-1) printf("\nqueue is empty \n"); else if(left<=right) { printf("Elements are:\t"); while(left<=right) { printf("%d\t",queue[left]); left++; } } else { printf("Elements are:\t"); while(left<MAX) { printf("%d\t",queue[left]); left++; } left=0; while(left<=right) { printf("%d\t",queue[left]); left++; } } }
|
|
|
|
Labels: Data Structure in C