C Упражнения: создание и отображение кругового связного списка

Связанный список C: Упражнение 22 с решением

Напишите программу на C для создания и отображения кругового связного списка.

Наглядное представление:

Пример решения:

Код C:

  #include  #include  struct node {int num;  struct node * nextptr;} * stnode;  void ClListcreation (int n); void displayClList (); int main () {int n;  stnode = NULL; printf (" n  n Циклический связанный список: создание и отображение кругового связанного списка:  n"); printf ("-------------------  --------------------------------------------------  -  n ");  printf ("Введите количество узлов:");  scanf ("% d", & n);  ClListcreation (n);  displayClList ();  return 0;} void ClListcreation (int n) {int i, num;  struct node * preptr, * newnode;  если (n> = 1) {stnode = (struct node *) malloc (sizeof (struct node));  printf ("Входные данные для узла 1:");  scanf ("% d", & num);  stnode-> число = число;  stnode-> nextptr = NULL;  preptr = stnode;  for (i = 2; inum = num; newnode-> nextptr = NULL;//следующий адрес нового узла устанавливается как NULL preptr-> nextptr = newnode;//предыдущий узел связывается с новым узлом preptr = newnode;//предыдущий  узел расширен} preptr-> nextptr = stnode;//последний узел связывается с первым узлом}} void displayClList () {struct node * tmp; int n = 1; if (stnode == NULL) {printf ("Нет данных  в Списке еще не найден. ");} else {tmp = stnode; printf ("  n  n Данные, введенные в список:  n "); do {printf (" Data% d =% d  n ",  n, tmp-> num); tmp = tmp-> nextptr; n ++;} while (tmp! = stnode);}}  

Пример вывода:

 Круговой связанный список: создание и отображение кругового связного списка: -----------------------------------  ------------------------------------ Введите количество узлов: 3 Входные данные для узла 1: 2  Входные данные для узла 2: 5  Входные данные для узла 3: 8 Данные, введенные в список: Данные 1 = 2 Данные 2 = 5 Данные 3 = 8 

Блок-схема:

ClListcreation ():

displayClList ():

Практика Си онлайн:

Оцените статью
nanomode.ru
Добавить комментарий