Untitled

mail@pastecode.io avatarunknown
plain_text
a month ago
1.7 kB
0
Indexable
Never
#include<stdio.h>
#include<stdlib.h>
struct node
{
 int v;
 struct node* link;
 };
 void main()
 {
  struct node*pnode,*first,*pnode1,*f1;
  int n,i,num,pos;
  clrscr();
  printf("-------------insertion  to linked list by position");
  printf("\n \t enter the range:");
  scanf("%d",&n);
  pnode=NULL;
  for(i=0;i<n;i++)
  {
   if(pnode==NULL)
   {
    pnode=malloc(sizeof(struct node));
    printf("\n enter the value:");
    scanf("%d",&pnode->v);
    pnode->link=NULL;
    first=pnode;
   }
   else
   {
   pnode->link=malloc(sizeof(struct node));
   printf("\t enter the value:");
   scanf("%d",&pnode ->link ->v);
   pnode=pnode->link;
   pnode->link=NULL;
   }
  }
  printf("\n \t list is:");
  pnode=first;
  while(pnode!=NULL)
  {
   printf("%d->",pnode->v);
   pnode=pnode->link;
  }
  printf("NULL");
  printf("\n \n \tenter the position to be inserted:");
  scanf("%d",&pos);
  pnode=first;
  for(i=1;i<=n;i++)
  {
   if(i==pos)
   {
    while(pnode!=NULL)
    {
     if(pnode==first)
     {
      f1=malloc(sizeof(struct node));
      printf("\t enter the value to be inserted:");
      scanf("%d",&f1->v);
      f1->link=first;
      first=f1;
      break;
     }
    else
    {
     pnode1->link=malloc(sizeof(struct node));
     printf("\t enter the new value to be inserted:");
     scanf("%d",&pnode1->link->v);
     pnode1->link->link=pnode;
     break;
     }
    }
   }
   else
   {
    pnode1=pnode;
    pnode=pnode->link;
   }
  }
   printf("\n \tthen update linkedlist is:");
   pnode=first;
   while(pnode!=NULL)
   {
    printf("NULL");
    getch();
   }
  }