Program to perform operation on a circular queue using C language.

#include<stdio.h>
int queue[100], choice, n, i, front=-1, rear=-1;
void main()
{
    printf("Enter size of stack: ");
    scanf("%d",&n);
    do
    {
        printf("\n-----Circular Queue----\n1. INSERT\n2. REMOVE\n3. DISPLAY\n4. EXIT\n\n");
        printf("Enter choice: ");
        scanf("%d",&choice);
        switch(choice)
        {
            case 1: insert();
            break;
            case 2: remove1();
            break;
            case 3: display();
            break;
            case 4:
            break;
            default: printf("Enter valid choice.\n");
            break;
        }
    }while(choice!=4);
}

void insert()
{
    int value;
    if(front==0 && rear==n-1 || front>=0 && rear==front-1)
    {
        printf("Queue is overflow.\n");
    }
    else
    {
        printf("Enter element to be inserted: ");
        scanf("%d",&value);
        if(rear==n-1)
        {
            front=0;
        }
        else
        {
            front=0;
            rear=rear+1;
        }
        queue[rear] = value;
        printf("Element Inserted.\n");
    }
}

void remove1()
{
    if(front<=-1)
    {
         printf("Queue is underflow.\n");
    }
    else
    {
        printf("Element deleted is %d.\n",queue[front]);
        if(front==rear){
            front=-1;
            rear=-1;
        }
        else{
            if(front==n-1){
                front=0;
            }
            else{
                front=front+1;
            }
        }
    }
}

void display()
{
    if(front==-1)
    {
         printf("Queue is underflow.\n");
    }
    else
    {
        int i=front;
        if(front<=rear){
            while(i<=rear){
                printf("%d\n",queue[i++]);
            }
        }
        else{
            while(i<=n-1){
                printf("%d\n",queue[i++]);
            }
            i=0;
            while(i<=rear){
                printf("%d\n",queue[i++]);
            }
        }
    }
}