Составители:
Рубрика:
2.4. Реализация алгоритмов работы с односвязным списком 29
функций для работы с ним. Заметим, что в некоторых функциях ре-
ализуются только основные идеи. Для получения практических вари-
антов программ необходимо добавить некоторые проверки на пустоту
или на окончание списка.
Функция ввода m элементов списка
# include<iostream.h>
struct node{char fam[20]; int n; node *link;};
node* create()
{
int m, i;
node *first, *q;
cin>>m; //вводим количество элементов списка
first=NULL; //пока нет элементов
for(i=0; i<m; i++) //в цикле считываем все данные
{
q=new node; //выделяем память под узел
cin>>q->fam; //считываем фамилию
cin>>q->n; //считываем номер
q->link=first; //ссылку на следующий элемент
//направляем туда, куда
//раньше указывал first,
first = q; //а first на новый элемент
}
return first; //возвращаем указатель на
//первый элемент в списке
}
Рис. 2.18
2.4. Реализация алгоритмов работы с односвязным списком 29 функций для работы с ним. Заметим, что в некоторых функциях ре- ализуются только основные идеи. Для получения практических вари- антов программ необходимо добавить некоторые проверки на пустоту или на окончание списка. Функция ввода m элементов списка # includestruct node{char fam[20]; int n; node *link;}; node* create() { int m, i; node *first, *q; cin>>m; //вводим количество элементов списка first=NULL; //пока нет элементов for(i=0; i >q->fam; //считываем фамилию cin>>q->n; //считываем номер q->link=first; //ссылку на следующий элемент //направляем туда, куда //раньше указывал first, first = q; //а first на новый элемент } return first; //возвращаем указатель на //первый элемент в списке } Рис. 2.18
Страницы
- « первая
- ‹ предыдущая
- …
- 27
- 28
- 29
- 30
- 31
- …
- следующая ›
- последняя »