fork download
  1. #include<stdio.h>
  2. #define sz 100
  3.  
  4. int arr[sz],last=0;
  5.  
  6. void Enqueue(int val)
  7. {
  8. if(last>=sz)
  9. printf("No more space on Queue.\n");
  10. else
  11. arr[last++]=val;
  12. }
  13.  
  14. void Dequeue()
  15. {
  16. if(last<=0)
  17. {
  18. printf("Queue is empty\n");
  19. }
  20. else
  21. {
  22. printf("Removed element: %d\n",arr[0]);
  23. //Shift All element left
  24. for(int i=1;i<last;i++)
  25. arr[i-1]=arr[i];
  26. last--;
  27. }
  28. }
  29.  
  30. void printlist()
  31. {
  32. int i;
  33. for(i=0;i<last;i++)
  34. printf("%d ",arr[i]);
  35. puts("");
  36. }
  37.  
  38. int main()
  39. {
  40. int num,val;
  41. bool getout=false;
  42.  
  43. while(true)
  44. {
  45. printf("Enter your choice:\n");
  46. printf("1. Enqueue\n2. Dequeue\n3. Exit\n");
  47. scanf("%d",&num);
  48.  
  49. switch(num)
  50. {
  51. case 1:
  52. scanf("%d",&val);
  53.  
  54. Enqueue(val);
  55.  
  56. printlist();
  57. puts("");
  58. break;
  59. case 2:
  60. Dequeue();
  61.  
  62. printlist();
  63. puts("");
  64. break;
  65. case 3:
  66. getout=true;
  67. break;
  68. }
  69.  
  70. if(getout==true)
  71. break;
  72. }
  73.  
  74. return 0;
  75. }
  76.  
  77.  
Success #stdin #stdout 0s 2900KB
stdin
1
10
1
20
1 
30
2
2
2
2
3
stdout
Enter your choice:
1. Enqueue
2. Dequeue
3. Exit
10 

Enter your choice:
1. Enqueue
2. Dequeue
3. Exit
10 20 

Enter your choice:
1. Enqueue
2. Dequeue
3. Exit
10 20 30 

Enter your choice:
1. Enqueue
2. Dequeue
3. Exit
Removed element: 10
20 30 

Enter your choice:
1. Enqueue
2. Dequeue
3. Exit
Removed element: 20
30 

Enter your choice:
1. Enqueue
2. Dequeue
3. Exit
Removed element: 30


Enter your choice:
1. Enqueue
2. Dequeue
3. Exit
Queue is empty


Enter your choice:
1. Enqueue
2. Dequeue
3. Exit