Форум программистов, компьютерный форум CyberForum.ru

Добавить элемент в конец списка - C++

Восстановить пароль Регистрация
 
артем271293
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 20
30.04.2012, 13:10     Добавить элемент в конец списка #1
написал две функции, add заполняет список, а функция add1 добавляет элемент в конец списка, помогите разобраться с функцией add1
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
void add1(void)
{pt=new magazin;
    int d;
    
    while (true){
    if (pg->next==NULL) break;
    pg=pg->next;
    }
    pt=pg;
 
cout<<"введите номер"<<endl;
cin>>d;
pt->nomer=d;
cout<<"введите доход"<<endl;
cin>>d;
pt->dohod=d;
cout<<"введите название"<<endl;
cin.ignore();
scanf("%s",&pt->nazvanie);
cout<<"введите фио директора"<<endl;
scanf("%s",&pt->fio);
cout<<"введите количество сотрудников"<<endl;
cin>>d;
pt->kol=d;
pt->prev=pg;
while(true){if(pg->prev==NULL)break;
pg=pg->prev;}
}
 
 
 
void add(void)
{while(true)
{int d,b;
char c[20];
cout<<"1-ввод данных,0-выход"<<endl;
cin>>b;
if(b==0)return;
pt=new magazin;
cout<<"введите номер"<<endl;
cin>>d;
pt->nomer=d;
cout<<"введите доход"<<endl;
cin>>d;
pt->dohod=d;
cout<<"введите название"<<endl;
cin.ignore();
scanf("%s",&pt->nazvanie);
cout<<"введите фио директора"<<endl;
scanf("%s",&pt->fio);
cout<<"введите количество сотрудников"<<endl;
cin>>d;
pt->kol=d;
pt->prev=pg;
pr=pg;
pg=pt;
pg->next=pr;
}pg->next=NULL;
while(true){if(pg->prev==NULL)break;
pg=pg->prev;}}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.04.2012, 13:10     Добавить элемент в конец списка
Посмотрите здесь:

Переместить элемент в конец списка и вывести указатели на первый и последний элементы C++
Добавить в конец списка L1 все элементы списка L2 C++
C++ Удалить из списка элемент с заданным номером и добавить элементфы, начиная с заданного номера.
C++ Добавить элемент в конец односвязного списка
C++ Как добавить новый элемент в конец списка?
Как добавить элемент в конец массива и расширить его на одну позицию? C++
C++ Получить указатель на элемент двунаправленного списка, добавить значение в начало списка и очистить его
C++ Добавить после каждого положительного элемента списка нулевой элемент

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
30.04.2012, 14:12     Добавить элемент в конец списка #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void add1(void)
{
  magazine* pg = pointer_to_head_of_the_list;
  // pg - указыает на начало списка. нужно до последнего узла добраться.
  while (pg->next != NULL)
  {
    pg = pg->next;
  }
 
  magazine pt = new magazin;
 
  // теперь нужно приделать новый узел к списку:
  pg->next = pt;
  pt->prev = pg;
 
  // Готово. Новый узел вставлен.
  // Там после этого еще куча какого-то кода. Что он делает я не смотрел.
Yandex
Объявления
30.04.2012, 14:12     Добавить элемент в конец списка
Ответ Создать тему
Опции темы

Текущее время: 15:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru