/*********************************************************************
/*имя файла: linklist.с */
/*********************************************************************
/*включенные файлы*/
*include stdio.h /*стандартная библиотека ввода - вывода */
*include stdlib.h /*стандартная библиотека динамического */
/*распределения*/
/*global variables - глобальные переменные. Объявление этих переменных */
/*помещают в файл заголовка (header file). Они приведены здесь, */
/* чтобы иллюстрировать последовательность построения программы. */
/*определение структуры "автомобиль"*/
struct car {
int year; /* год производства */
char make[10]; /*BWM, Hummer, Saturn */
char model[12]; /*купе, обратимый, SUV, пикап */
char VTN[10]; /*комбинация цифр, букв */
float mileage; /*показания спидометра: от 0 до 500,000+*/
struct car *next; /*указатель на следующий автомобиль в списке */
};
/*определение указателя на автомобиль */
typedef struct car ELEMENT;
typedef ELEMENT *car_temp_ptr;
/*функции прототипов*/
void initialize_link_list(void);
void print_link_list(car_temp_ptr);
void insert_link_list(car_temp_ptr);
void delete_link_list(car_temp_ptr);
void search_link_list(car_temp_ptr);
/*переменные*/
/ " Создают списки, чтобы следить за состоянием автомобильного сервиса*/
car_temp_ptr in_stock_list; /* автомобили в продаже */
car_temp_ptr repair_list; /* автомобили в ремонт - не подлежат продаже*/
car_temp_ptr paint_shop_list;/*автомобили в покраске - не подлежат продаже*/
car_temp_ptr sold_list; /*проданные автомобили -- не подлежат продаже*/
car_temp_ptr new_car_entry; /*новый автомобиль для введения в список*/
int TRUE=1, FALSE=0; /*логические флаги */
void main(void) {
/*заполняет пустой список переменными NULL */
in_stock_list = NULL; /* автомобили в продаже */
repair_list = NULL; /* автомобили в ремонте - не подлежат продаже */
paint_shop_list = NULL; /* автомобили в покраске - не подлежат продаже*/
sold_list = NULL; /*проданные автомобили -- не подлежат продаже * /
new_car_entry = NULL;
initialize_link_list; /*составление списка для продажи */
print_link_list(in_stock_list); /*print the list */
insert_link_list(in_stock_list); /*вставить новый автомобиль в список*/
print_link_list(in_stock_list); /*распечатать список */
delete_link_list(in_stock_list); /*удалить автомобиль из списка */
print_link_list(in_stock_list); /*распечатать список */
search_link_list(in_stock_list); /*поиск определенного пункта в списке */
}