Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.06.2012, 18:19   #1
Noob(c++)
Пользователь
 
Регистрация: 19.06.2012
Сообщений: 25
По умолчанию Стеки

Ребята столкнулся с полнейшим непониманием стеков и связных списков, знаю что используются что то типо структуры :
Код:
int main()
{
OBJ *current = NULL;
int year;
char title[100], author[100];
do
{
printf("Введите название книги: ");
scanf("%s",title);
printf("Введите автора: ");
scanf("%s",author);
printf("Введите год издания: ");
scanf("%d",&year);
current = add_obj(title, author, year);
printf("Для выхода введите 'q'");
} while(scanf("%d", &year) == 1);
current = head;
while(current != NULL)
{
printf("Title: %s, author %s, year = %d\n",
current->lib.title, current->author.old, current->lib.year);
current = current->next;
}
while(head != NULL)
del_obj(head);
return 0;
}
это как я понял что-то типо базы данных, у меня есть задание : "Написать программу, реализующую стек с информацией о студентах и отображающую стек в порядке убывания возраста студента". Я вообще не понимаю как это реализовать по примеру того что я описал выше. Натолкните на мысль пожалуйста
Noob(c++) вне форума Ответить с цитированием
Старый 23.06.2012, 20:01   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Опиши структуру
Код:
struc stud{char FIO[100];int vozrast;} s[100];int head;
Далее внесение в стек
Код:
void push(char* v){
 if(head==100) return; 
 strcpy(*s[head++].FIO,v);
}
И изьятие из стека:
Код:
stud *pop(){
 if(!head) return 0;
 stud *ss=new stud;
 strcpy(*ss.FIO,*s[head--].FIO);
 return ss;
}
Ну и применение
Код:
// Ввод в стек
push("Васкез");push("Бригсон");push("Чачу");
// вывод из стека
for(int i=0;i<3;i++) {stud *sd=pop;printf("%s",*sd.FIO);delete sd;}
Вот таким способом и работай со стеком.
Ну а если сортировать то в цикле от 0 до head-1
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.06.2012, 08:09   #3
Noob(c++)
Пользователь
 
Регистрация: 19.06.2012
Сообщений: 25
По умолчанию

спасибо буду пробывать
Noob(c++) вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ стеки student12345 Общие вопросы C/C++ 0 10.12.2011 13:11
стеки ordinary_smile Общие вопросы C/C++ 1 27.11.2011 19:34
Стеки ильшат9 Паскаль, Turbo Pascal, PascalABC.NET 0 18.10.2011 18:43
стеки Veronik@ Общие вопросы C/C++ 1 20.05.2011 21:33
стеки ANGELO4EK Паскаль, Turbo Pascal, PascalABC.NET 1 16.03.2011 08:20