In this tutorial, We will explain how to write linked list program in c programming language with example.
Linked lists are the best and simplest solution of a dynamic data structure which uses pointers for its implementation to arrange the dynamically allocated nodes.
At the end of this program, we have shared the real-time output of this program. Copy below program and execute it with the help of C compiler.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | #include <stdio.h> #include <stdlib.h> struct node { int num; struct node *nextptr; }*stnode; void createNodeList(int n); void displayList(); int main() { int n; printf("\n\n Linked List : To create and display Singly Linked List :\n"); printf("-------------------------------------------------------------\n"); printf(" Input the number of nodes : "); scanf("%d", &n); createNodeList(n); printf("\n Data entered in the list : \n"); displayList(); return 0; } void createNodeList(int n) { struct node *fnNode, *tmp; int num, i; stnode = (struct node *)malloc(sizeof(struct node)); if(stnode == NULL) { printf(" Memory can not be allocated."); } else { // reads data for the node through keyboard printf(" Input data for node 1: "); scanf("%d", &num); stnode->num = num; stnode->nextptr = NULL; tmp = stnode; // Creating n nodes and adding to linked list for(i=2; i<=n; i++) { fnNode = (struct node *)malloc(sizeof(struct node)); if(fnNode == NULL) { printf(" Memory can not be allocated."); break; } else { printf("Input data for node %d: ", i); scanf(" %d", &num); fnNode->num = num; fnNode->nextptr = NULL; tmp->nextptr = fnNode; tmp = tmp->nextptr; } } } } void displayList() { struct node *tmp; if(stnode == NULL) { printf(" List is empty."); } else { tmp = stnode; while(tmp != NULL) { printf(" Data = %d\n", tmp->num); tmp = tmp->nextptr; } } } |
Below is the output of above program.
Linked List : To create and display Singly Linked List :
————————————————————-
Input the number of nodes: 5
Input data for node 1: 15
Input data for node 2: 25
Input data for node 3: 10
Input data for node 4: 5
Input data for node 5: 20
Data entered in the list:
Data = 5
Data = 10
Data = 15
Data = 20
Data = 25
If you like FreeWebMentor and you would like to contribute, you can write an article and mail your article to [email protected] Your article will appear on the FreeWebMentor main page and help other developers.
Article Tags: C Linked List, c program to insert a node at the end in linked list, Inserting a new node in a linked list in C, insertion in linked list in c, Linked List Data Structure, linked list implementation in c, linked list program in c with explanation, Linked lists in C, Singly linked list