Skip to main content

Queue in C Language

//Simple Queue Implementation In C language
#include<stdio.h>
#define MAX 5
int front=-1;
int rear=-1;
int queue[MAX];

insert()
{
    int i;
    if(rear==(MAX-1))
    {
        printf("\nQueue Overflowed!");
    }else
        {
            printf("\nEnter A Value::");
            scanf("%d",&i);
            queue[++rear]=i;
            if(front==-1)
            {
                front=0;
            }
        }
}

delete()
{
    int i;
    if(rear==-1)
    {
        printf("\nQueue is empty");
    }else
        {
            if(front==rear)
            {
                printf("\nQueue Has Lack Of Elements To Delete");
            }else{
                    i=queue[front];
                    printf("%d has removed",i);
                    front++;
                }
        }
}

clear()
{
    int ch;
    printf("Are you sure to clear the QUEUE? Yes (1) or No (2)");
    scanf("%d",&ch);
    switch(ch)
    {
        case 1:
            front=rear=-1;
            printf("\nQueue has refreshed & cleaned");
    }
}

int main()
{
    int ch,f=0;
    //clrscr();//Optional
    while(f<=1)
    {
        printf("\n1. INSERT VALUE\n2. DELETE VALUE\n3. CLEAR VALUES\n4. EXIT");
        scanf("%d",&ch);
        switch(ch)
        {
            case 1:
                insert();
                //getch(); //Optional
                break;
            case 2:
                delete();
                //getch();//Optional
                break;
            case 3:
                clear();
                //getch();//Optional
                break;
            case 4:
                //exit();//Optional
            default:
                printf("\nWrong Input");
        }
    }
}

Comments