Advertisement
d1i2p3a4k5

3.SIMPLE QUEUE (DS)

Oct 29th, 2014
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.46 KB | None | 0 0
  1. #include<conio.h>
  2. #include<stdio.h>
  3. #define max 100
  4. typedef struct
  5. {
  6.     int q[max];
  7.     int f,r;
  8. }queue;
  9. int isempty(queue *t)
  10. {
  11.     if(t->f==t->r+1)
  12.         return 1;
  13.     else return 0;
  14. }
  15. void insert(queue *t,int ele)
  16. {
  17.     if(t->r==max-1)
  18.     {
  19.         printf("\nQUEUE OVERFLOW\n");
  20.         return ;
  21.     }
  22.     t->r++;
  23.     t->q[t->r] = ele;
  24.     return;
  25. }
  26. void delete1(queue *t)
  27. {
  28.     int z;
  29.     if(isempty(t)==1)
  30.     {
  31.         printf("\nQUEUE UNDERFLOW\n");
  32.         return ;
  33.     }
  34.     z = t->q[t->f];
  35.     t->f++;
  36.     printf("Deleted element is %d",z);
  37.     return;
  38. }
  39. void queuefront(queue *t)
  40. {
  41.     int z;
  42.     if(isempty(t)==1)
  43.     {
  44.         printf("\nQUEUE UNDERFLOW");
  45.         return;
  46.     }
  47.     z  = t->q[t->f];
  48.     printf("QUEUEFRONT is %d",z);
  49.     return;
  50. }
  51. void display(queue *t)
  52. {
  53.     int i;
  54.     if(isempty(t)==1)
  55.     {
  56.         printf("\nQUEUE UNDERFLOW");
  57.         return;
  58.     }
  59.     printf("\nELEMENT OF QUEUE ARE SHOWN BELOW\n");
  60.     for(i=t->f;i<=t->r;i++)
  61.     {
  62.         printf("%d\t",t->q[i]);
  63.     }
  64.     return ;
  65. }
  66. int  main()
  67. {
  68.     int ch,ele;
  69.     queue x;
  70.     x.f = 0;
  71.     x.r = -1;
  72.     printf("IMPLEMENTATION OF SIMPLE QUEUE USING ARRAY");
  73.     while(1)
  74.     {
  75.         printf("\nENTER CHOICE \n1.INSERT 2.DELETE 3.QUEUEFRONT 4.DISPLAY 5.EXIT\n");
  76.         scanf_s("%d",&ch);
  77.         if(ch==5)
  78.         {
  79.             break;
  80.         }
  81.         switch(ch)
  82.         {
  83.         case 1:printf("\nEnter element to insert\n");
  84.             scanf_s("%d",&ele);
  85.             insert(&x,ele);
  86.             break;
  87.         case 2:delete1(&x);
  88.             break;
  89.         case 3:queuefront(&x);
  90.             break;
  91.         case 4:display(&x);
  92.             break;
  93.         default:printf("\nINVALID INPUT");
  94.         }
  95.     }
  96.     _getch();
  97.     return 0;
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement