Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 21.09.2013
Сообщений: 30

Добавить элемент в конец односвязного списка

28.02.2014, 15:07. Показов 2459. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Поправьте, пожалуйста, что не так с функцией Add_end.(остальное работает)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include <iostream>
#include <conio.h>
 
using namespace std;
 
struct A
{
    int key;
};
 
struct List
{
    A a;
    List* next;
};
 
void Print(List *b)
{
    List *print = b;
    while (print)
    {
        cout << print->a.key << " -> ";
        print = print->next;
    }
    cout << "NULL\n";
}
 
void Init(List **begin)
{
    *begin = new List;
    A a[5] = { 43, 56, 78, 100, 511 };
    (*begin)->a.key = 20;
    (*begin)->next = NULL;
    List *end = *begin;
 
    for (int i = 0; i < 5; i++)
    {
        end->next = new List;
        end = end->next;
        end->a = a[i];
        end->next = NULL;
    }
}
 
void Add_begin(List **begin, const A &a)
{
    List *t = new List; 
    t->a = a;
    t->next = *begin;
    *begin = t;
}
 
void Add_end(List **begin, const A &a)
{
    List *t = new List;
    for (t=*begin; t->next; t = t->next);
    t->a=a;
    t=t->next;
    t->next=NULL;
    
}
 
int main()
{
    setlocale(LC_ALL ,"russian");
    List*begin = NULL;
    A a = { -12 };
 
    Init(&begin);
    Print(begin);
    Add_end(&begin,a);
    Print(begin);
 
    _getch();
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.02.2014, 15:07
Ответы с готовыми решениями:

Добавить элемент в конец списка
написал две функции, add заполняет список, а функция add1 добавляет элемент в конец списка, помогите разобраться с функцией add1 void...

Как добавить новый элемент в конец списка?
ребят, есть код добавления элемента в начало списка, но никак не могу допетрить , как добавить в конец помогите пожалуйста!!! void...

Добавление в конец односвязного списка
Не получается написать эту функцию.Добавление в начало более тривиально.Сам список представлен так. Насколько я знаю,нужно 2 случая...

1
128 / 126 / 60
Регистрация: 22.01.2014
Сообщений: 464
28.02.2014, 17:48
Если остальное работает, то попробуй:
C
1
2
3
4
5
6
7
8
void Add_end(List **begin, const A &a)
{
    List *t,*newt = new List;
    for (t=*begin; t->next; t = t->next);
    newt->a=a;
    newt->next=NULL;
    t->next=newt;
}
Только, не нужно ли на NULL проверять, если список пустой?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.02.2014, 17:48
Помогаю со студенческими работами здесь

Не работает добавление в конец односвязного списка
работаю с формой, рисую там различные объекты, которые надо добавлять в собственное хранилище(такое задание) вот отрывок кода из header...

Вставка элемента в конец односвязного списка
Добрый день! Подскажите как вставить в конец списка. В моем варианте вставляется в начало. List *temp = new List; ...

Добавление объекта в конец односвязного списка
необходимо добавить объект в конец списка. как это сделать с помощью моей функции #include &lt;iostream&gt; #include &lt;conio.h&gt; ...

Добавление элемента в конец односвязного списка
Добрый день. Помогите решить проблему с ошибкой в функции AddItem. CPP файл #include &quot;stdafx.h&quot; #include...

Добавление элемента в конец односвязного списка - ошибка
Всем привет! Собственно, задача такая: написать функцию, добавляющую элемент в конец связного списка. Вроде всё правильно,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru