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

проблема с выводом списка - C++

Восстановить пароль Регистрация
 
артем271293
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 20
11.05.2012, 13:27     проблема с выводом списка #1
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
struct magazin
{   int nomer;
char nazvanie[100];
char fio[100];
int kol;
double dohod;
magazin *prev,*next;
magazin *pt,*pg;
}
*pg=NULL;
magazin *pr=NULL;
magazin *pt=NULL;
magazin *pbeg;
magazin *pend=NULL;
magazin *first(void){int d;
char c[20];
magazin *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->next=0;pt->prev=0;return pt;}
void add(void)
{       while(true)
{int b,d;
char c[20];
cout<<"1-ввод данных,0-выход"<<endl;
cin>>b;
if(b==0)break;
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->next=NULL;
pt->prev=pend;
pend->next=pt;
pend=pt;
}}
void print()
{   int i=1;
magazin *p1=pbeg;
while (p1)
    {
        cout<<i<<"-ая запись"<<endl;
        cout<<"магазин №"<<p1->nomer<<endl;
cout<<"название магазина: "<<p1->nazvanie<<endl;
cout<<"ФИО директора: "<<p1->fio<<endl;
cout<<"количество сотрудников: "<<p1->kol<<endl;
cout<<"доход:"<<p1->dohod<<endl;
i++;
p1=p1->next;}
void main()
    {
        int a,b,k;
        k=1;
        while (k){
        setlocale(LC_ALL,"Russian");
        cout<<"1:заполнение списка с начала"<<endl;
        cout<<"2:вставка элемента(с консоли) в список"<<endl;
        cout<<"3:вставка элементов(из файла) в список"<<endl;
        cout<<"4:удаление элемента"<<endl;
        cout<<"5:очистка списка(с выводом удаляемых элементов)"<<endl;
        cout<<"6:вывод элементов,содержашихся в списке"<<endl;
        cout<<"7:вывод количества элементов в списке"<<endl;
        cout<<"8:выход"<<endl;
        cin>>a;
        switch(a){
        case 1 : {cout<<"1:c консоли"<<endl;                                 
                 cout<<"2:из файла"<<endl;
                 cin>>b;
                 if(b==1){magazin *pbeg=first(); pend=pbeg; add();}
                 break;}
        case 2 : {cout<<"1:в конец списка"<<endl;                                 
                 cout<<"2:вслед за указанным элементом"<<endl;
                 cin>>b;
                 if(b==1){add1();}break;}
        case 3 : {cout<<"1:в конец списка"<<endl;
                 cout<<"2:вслед за указанным элементом"<<endl;break;}
        case 4 : {cout<<"1:из конца списка"<<endl;
                 cout<<"2:по ключу"<<endl;break;}
        case 5 : {cout<<"1:безвозвратно"<<endl;                               
                
                 cout<<"2:с сохранением в файл"<<endl;
                                 cin>>b;
                 if(b==1) del();
                 break;}
        case 6 : {cout<<"1:на экран"<<endl;                                 
                 cout<<"2:в файл"<<endl;
                 cin>>b;
                 if(b==1) print();
                 break;
                 }
        case 7 : {elem();break;}                                                  
        case 8 : {k=0;break;}                                                  
             
        }}
        
        system("pause");
}
сначала magazin *pbeg=first(), а в функции print() pbeg уже равен 0,подскажите почему!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2012, 13:27     проблема с выводом списка
Посмотрите здесь:

Структура и класс string. Проблема с выводом строки. C++
Проблема с вводом-выводом из файлов C++
Проблема с выводом строки C++
C++ Проблема с выводом
C++ Проблема с выводом bitmap-ов на принтер...
Проблема с выводом строк C++
C++ Проблема с выводом кириллицы на экран
C++ Проблема с выводом времени

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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