Упражнения по программированию на C, практика, решение: связанный список

Связанный список C [30 упражнений с решением]

1. Напишите программу на языке C для создания и отображения односвязного списка. Переходим в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 5
Входные данные для узла 2: 6
Входные данные для узла 3: 7
Ожидаемый результат :

 Данные, введенные в список: Data = 5 Data = 6 Data =  7 

Щелкните меня, чтобы увидеть решение

2. Напишите программу на языке C, чтобы создать односвязный список из n узлов и отобразить его в обратном порядке. Переходим в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 5
Входные данные для узла 2: 6
Входные данные для узла 3: 7
Ожидаемый результат :

 Данные, введенные в список: Data = 5 Data = 6 Data  = 7 Список в обратном порядке: Data = 7 Data = 6 Data = 5 

Щелкните меня, чтобы увидеть решение

3. Напишите программу на языке C, чтобы создать односвязный список из n узлов и подсчитать количество узлов. Переходим в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 5
Входные данные для узла 2: 6
Входные данные для узла 3: 7
Ожидаемый результат :

 Данные, введенные в список: Data = 5 Data = 6 Data  = 7 Общее количество узлов = 3 

Щелкните меня, чтобы увидеть решение

4. Напишите программу на языке C, чтобы вставить новый узел в начало односвязного списка. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 5 Входные данные для  узел 2: 6 Входные данные для узла 3: 7 Данные, введенные в список: Data = 5 Data = 6 Data = 7 Входные данные для вставки в начало списка: 4 Данные после вставки в список: Data = 4  Data = 5 Data = 6 Data = 7 

Щелкните меня, чтобы увидеть решение

5. Напишите программу на языке C, чтобы вставить новый узел в конец односвязного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 5 Входные данные для  узел 2: 6 Входные данные для узла 3: 7 Данные, введенные в список: Data = 5 Data = 6 Data = 7 Входные данные для вставки в конец списка: 8 Данные, после вставки в список: Data =  5 Data = 6 Data = 7 Data = 8 

Щелкните меня, чтобы увидеть решение

6. Напишите программу на языке C, чтобы вставить новый узел в середину односвязного списка. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов (3 или более): 4 Введите данные для узла 1  : 1 Входные данные для узла 2: 2 Входные данные для узла 3: 3 Входные данные для узла 4: 4 Данные, введенные в список: Data = 1 Data = 2 Data = 3 Data = 4 Входные данные для вставки в середину  список: 5 Введите позицию для вставки нового узла: 3 Вставка успешно завершена.  Новый список: Data = 1 Data = 2 Data = 5 Data = 3 Data = 4 

Щелкните меня, чтобы увидеть решение

7. Напишите программу на языке C для удаления первого узла односвязного списка. Перейдите в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 2
Входные данные для узла 2: 3
Входные данные для узла 3: 4
Ожидаемый результат :

 Данные, введенные в список: Data = 2 Data = 3 Data  = 4 Данные удаляемого узла 1: 2 Данные после удаления первого узла: Data = 3 Data = 4 

Щелкните меня, чтобы увидеть решение

8. Напишите программу на языке C для удаления узла из середины односвязного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: Data = 2 Data = 5 Data = 8 Введите позицию узла для удаления: 2 Удаление успешно завершено.  Новый список: Data = 2 Data = 8 

Щелкните меня, чтобы увидеть решение

9. Напишите программу на языке C, чтобы удалить последний узел односвязного списка. Перейдите в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 1
Входные данные для узла 2: 2
Входные данные для узла 3: 3
Ожидаемый результат :

 Данные, введенные в список: Data = 1 Data = 2 Data  = 3 Новый список после удаления последнего узла: Data = 1 Data = 2 

Щелкните меня, чтобы увидеть решение

10. Напишите программу на языке C для поиска существующего элемента в односвязном списке. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: Data = 2 Data = 5 Data = 8 Введите элемент для поиска: 5 Элемент найден в узле 2 

Щелкните мне, чтобы увидеть решение

11. Напишите программу на языке C для создания и отображения двусвязного списка.. Перейдите в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 2
Входные данные для узла 2: 5
Входные данные для узла 3: 8
Ожидаемый результат :

 Данные, введенные в список: узел 1: 2 узел 2:  5 узел 3: 8 

Щелкните меня, чтобы увидеть решение

