Insertion at beginning in Singly Linked list by R4R Team

Example-
Linked list : 2 3 4 5
After Insertion of 1 : 1 2 3 4 5

Insertion Function:

void insertion(int n)
{
struct node *ptr=NULL;
ptr=(struct node*)malloc(sizeof(struct node));
ptr->data=n;
ptr->link=first;
first=ptr;
}



program-

#include< stdio.h>
#include< conio.h>
#include< alloc.h>
struct node{
struct node *link;
int data;
};
struct node *first=NULL;

void traverse()
{
struct node *ptr=first;
while(ptr!=NULL){
printf("%d ",ptr->data);
ptr=ptr->link;
}
}
void insertion(int n)
{
struct node *ptr=NULL;
ptr=(struct node*)malloc(sizeof(struct node));
ptr->data=n;
ptr->link=first;
first=ptr;
}
void main()
{
struct node *cpt,*ptr;
int n;
char ch;
clrscr();
first=(struct node*)malloc(sizeof(struct node));
printf("Enter first element in Linklist\n");
scanf("%d",&first->data);
ptr=first;
do
{
cpt=(struct node*)malloc(sizeof(struct node));
printf("Enter another datan");
scanf("%d",&cpt->data);
ptr->link=cpt;
ptr=ptr->link;
printf("Continue(y/n) ?");
ch=getch();
}while(ch=='y');
ptr->link=NULL;
printf("Linklist isn");
traverse();
printf("Enter number to add in linklist at beginning\nn");
scanf("%d",&n);
insertion(n);
printf("Linklist After Insertionn");
traverse();
getch();
}


output-

Enter first element in Linked list
2
Enter another data
4
Continue(y/n)?
Enter another data
1
Continue(y/n) ?
Enter another data
9
Continue(y/n) ?
Enter another data
0
Continue(y/n) ?
Linklist is :
2 4 1 9 0
Enter number to add in linklist at beginning
5
Linklist After Insertion
5 2 4 1 9 0




Leave a Comment:
Search
Categories
R4R Team
R4Rin Top Tutorials are Core Java,Hibernate ,Spring,Sturts.The content on R4R.in website is done by expert team not only with the help of books but along with the strong professional knowledge in all context like coding,designing, marketing,etc!