Code:

//cai dat Queue bang mang
#include<stdio.h>
#include<conio.h>
#define Max 100

int Queue[Max + 1];
int Front, Rear, Queue_size;

void MakeNull_Queue(){
   Front = Rear = 0;
   Queue_size = 0;
}
 int Empty_Queue(){
   return (Queue_size ==0);
}
int Full_Queue(){
   return (Queue_size == Max);
}
int Push_Queue(int value){
   if(Queue_size < Max)
   {
   Queue_size++;
   Queue[Rear++] = value;
   if(Rear == Max)
      Rear=0;
}
   return Rear;
}
int Pop_Queue(int *value)
{
   if(Queue_size > 0)
   {
      *value = Queue[Front++];
   if(Front>Max)
      Front  = 0;
   Queue_size--;
}
   return Front;
}
void main()
{
   clrscr();
   int k;
   MakeNull_Queue();
   printf("\n Nhap cac phan tu vao Queue (-1 de ket thuc) :");
   do{
      scanf("%d", &k);
   if(k!= -1)
   Push_Queue(k);
}
   while (k != -1 && !Full_Queue());
   printf("\n Lay cac phan tu tu Queue ra : ");
   while (!Empty_Queue())
   {
   Pop_Queue(&k);
   printf("\t %d", k);
   }
   getch();
}