12. Напишите программу на языке C для создания двусвязного списка и отображения в обратном порядке. Перейдите в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 2
Входные данные для узла 2: 5
Входные данные для узла 3: 8
Ожидаемый результат :

 Данные в обратном порядке: Данные в узле 1: 8 Данные в  узел 2: 5 Данные в узле 3: 2 

Щелкните меня, чтобы увидеть решение

13. Напишите программу на языке C, чтобы вставить новый узел в начало двусвязного списка. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: узел 1: 2 узел 2: 5 узел 3: 8 Входные данные fo  r первый узел: 1 После вставки новый список: узел 1: 1 узел 2: 2 узел 3: 5 узел 4: 8 

Щелкните меня, чтобы увидеть решение

14. Напишите программу на языке C, чтобы вставить новый узел в конец двусвязного списка. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: узел 1: 2 узел 2: 5 узел 3: 8 Входные данные для  последний узел: 9 После вставки новый список: узел 1: 2 узел 2: 5 узел 3: 8 узел 4: 9 

Щелкните меня, чтобы увидеть решение

15.

Напишите программу на языке C для вставки нового узла в любую позицию двусвязного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов (3 или более): 3 Введите данные для узла 1  : 2 Входные данные для узла 2: 4 Входные данные для узла 3: 5 В список введены следующие данные: узел 1: 2 узел 2: 4 узел 3: 5  Введите позицию (от 2 до 2) для вставки нового узла: 2 Входные данные для позиции 2: 3 После вставки новый список: узел 1: 2 узел 2: 3 узел 3: 4 узел 4: 5 

Щелкните меня, чтобы увидеть решение

16. Напишите программу на языке C, чтобы вставить новый узел в середину двусвязного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Двусвязный список: вставьте новый узел в середину двусвязного списка: -  --------------------------------------------------  ------------------------------- Введите количество узлов (3 или более): 3 Входные данные для узла 1: 2  Входные данные для узла 2: 4 Входные данные для узла 3: 5 В список введены следующие данные: узел 1: 2  узел 2: 4 узел 3: 5 Введите позицию (от 2 до 2) для вставки нового узла: 2 Введите данные для позиции 2: 3 После вставки новый список: узел 1: 2 узел 2: 3 узел 3: 4  узел 4: 5 

Щелкните мне, чтобы увидеть решение

17. Напишите программу на языке C для удаления узла из начала двусвязного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов (3 или более): 3 Введите данные для узла 1  : 1 Входные данные для узла 2: 2 Входные данные для узла 3: 3 В список введены следующие данные: узел 1: 1 узел 2: 2 узел 3: 3  После удаления новый список: узел 1: 2 узел 2: 3 

Щелкните меня, чтобы увидеть решение

18. Напишите программу на языке C, чтобы удалить узел из последнего в двусвязном списке.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов (3 или более): 3 Введите данные для узла 1  : 1 Входные данные для узла 2: 2 Входные данные для узла 3: 3 В список введены следующие данные: узел 1: 1 узел 2: 2 узел 3: 3  После удаления новый список: узел 1: 1 узел 2: 2 

Щелкните меня, чтобы увидеть решение

19. Напишите программу на языке C для удаления узла из любой позиции двусвязного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Двусвязный список: удалите узел из любой позиции двусвязного списка: -  --------------------------------------------------  ------------------------------ Введите количество узлов (3 или более): 3 Входные данные для узла 1: 1 Вход  данные для узла 2: 2 Входные данные для узла 3: 3 В список введены следующие данные: узел 1: 1  узел 2: 2 узел 3: 3 Введите позицию (от 1 до 3) для удаления узла: 3 После удаления новый список: узел 1: 1 узел 2: 2 

Щелкните меня, чтобы увидеть решение

20. Напишите программу на языке C для удаления узла из середины двусвязного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов (3 или более): 3 Введите данные для узла 1  : 1 Входные данные для узла 2: 2 Входные данные для узла 3: 3 В список введены следующие данные: узел 1: 1 узел 2: 2 узел 3: 3  Введите позицию (от 1 до 3) для удаления узла: 2 После удаления новый список: узел 1: 1 узел 2: 3 

Щелкните меня, чтобы увидеть решение

