![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| niknor |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 21.4.2006 Где: РОССИЯ, Набережны е челны Репутация: нет Всего: нет |
При добавлении по указанному месту исчезает все сверху и до добавленной структуры
typedef struct Item{ int NomGr; char Data[15]; int NomAud; char Discip[12]; char Prepod[10]; }TItem; typedef struct Node{ TItem item; Node *link; }TNode, *TPNode; void dobvNach(TPNode &head)//Добавление в начало { if (head==NULL) { head=new TNode; head->link=NULL; rus("Введите Дату "); cin>>head->item.Data; rus("Введите Наименование Дисциплины "); cin>>head->item.Discip; rus("Введите Номер Аудитории "); cin>>head->item.NomAud; rus("Введите Номер Группы "); cin>>head->item.NomGr; rus("Введите ФИО Преподавателя "); cin>>head->item.Prepod; } else { TPNode prom; prom=head; head=new TNode; head->link=prom; rus("Введите Дату "); cin>>head->item.Data; rus("Введите Наименование Дисциплины "); cin>>head->item.Discip; rus("Введите Номер Аудитории "); cin>>head->item.NomAud; rus("Введите Номер Группы "); cin>>head->item.NomGr; rus("Введите ФИО Преподавателя "); cin>>head->item.Prepod; } } //&-для передачи в обратную сторону*/ void dobvKonec(TPNode &head) { TPNode pnext; if (head==NULL) { head=new TNode; head->link=NULL; rus("Введите Дату "); cin>>head->item.Data; rus("Введите Наименование Дисциплины "); cin>>head->item.Discip; rus("Введите Номер Аудитории "); cin>>head->item.NomAud; rus("Введите Номер Группы "); cin>>head->item.NomGr; rus("Введите ФИО Преподавателя "); cin>>head->item.Prepod; } else { pnext=head; while(pnext->link!=NULL) { pnext=pnext->link; } pnext->link=new TNode; pnext=pnext->link; pnext->link=NULL; rus("Введите Дату "); cin>>pnext->item.Data; rus("Введите Наименование Дисциплины "); cin>>pnext->item.Discip; rus("Введите Номер Аудитории "); cin>>pnext->item.NomAud; rus("Введите Номер Группы "); cin>>pnext->item.NomGr; rus("Введите ФИО Преподавателя "); cin>>pnext->item.Prepod; } } void Vese(TPNode &head) //ВВОД всего списка { rus("Введите количество записей "); int n; cin>>n; for(int i(0);i<n;i++) { dobvKonec(head); } } void dobvUkaz(TPNode &head) //Добавление в указанное место { TPNode prom; TPNode pnext; int n; rus("Введите номер записи"); cin>>n; pnext=head; for(int i(0);i<(n-1);i++) pnext=pnext->link; prom=pnext;//вот тут чего-то не то (наверное нету связи с предыдущим элементом) pnext=new TNode;//но не знаю как её сделать head->link=prom; rus("Введите Дату "); cin>>head->item.Data; rus("Введите Наименование Дисциплины "); cin>>head->item.Discip; rus("Введите Номер Аудитории "); cin>>head->item.NomAud; rus("Введите Номер Группы "); cin>>head->item.NomGr; rus("Введите ФИО Преподавателя "); cin>>head->item.Prepod; } void naEkran(TPNode &head)//Выводит на экран { TPNode pnext; pnext=head; while(pnext->link!=NULL) { rus("Датa "); cout<<pnext->item.Data<<endl; rus("Наименование Дисциплины "); cout<<pnext->item.Discip<<endl; rus("Номер Аудитории "); cout<<pnext->item.NomAud<<endl; rus("Номер Группы "); cout<<pnext->item.NomGr<<endl; rus("ФИО Преподавателя "); cout<<pnext->item.Prepod<<endl; pnext=pnext->link; } //вылетает без вывода последней rus("Датa ");//Вывод последней cout<<pnext->item.Data<<endl; rus("Наименование Дисциплины "); cout<<pnext->item.Discip<<endl; rus("Номер Аудитории "); cout<<pnext->item.NomAud<<endl; rus("Номер Группы "); cout<<pnext->item.NomGr<<endl; rus("ФИО Преподавателя "); cout<<pnext->item.Prepod<<endl; } void main() { TPNode head; head=NULL; Vese(head); //dobvNach(head); //dobvKonec(head); naEkran(head); dobvUkaz(head); naEkran(head); getch(); } |
|||
|
||||
| Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
С подсветкой плиз
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |