помогите снова)))написал структуру)))создал спискок пустой,теперь надо ,что бы вся информация которую мы вводили записывалась в списокбсортировалось,как мне это сделать правильно????
Код:
/ First_program.cpp : Defines the entry point for the console application.
//
//нужно создать динамическую структу,список,с удалением,редактированием
#include "stdafx.h"
#include <iostream>
#include <conio.h>
int const n=2;//объявил глобальную переменную,от которой зависит число поездов в моем списке
using namespace std;
struct TRAIN//объявил структуру
{
char name_punkt[20];//пункт назначения
int number_train;//номер поезда
int time_travel;//время отправления
TRAIN* next; //Ссылка на следущий элемент списка
};
struct dyn_list
{
TRAIN* head; // Первый элемент (голова) списка
TRAIN* tail; // Последний элемент (хвост) списка
};
// Создание пустого списка
void constr_list(dyn_list &l)
{
l.head = NULL;
}
// Проверка списка на пустоту
bool chk_empty(dyn_list l)
{
return (l.head==NULL);
}
// Включение в список нового компонента
void comp_in(dyn_list &l, char* n)
{
TRAIN* c = new TRAIN();
strcpy_s(c->name_punkt, 20, n);
//strcpy_s(c->number_train, 10, v);
c->next = NULL;
if (chk_empty(l))
l.head = c;
else
l.tail->next = c;
l.tail = c;
}
int _tmain()
{
int j,i,time=0;//переменные,которые использую
TRAIN poezda[n],tmp;//объявляю массив типа моей структуры
for(i=0;i<n;i++)//счетчик
{
cout<<"Vvedite nazvanie marshruta:\n";
cin>>poezda[i].name_punkt;
cout<<"Vvedite nomer poezda:\n";
cin>>poezda[i].number_train;
cout<<"Vvedite vremia poezdki:\n";
cin>>poezda[i].time_travel;
cout<<"\n----------------------------------\n";
};
for(int i=0;i<n-1;i++)//метод пузырька для сортировки поездов по алфавиту)))
{
for(int j=i+1;j<n;j++)
{
if (strcmp(poezda[i].name_punkt,poezda[j].name_punkt)>0)
{tmp=poezda[i];
poezda[i]=poezda[j];
poezda[j]=tmp;
}
}
}
for(i=0;i<n;i++)//вывожу отсортированные уже поезда
{
cout<<poezda[i].name_punkt<<"\n";
}
cout<<"V kakoe vremia vi hotite otpravitsya v puteshestvie?:\n";
cin>>time;//запоминаем в память
int z,t;
//если поезд есть такой то выводим всю информацию о поездах
for(i=0;i<n;i++)
{
z=poezda[i].time_travel;
if(time == z)
t=i;
else
{
t=0;
};
}
if(t>0)
cout<<" Nazvanie reysa : "<<poezda[t].name_punkt<<" Nomer poezda "<<poezda[t].number_train<<" Vremiya "<<poezda[t].time_travel<<"\n";
else
cout<<"Izvinite,no v takoe vremiya svobodnih poezdov net(((((((";
dyn_list vars; // Динамический список
constr_list(vars);
char x[100];
cout<<"Vvedite punkt naznacheniya : "<<endl;
cin>>x;
comp_in(vars,x);
getch();
return 0;
}
заранее спасибо