Составители:
18
åñëè base ñîäåðæèò àäðåñ ôîðìèðóåìîãî ýëåìåíòà ñïèñêà.
Íèæåïðèâåäåííàÿ ïðîãðàììà ôîðìèðóåò ëèíåéíûé ñïèñîê èç ïîñëå-
äîâàòåëüíîñòè çàïèñåé òåêñòîâîãî ôàéëà.
void main()
{
struct list{ //òèï ýëåìåíòà ñïèñêà
char *inf;
struct list *link;
}
FILE *f;
struct list *first, *base, *r;
f=fopen("file.txt","r") //ôàéë ñ äàííûìè äëÿ ñïèñêà
first=new stuct list; //îòâåäåíèå ïàìÿòè äëÿ ïåðâîãî ýëåìåíòà ñïèñêà
base=first; r=base;
while( !feof(f)) {
base>inf=new char [5]; // çàïîëíåíèå èíôîðìàöèîííîãî
fgets(base>inf,5,f,); // ïîëÿ ýëåìåíòà ñïèñêà
base>link=new struct list; //îòâåäåíèå ïàìÿòè äëÿ î÷åðåäíîãî ýëå-
ìåíòà è çàïîëíåíèå //ïîëÿ óêàçàòåëÿ ïðåäûäóùåãî ýëåìåíòà ñïèñêà
r=base;
base=base>link; //ïåðåìåùåíèå òåêóùåãî óêàçàòåëÿ íà ñëåäóþùèé
ýëåìåíò ñïèñêà
};
delete base; //îñâîáîæäåíèå íàïðàñíî îòâåäåííîé ïàìÿòè
if (r!=first ) r>link=NULL; else first=NULL; //çàïîëíåíèå ïîëÿ óêà-
çàòåëÿ ïîñëåäíåãî //ýëåìåíòà ñïèñêà
}
2. Çàäàíèå íà ëàáîðàòîðíóþ ðàáîòó
Íàïèñàòü ïðîãðàììó ïîñòðîåíèÿ ëèíåéíîé ñïèñêîâîé ñòðóêòóðû,
ñîäåðæàùåé äàííûå ñèìâîëüíîãî òèïà, à òàêæå ïðîöåäóðó, ðåàëèçóþ-
ùóþ â ñîîòâåòñòâèè ñ âàðèàíòîì çàäàíèÿ îäíó èç îïåðàöèé íàä ñïèñ-
êîâîé ñòðóêòóðîé.
1. Âêëþ÷åíèå â ñïèñîê íîâîé çàïèñè ïîñëå çàïèñè ñ çàäàííûì
íîìåðîì k.
2. Óäàëåíèå èç ñïèñêà çàïèñè ñ çàäàííûì íîìåðîì k.
Страницы
- « первая
- ‹ предыдущая
- …
- 16
- 17
- 18
- 19
- 20
- …
- следующая ›
- последняя »