0% found this document useful (0 votes)
44 views3 pages

Write A Program in C To Create and Display Singly Linked List

This document discusses creating and displaying a singly linked list in C. It provides sample code to define a node struct with data and next pointer fields, declare head and current pointer variables, define functions to insert nodes and print the list, and a main function that inserts sample data and calls printList. The output shows the list with nodes in descending order due to insertion at the head.

Uploaded by

Michal Townly
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
44 views3 pages

Write A Program in C To Create and Display Singly Linked List

This document discusses creating and displaying a singly linked list in C. It provides sample code to define a node struct with data and next pointer fields, declare head and current pointer variables, define functions to insert nodes and print the list, and a main function that inserts sample data and calls printList. The output shows the list with nodes in descending order due to insertion at the head.

Uploaded by

Michal Townly
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Singly Linked List.

Write a program in C to create and display Singly Linked


List.
Pictorial Presentation:

Sample Solution:
#include <stdio.h>
#include <stdlib.h>

struct node {
int data;
struct node *next;
};

struct node *head = NULL;


struct node *current = NULL;
//display the list
void printList() {

struct node *ptr = head;

printf("\n[head] =>");
//start from the beginning
while(ptr != NULL) {
printf(" %d =>",ptr->data);
ptr = ptr->next;
}

printf(" [null]\n");
}

//insert link at the first location


void insert(int data) {
//create a link
struct node *link = (struct node*)
malloc(sizeof(struct node));

//link->key = key;
link->data = data;

//point it to old first node


link->next = head;

//point first to new first node


head = link;
}

int main() {
insert(10);
insert(20);
insert(30);
insert(1);
insert(40);
insert(56);

printList();
return 0;
}

Output
Output of the program should be −
[head] => 56 => 40 => 1 => 30 => 20 => 10
=> [null]

You might also like