Circular linked list in C++ program

C Exercises: Create and display a circular linked list

Last update on February 26 2020 08:07:27 (UTC/GMT +8 hours)

C Linked List : Exercise-22 with Solution

Write a program in C to create and display a circular linked list.

Pictorial Presentation:


Sample Solution:

C Code:

#include <stdio.h> #include <stdlib.h> struct node { int num; struct node * nextptr; }*stnode; void ClListcreation(int n); void displayClList(); int main() { int n; stnode = NULL; printf("\n\n Circular Linked List : Create and display a circular linked list :\n"); printf("-----------------------------------------------------------------------\n"); printf(" Input the number of nodes : "); scanf("%d", &n); ClListcreation(n); displayClList(); return 0; } void ClListcreation(int n) { int i, num; struct node *preptr, *newnode; if(n >= 1) { stnode = (struct node *)malloc(sizeof(struct node)); printf(" Input data for node 1 : "); scanf("%d", &num); stnode->num = num; stnode->nextptr = NULL; preptr = stnode; for(i=2; i<=n; i++) { newnode = (struct node *)malloc(sizeof(struct node)); printf(" Input data for node %d : ", i); scanf("%d", &num); newnode->num = num; newnode->nextptr = NULL; // next address of new node set as NULL preptr->nextptr = newnode; // previous node is linking with new node preptr = newnode; // previous node is advanced } preptr->nextptr = stnode; //last node is linking with first node } } void displayClList() { struct node *tmp; int n = 1; if(stnode == NULL) { printf(" No data found in the List yet."); } else { tmp = stnode; printf("\n\n Data entered in the list are :\n"); do { printf(" Data %d = %d\n", n, tmp->num); tmp = tmp->nextptr; n++; }while(tmp != stnode); } }

Sample Output:

Circular Linked List : Create and display a circular linked list : ----------------------------------------------------------------------- Input the number of nodes : 3 Input data for node 1 : 2 Input data for node 2 : 5 Input data for node 3 : 8 Data entered in the list are : Data 1 = 2 Data 2 = 5 Data 3 = 8

Flowchart:


ClListcreation() :


displayClList() :


C Practice online:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a program in C to find the maximum value from a doubly linked list.
Next: Write a program in C to insert a node at the beginning of a circular linked list.

What is the difficulty level of this exercise?

Easy Medium Hard


C Programming: Tips of the Day

What is the unsigned datatype?

unsigned really is a shorthand for unsigned int, and so defined in standard C.

Ref : //bit.ly/3CUXTUy

  • New Content published on w3resource:
  • Scala Programming Exercises, Practice, Solution
  • Python Itertools exercises
  • Python Numpy exercises
  • Python GeoPy Package exercises
  • Python Pandas exercises
  • Python nltk exercises
  • Python BeautifulSoup exercises
  • Form Template
  • Composer - PHP Package Manager
  • PHPUnit - PHP Testing
  • Laravel - PHP Framework
  • Angular - JavaScript Framework
  • Vue - JavaScript Framework
  • Jest - JavaScript Testing Framework

Video liên quan

Chủ đề