![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Tur |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 2 Регистрация: 11.10.2009 Город: Великие Луки Вы: студент ![]() |
(IMG:style_emoticons/default/dribble.gif) Помогите! Не могу найти ошибку
Что-то с добавлением элементов,т.к. при выводе выводится только последний(повторяется взависимости от кол-ва введенных эл-тов) Вот код #include <iostream> #include <conio.h> using namespace std; struct stack { int *dat; stack *prev; }*top; stack *push (stack *to,int *data) { stack *uk=new stack; uk->prev = to; uk->dat = data; return uk; }; stack *pop(stack *to) {int *inf; inf=to->dat; cout<<*inf; stack *uk=to; to = to->prev; delete uk; return to; }; void *print(stack *to) { int *d; stack *uk=to; while (uk!=NULL) { d=uk->dat; uk=uk->prev; cout<<*d<<endl; } return d; }; int main () { int k; int a; int q; top=NULL; t:cout<<"Vvedite: 1-add;2-del;3-print"<<endl;cin>>k; switch(k) { case 1:{ cout<<"Vvedite element"<<endl; cin>>a; top=push(top,&a);};break; case 2:if (top==NULL) {cout<<"Stek pust"<<endl;getch();break;} else top=pop(top);break; case 3:if (top==NULL) {cout<<"Stek pust"<<endl;getch();break;} else print(top); break; } cout<<"Prodolgim"<<endl;cin>>q; if (q==2) goto t; return 0; } |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 25.5.2025, 19:31 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru