- •Описание структуры
- •Описание списка
- •Контрольные примеры
- •Описание переменных главной функции
- •Краткое описание алгоритма
- •Описание функций Описание функции vvod
- •Описание функции vivod
- •Описание функции obrabotka
- •Описание функции sortirovka
- •Описание функции dobav
- •Описание функции ydal
- •Описание функции vivod2
- •Описание функции f_s
- •Описание функции The_end
- •Иерархическая структура программы
- •Код программы на языке c
- •Результаты выполнения программы
Описание функций Описание функции vvod
Назначение: ввод данных – имени, возраста, кол-ва голов.
Прототип:SP*vvod(int *), гдеint* - адрес переменной, показывающей количество элементов в массиве структур, тип возвращаемого значенияSP* - адрес первого элемента списка.
Пример вызова:players = vvod(&k), гдеplayers- указатель на адрес первого элемента массива структур.
Описание переменных: описание локальных переменных функцииvvodприведено в таблице 4.
Таблица 4. Описание локальных переменных функции vvod
Имя переменной |
Тип переменной |
Назначение |
r |
SP * |
Адрес первого элемента списка |
Описание функции vivod
Назначение: вывод информационных полей списка.
Прототип: voidvivod(SP*,char*,int*), первый тип параметраSP* - адрес первого элемента списка, третий тип параметраint– количество элементов в списке, второй тип параметраchar* - указатель на объект типаchar.
Пример вызова:vivod(players,k, "Vvedennyidannyi:"), гдеplayers–адрес первого элемента последовательности структур,k– размер массива структур.
Описание переменных: описание локальных переменны функцииvivodприведены в таблице 5.
Таблица 5. Описание локальных переменных функции vivod
Имя переменной |
Тип переменной |
Назначение |
q |
int |
Вспомогательная переменная |
Описание функции obrabotka
Назначение: функция обрабатывает исходную список и возвращает полученный список - результат.
Прототип: SP*obrabotka(SP*,int,int*)где тип возвращаемого значенияSP* - адрес первого элемента списка, первый тип параметраSP* - адрес первого элемента списка, второй тип параметраint– переменная, хранящая размер исходного списка, третий тип параметраint* - адрес переменной, хранящей размер списка после обработки.
Пример вызова: rez=obrabotka(SP *h1, int k, int *z)), гдеrez– возвращаемое значение типаSP*,h1 - адрес первого элемента списка,k- размер исходного списка, &z– адрес переменной, показывающей размер списка после обработки.
Описание переменных: описание локальных переменных функцииobrabotkaприведено в таблице 6.
Таблица 6. Описание локальных переменных функции obraboka
Имя переменной |
Тип переменной |
Назначение |
d |
int |
Переменная для хранения введенного кол-ва голов |
t |
int |
Вспомогательная переменная |
r, h2, p r2 |
SP * |
Вспомогательные переменные |
Описание функции sortirovka
Назначение: функция сортирует элементы списка.
Прототип: SP*sortirovka(SP*),где первый тип параметраSP* - адрес первого элемента списка, второй тип параметраint– размер исходного списка.
Пример вызова: sortirovka(players, k).
Описание переменных: описание локальных переменных функцииsortirovkaприведено в таблице 7.
Таблица 7. Описание локальных переменных функции sortirovka
Имя переменной |
Тип переменной |
Назначение |
h |
int |
Вспомогательная переменная |
pm2, pm3, pm4 |
int |
Переменные для управления меню |
b |
NT |
Вспомогательная переменная |
Описание функции dobav
Назначение: функция добавляет элемент в существующий список.
Прототип: SP*dobav(SP*,int), где тип возвращаемого значенияSP*- адрес первого элемента списка, первый тип параметраSP* - адрес первого элемента списка, второй тип параметраint– размер исходного списка.
Пример вызова: h1=dobav(h1, k), гдеh1 - адрес первого элемента списка,k- размер исходного списка.
Описание переменных: описание локальных переменных функцииdobavприведено в таблице 8.
Таблица 8. Описание локальных переменных функции dobav.
Имя переменной |
Тип переменной |
Назначение |
d, z |
int |
Вспомогательные переменные |
pm2 |
int |
Переменная для управления меню |
q, r |
SP * |
Вспомогательные переменные |