Untitled
unknown
plain_text
2 years ago
1.7 kB
9
Indexable
#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();
}
}
Editor is loading...