URI:
   DIR Return Create A Forum - Home
       ---------------------------------------------------------
       Class Discussion
  HTML https://srm.createaforum.com
       ---------------------------------------------------------
       *****************************************************
   DIR Return to: Data Structure
       *****************************************************
       #Post#: 6--------------------------------------------------
       Node Delete (Data Structure)
   DIR By: prannyll
       Date: April 18, 2019, 7:15 am
       ---------------------------------------------------------
       #include<stdio.h>
       #include<stdlib.h>
       #include<conio.h>
       void vnode(); void dnode();
       int count = 0, ch, n = 5;
       typedef struct node{
       int data;
       struct node *next;
       }t;
       t* temp;
       t* head;
       t* ptr;
       void main()
       {
       int i;
       clrscr();
       for(i = 1; i <= n; i++)
       {
       t* ptr = (t*)malloc(sizeof(t*));
       t* ptr2 = (t*)malloc(sizeof(t*));
       ptr->data = i;
       ptr->next = ptr2;
       if(i == n)
       ptr->next = NULL;
       free(ptr2);
       count++;
       if(count == 1)
       head = ptr;
       printf("\n (%d) MAIN: %u  DATA: %d  NEXT: %u",i, ptr,
       ptr->data, ptr->next);
       }
       printf("\n ------------------ %d NODES
       ------------------\n", count);
       dnode();
       getch();
       }
       //FUNCTION FOR VIEWING NODES
       void vnode()
       {
       int i;
       ptr = head;
       printf("\n
       _____________________________________________\n");
       for(i = 1; i<=count; i++)
       {
       printf("\n (%d) MAIN: %u  DATA: %d  NEXT: %u",i, ptr,
       ptr->data, ptr->next);
       ptr = ptr->next;
       }
       printf("\n ------------------ %d NODES
       ------------------\n", count);
       }
       //FUNCTION FOR DELETING NODE
       void dnode()
       {
       int i;
       printf("\n Which node you want to remove?\n >>");
       scanf("%d", &ch);
       if(ch == 1)
       {
       printf("\n NODE REMOVED! \n MAIN: %u  DATA: %d  NEXT:
       %u", head, head->data, head->next);
       head=head->next;
       temp = head;
       count--;
       vnode();
       }
       else
       {
       temp = head;
       for(i = 1; i<=ch-2; i++)
       {
       temp = temp->next;
       }
       printf("\n NODE REMOVED! \n MAIN: %u  DATA: %d  NEXT:
       %u", temp->next, (temp->next)->data, (temp->next)->next);
       temp->next = (temp->next)->next;
       count--;
       vnode();
       }
       }
       *****************************************************
       Page 1 of 1