QUEUE PROGRAM

PHOTO EMBED

Thu Sep 07 2023 17:06:21 GMT+0000 (Coordinated Universal Time)

Saved by @Astik

#include<stdio.h>
#include<conio.h>
int size=10, front=0,rear=-1;
void display(int *arr){
int i;
    if(rear==-1){
	printf("Underflow\n");
	return;
    }
    for(i=0;i<=rear;i++){
	printf("%d, ",arr[i]);
    }
}
void insert(int *arr ){
    int item,ch,i;
    if(rear==size-1){
	printf("Overflow");
	return;
    }
    printf("1. Insert at start \n2. Insert at mid \n3. Insert at last\n");
    scanf("%d",&ch);
    printf("Enter value: ");
    scanf("%d",&item);
    if(ch==1){
	for(i=rear;i>=0;i--){
	    arr[i+1]=arr[i];
	}
	arr[0]=item;
    }else if(ch==2){
	int index,i;
	printf("Enter Position: ");
	scanf("%d",&index);
	for(i=rear;i>=index-1;i--){
	    arr[i+1]=arr[i];
	}
	arr[index-1]=item;
    }else{
	arr[rear+1]=item;
    }
    rear++;
}
void deletion(int *arr){
int ch, i;
    if(rear==-1){
	printf("Underflow\n");
	return;
    }
printf("1. Delete at start \n2. Delete at mid \n3. Delete at last\n");
    scanf("%d",&ch);
    if(ch==1){
	for(i=0;i<rear;i++){
	    arr[i]=arr[i+1];
	}
    }else if(ch==2){
	int index,i;
	printf("Enter Position: ");
	scanf("%d",&index);
	for(i=index-1;i<rear;i++){
	    arr[i]=arr[i+1];
	}
    }
    rear--;
}
int main(){
    int i,ch=1, arr[20];
    clrscr();
    while(ch!=0){
	printf("\n1. Insertion \n2. Deletion \n3. Display \nPress 0 for EXIT\n");
	printf("Enter your choice: ");
	scanf("%d",&ch);
	switch(ch){
	    case 1:
		insert(arr);
		break;
	    case 2:
		deletion(arr);
		break;
	    case 3:
		display(arr);
		break;
	}
    }
    getch();
    return 0;
}
content_copyCOPY