i have made a programe of queue in c++
code is :

#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<process.h>
#define maxsize 5

struct que
{
	  int items[maxsize];
	  int rear , front;
};

void insert(struct que *,int);
int remove(struct que *) ;
int empty (struct que *);
void makenull(struct que *);
void front(struct que *);


 /****************** insert function **********************/

void insert(struct que *q,int a)

 {

	 if(q->rear==maxsize-1)

		   q->rear=0;

		else

		   (q->rear)++ ;

	if(q->rear==q->front)
		 {

		cout<<endl<<"OVERFLOW" <<endl ;
		   //exit(1);
		 }

	   q->items[q->rear]=a ;


 }

  /*************** remove function ********************/

int remove(struct que *q)
		{

		 if(empty(q))

		  {
		cout<<endl<<" UNDERFLOW"<<endl;

		  }

		if(q->front==maxsize-1)

		  q->front =0;

		  else
		  {
		 (q->front)++;
		  }
		  return (q->items[q->front]);

 q->rear=q->front=maxsize-1;

		}


 /********************** empty function ************************/

 int empty(struct que *q)
	   {
		 

		  if(q->front==q->rear)
			
			return (1);

		else

			return (0);

		}
/********************* front function ******************************/
//returns the 1st element in queue
void front(struct que *q)

{
	int a;

	int first_val;

	
	first_val=q->items[q->front];

	cout<<endl<<"FIRST ELEMENT IS :" <<first_val;
 }

  /******************** makenull function ***************************/

 void makenull(struct que *q)

 {
	if(empty(q))

		{

		   cout<<"THE QUEUE  IS EMPTY";
		}

		 else

		{

		   q->rear=q->front=maxsize-1;

		   cout<<endl<<"QUEUE Is EMPTY "<<endl ;
		}

 }


 /****************** main function *****************************/

void main ()

{

	int a;
	clrscr();
	struct que *q;


	for(int i=0;i<maxsize;i++)
	q->items[i]=0;

   char  choice;
   q->rear=q->front=maxsize-1;
	  cout<<endl<<"******************* IMPLIMENTATION OF QUEUES******************" <<endl<<endl;

 do


	{ //clrscr();


	cout<<endl<<endl<<" 1 : Insert "<<endl<<" 2 : Remove "<<endl<<" 3 : check empty : 0 shows  not empty & 1  shows  empty " <<endl<<" 4 : Makenull"<<endl<<" 5 : Front"<<endl;
	cout<<                          "enter ur choice : " ;

	choice=getche();

	  switch(choice)

		  {

			case '1' :

			   {

				 cout<<endl<<"ENTER THE VALUE : ";
				 cin>>a;

				 insert(q,a);

				 for(int i=0; i<=maxsize-2;i++)

				 cout<<q->items[i]<<" ";

				 break;

			   }

			case '2' :

			   {
				  cout<<endl<<"THE VALUE IS: ";

				 cout<<remove(q)<<endl;

				 for(int i=maxsize-1;i>0;i--)

				 cout<<q->items[i]<<" ";

				 break;

			   }



			case '3' :

			   {

				 cout<<endl<<empty(q);

				 break;

			   }

			case '4' :

			   {

				 makenull(q);

					 for(int i=0;i<maxsize;i++)
					{

					q->items[i]='\0';

					cout<<q->items[i]<<endl;

					 }

					 break;

			   }

			case '5':

				{

					   front(q);

					   break;
				}


			  default :



				 cout<<"  wrong choice  ";
				 break;

		  }//end of switch

	cout<<endl<<"Do u want to exit y/n :" ;

    } //end do while

	while((choice=getche())!='y');

 }//end main
This article has been dead for over six months. Start a new discussion instead.