fork(1) download
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. struct node
  4. {
  5. int data;
  6. struct node *next;
  7. }*head,*var,*trav;
  8.  
  9. int del_beg()
  10. {
  11. struct node *temp,*start;
  12.  
  13. temp = start;
  14. start = start->next;
  15. free(temp);
  16. printf("nThe Element deleted Successfully ");
  17. }
  18. int delete_from_middle(int value)
  19. {
  20. struct node *temp,*var;
  21. temp=head;
  22. while(temp!=NULL)
  23. {
  24. if(temp->data == value)
  25. {
  26. if(temp==head)
  27. {
  28. head=temp->next;
  29. free(temp);
  30. return 0;
  31. }
  32. else
  33. {
  34. var->next=temp->next;
  35. free(temp);
  36. return 0;
  37. }
  38. }
  39. else
  40. {
  41. var=temp;
  42. temp=temp->next;
  43. }
  44. }
  45. printf("data deleted from list is %d",value);
  46. }
  47. int delete_from_end()
  48. {
  49. struct node *temp;
  50. temp=head;
  51. while(temp->next != NULL)
  52. {
  53. var=temp;
  54. temp=temp->next;
  55. }
  56. if(temp ==head)
  57. {
  58. head=temp->next;
  59. free(temp);
  60. return 0;
  61. }
  62. printf("data deleted from list is %d",temp->data);
  63. var->next=NULL;
  64. free(temp);
  65. return 0;
  66. }
  67. void display()
  68. {
  69. trav=head;
  70. if(trav==NULL)
  71. {
  72. printf("\nList is Empty");
  73. }
  74. else
  75. {
  76. printf("\nElements in the List: ");
  77. while(trav!=NULL)
  78. {
  79. printf(" -> %d ",trav->data);
  80. trav=trav->next;
  81. }
  82. printf("\n");
  83. }
  84. }
  85. int main()
  86. {
  87. int i=0;
  88. head=NULL;
  89. while(1)
  90. {
  91. printf("\nenter the choice of operation to perform on linked list");
  92. scanf("%d",&i);
  93. switch(i)
  94. {
  95. case 1:
  96. {
  97. del_beg();
  98. display();
  99. break;
  100. }
  101.  
  102. case 2:
  103. {
  104. delete_from_end();
  105. display();
  106. break;
  107. }
  108. case 3:
  109. {
  110. int value;
  111. display();
  112. printf("\nenter the data that you want to delete from the list shown above");
  113. scanf("%d",&value);
  114. delete_from_middle(value);
  115. display();
  116. break;
  117. }
  118. case 6:
  119. {
  120. exit(0);
  121. }
  122. }
  123. }
  124. return 0;
  125. }
Runtime error #stdin #stdout 0s 2296KB
stdin
1
2
stdout
Standard output is empty