|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.04.2017, 08:55 | #1 |
Пользователь
Регистрация: 11.04.2017
Сообщений: 11
|
Односвязный список С++, структура Student
Добрый всем день, не могу разобраться с данной программой. На С++ и вообще программировании не специализируюсь, дали для общего образования. Односвязные списки в ступор ввели вообще, вот задание:
Создать структуру с именем Student с полями: фамилия, имя, номер группы, успеваемость (массив из пяти элементов). Сформировать односвязный список. Затем напечатать этот список в отсортированном по выбранному полю порядке. Затем удалить из списка информацию о тех студентах, у которых имеется по крайней мере две «2». И снова напечатать список. Прошу помочь, пожалуйста. |
11.04.2017, 09:18 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Покажите свои наработки, конкретные вопросы и т.п.
Или в раздел Фриланс если вы не хотите ничего делать, а ищете кого-то, кто выполнит ваши задачи за вознаграждение.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
11.04.2017, 09:27 | #3 |
Пользователь
Регистрация: 11.04.2017
Сообщений: 11
|
Вот мой код, то есть ступор у меня именно на том, чтобы удалить как раз этих студентов с 2-мя или более двойками. Не пойму.
Код:
|
11.04.2017, 09:53 | #4 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Чтобы в списке:
1.jpg удалить (для примера 2-й узел), нужно выполнить две операции: - непосредственное удаление (раз ты используешь "new", то и удалять нужно "delete"-м... но сначала нужен какой-то указатель на удаляемый узел). - переделка связи списка (организация новой связи). Как на картинке: 2.jpg ___________________________________ _____________________________ ___________________________________ _____________________________ Вот, что сделай: 1) Нарисуй свой список (как я сделал; с данными; если их много и неудобно представлять данные- можешь упростить свою структуру). 2) Выведи адрес в памяти (и сами данные) узла №2. Покажи скриншот консоли. Ты умеешь делать скриншоты? 3) Попробуй удалить 2-й экземпляр структуры у себя и вывести всего списка на экран. Скриншот. 4) В какой среде программируешь? |
11.04.2017, 09:59 | #5 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
И ещё одно, расскажи о "*head" что знаешь:
Что это такое? Его можно менять? Насколько он важен? Как переводиться с английского? |
17.04.2017, 07:26 | #6 |
Пользователь
Регистрация: 11.04.2017
Сообщений: 11
|
ura_111, Head - это голова списка, можно сказать нулевой элемент ( ну или первый ) . Задаёт начало списка.
Работаю в среде Dev C++, про рисунки немного не понял. Последний раз редактировалось Ossuary; 17.04.2017 в 07:28. |
17.04.2017, 08:09 | #7 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Так а в чем именно проблема? Надо просто проходить список в цикле и проверять значения, если элемент соответствует условию, то удалить его. Для удаления надо поменять указатель на следующий элемент (next) у предыдущего элемента (или присвоить новый head если это первый) + освободить память (delete).
Рисунки (ручкой на бумаге, или где вам удобно) могут помочь лучше понять А что с вводом (и выводом) успеваемости? Разве надо не 5 чисел вводить (в цикле)? А чего не фото монитора сразу? Из консоли вообще-то можно копировать текст.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Структура Student | Kiper_ | Общие вопросы C/C++ | 1 | 20.03.2014 05:12 |
структура с именем STUDENT | Alexandra777 | Помощь студентам | 3 | 09.05.2012 12:34 |
Необходимо реализовать классы, односвязный список для хранения целых чисел, односвязный список для хранен | lineico | Помощь студентам | 2 | 09.05.2011 17:45 |
структура STUDENT | hochy_ecshe | C# (си шарп) | 2 | 06.05.2011 00:30 |
структура STUDENT! | Jereme | Общие вопросы C/C++ | 2 | 17.01.2010 19:19 |