Queue implementation in c

1:  #include <stdio.h>  
2:  #include <stdlib.h>  
3:  #define SIZE 5  
4:  int QUEUE[SIZE];  
5:  int front=-1;  
6:  int rear=-1;  
7:  void qinsert()  
8:  {  
9:       int data;  
10:       if(rear==SIZE-1)  
11:       {  
12:            printf("QUEUE IS OVERFLOW\n");  
13:            system("PAUSE");  
14:            return;  
15:       }  
16:       ++rear; //rear=rear+1;  
17:       if(rear==0)  
18:        front=0;  
19:       printf("\nEnter data: ");  
20:       scanf("%d",&data);  
21:       QUEUE[rear]=data;  
22:       return;  
23:  }  
24:  void qdelete()  
25:  {  
26:       int i;  
27:       if(front==-1)  
28:       {  
29:            printf("QUEUE IS UNDERFLOW\n");  
30:            system("PAUSE");  
31:            return;  
32:       }  
33:       printf("Deleted Element is:%d\n",QUEUE[front]);  
34:       for(i=0; i<rear; i++)  
35:        QUEUE[i]=QUEUE[i+1];  
36:       --rear; //rear=rear-rear;  
37:       if(rear==-1)  
38:        front=-1;  
39:       system("PAUSE")     ;  
40:       return;  
41:  }  
42:  void qdisplay()  
43:  {  
44:       int i;  
45:       if(rear==-1)  
46:       {  
47:            printf("QUEUE IS EMPTY\n");  
48:            system("PAUSE");  
49:            return;  
50:       }  
51:       printf("QUEUE ELEMENT: ");  
52:       for(i=0; i<=rear; i++)  
53:        printf("%d ",QUEUE[i]);  
54:       printf("\n");  
55:       system("PAUSE");  
56:       return;  
57:  }  
58:  int main(void)  
59:  {  
60:       int option;  
61:         while(1)  
62:       {  
63:            system("CLS");  
64:            printf("\nQInsert PRESS 1: ");  
65:            printf("\nQDelete PRESS 2: ");  
66:            printf("\nQDisplay PRESS 3: ");  
67:            printf("\nEXIT PRESS   4: ");  
68:            scanf("%d",&option);  
69:            switch(option)  
70:            {  
71:                 case 1: qinsert();  
72:                           break;  
73:                 case 2: qdelete();  
74:                           break;  
75:                 case 3: qdisplay();  
76:                           break;                 
77:                 case 4: return EXIT_SUCCESS;  
78:                 default: printf("INVALID OPTION\n");  
79:                            system("PAUSE");  
80:            }            
81:       }  
82:  }  

No comments:

Post a Comment