21. Напишите программу на языке C, чтобы найти максимальное значение из двусвязного списка. Переходим в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 5
Входные данные для узла 2: 9
Входные данные для узла 3: 1
Ожидаемый результат :

 В список введены следующие данные: узел 1: 5 узел 2:  9 узел 3: 1 Максимальное значение в связанном списке: 9 

Щелкните меня, чтобы увидеть решение

22. Напишите программу на языке C для создания и отображения кругового связного списка.. Переходим в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 2
Входные данные для узла 2: 5
Входные данные для узла 3: 8
Ожидаемый результат :

 Данные, введенные в список: Данные 1 = 2 Данные 2 =  5 Данные 3 = 8 

Щелкните меня, чтобы увидеть решение

23. Напишите программу на языке C, чтобы вставить узел в начало кругового связного списка. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: Данные 1 = 2 Данные 2 = 5 Данные 3 = 8 Входные данные для  быть вставленным в начале: 1 После вставки новый список: Данные 1 = 1 Данные 2 = 2 Данные 3 = 5 Данные 4 = 8 

Щелкните меня, чтобы увидеть решение

24. Напишите программу на языке C, чтобы вставить узел в конец кругового связного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: Данные 1 = 2 Данные 2 = 5 Данные 3 = 8 Введите данные  для вставки: 9 После вставки новый список: Данные 1 = 2 Данные 2 = 5 Данные 3 = 8 Данные 4 = 9 

Щелкните меня, чтобы увидеть решение

25.

Напишите программу на языке C, чтобы вставить узел в любую позицию в круговом связном списке.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: Данные 1 = 2 Данные 2 = 5 Данные 3 = 8 Введите позицию  ция для вставки нового узла: 3 Входные данные для позиции 3: 7 После вставки новый список: Данные 1 = 2 Данные 2 = 5 Данные 3 = 7 Данные 4 = 8 

Щелкните меня чтобы увидеть решение

26. Напишите программу на языке C для удаления узла из начала кругового связного списка.. Переходим в редактор
Тестовые данные:
Введите количество узлов: 3
Входные данные для узла 1: 2
Входные данные для узла 2: 5
Входные данные для узла 3: 8
Ожидаемый результат :

 Данные, введенные в список: Данные 1 = 2 Данные 2 =  5 Данные 3 = 8 Удаленный узел -> 2 После удаления новый список: Данные 1 = 5  Данные 2 = 8 

Щелкните меня, чтобы увидеть решение

27. Напишите программу на языке C для удаления узла из середины кругового связного списка. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: Данные 1 = 2 Данные 2 = 5 Данные 3 = 8  Введите позицию для удаления узла: 3 Удаленный узел: 8 После удаления новый список: Данные 1 = 2 Данные 2 = 5 

Щелкните меня, чтобы увидеть решение

28. Напишите программу на языке C, чтобы удалить узел в конце кругового связного списка.. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для  узел 2: 5 Входные данные для узла 3: 8 Данные, введенные в список: Данные 1 = 2 Данные 2 = 5 Данные 3 = 8  Удаленный узел: 8 После удаления новый список: Данные 1 = 2 Данные 2 = 5 

Щелкните меня, чтобы увидеть решение

29. Напишите программу на языке C для поиска элемента в круговом связном списке. Перейдите в редактор
Тестовые данные и ожидаемый результат :

 Циклический связанный список: поиск элемента в циклическом связанном списке: ----  --------------------------------------------------  ------------------- Введите количество узлов: 3 Входные данные для узла 1: 2 Входные данные для узла 2: 5 Входные данные для узла 3: 9 Данные, введенные в  список: Данные 1 = 2 Данные 2 = 5  Данные 3 = 9 Введите элемент, который вы хотите найти: 5 Элемент, найденный в узле 2 

Щелкните меня, чтобы увидеть решение

30. Напишите программу на C, чтобы отсортировать данный связанный список пузырьковой сортировкой.. Перейдите в редактор
Тестовые данные и ожидаемый результат : 5
15
33
49
6
65

 Ввести количество элементов в связанном списке?  Введите элементы в связанный список: Порядок сортировки: 615334965 

Щелкните меня, чтобы увидеть решение

Редактор кода программирования на C:

Еще впереди!

Не отправляйте никаких Решение вышеуказанных упражнений здесь, если вы хотите внести свой вклад, перейдите на соответствующую страницу упражнений.

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