- •Пояснительная записка
- •1. Цель работы
- •7. Описание переменных главной функции
- •8. Краткое описание алгоритма
- •9. Описание функций
- •Описание функции «confirming»
- •Описание функции «Sort»
- •Описание функции «Newsort»
- •Описание функции «Add»
- •Описание функции «Del»
- •Описание функции «Output_2»
- •Описание функции «save»
- •Описание функции «Load»
- •Описание функции «Seach»
- •10. Иерархическая структура программы
- •12. Набор тестов
- •13. Инструкция для пользователя
- •14. Результаты выполнения программы
- •15. Выводы
7. Описание переменных главной функции
Описание переменных главной функции приведено в таблице 4.
Таблица 4. Описание переменных главной функции
Имя переменной |
Тип переменной |
Назначение |
k, q, z |
int |
Вспомогательные переменные |
pm, pm2,pm3,pm4,pm5,pm6,pm7,pm8 |
int |
Переменные для выбора пунктов меню |
c, ch |
char |
Переменные, управляющие циклом |
h1, rez |
SP * |
Указатели |
8. Краткое описание алгоритма
При разработке алгоритма предусмотрен контроль над выполнением пунктов меню.
1) Пользователь выбирает один из пунктов меню: 1 – ввод данных картотеки; 2 – вывод данных; 3 –Формирование нового списка; 4 – Обработка 5 – Поиск ; 6 – Сохранение и загрузка картотеки; 7 –Пользователю ; 0 – Выход из программы.
2) Если пользователь выбирает первый пункт меню, выводится подменю: 1 – Последовательный ввод ; 2 – Ввод с уточнениям места добавления элемента в картотеку 3 – выход в надменю.
2.1) Если пользователь выбирает первый пункт меню, выполняется:
2.1.1) ввод названия, переход к пункту 2.1.2;
2.1.2) ввод года, переход к пункту 2.1.3;
2.1.3) ввод рейтинга переход к пункту 2.1.4;
2.1.4) вывод сообщения «Завершить ввод?(y/n)».
2.1.5) если сh==n, переход к пункту 2.1.1; если сh!=n, переход к пункту 2.
3) Если пользователь выбирает второй пункт меню, выполняется вывод под-меню :
1 – Последовательный ввод.
2 – Уточнение ввода данных
3 - Выход
4) Если пользователь выбирает третий пункт меню, выполняется обработка по заданному пользователем условию, переход к пункту 1.
5) Если выбран четвертый пункт меню, выводится подменю: 1 – Удаление элементов ; 2 – Сортировка (По имени, году или рейтингу); 3 - Выход (действия осуществляются в соответствии с выбранным пунктом).
6) Если выбран 5 пункт, выполняется поиск элемента (по имени или году).
7) Если выбран 6 пункт меню, выводится подменю с вариантами выбора: 1 – Сохранение ,2 – Загрузка
8) Если выбран 7 пункт меню, осуществляется вывод информации для пользователя:
1 – Рекомендации по использованию, 2 – Инструкция по программе
9) Если выбран 0 пункт меню, осуществляется выход из программы.
9. Описание функций
Описание функции «menu_seach_1»
Назначение: вывод подменю пункта “Поиск”.
Прототип: void menu_seach_1(void)
Пример вызова:menu_seach_1();
Описание функции «menu_sort_1»
Назначение: вывод подменю пункта “Сортировка”.
Прототип: void menu_sort_1(void)
Пример вызова:menu_seach_1();
Описание функции «user_GUIDE»
Назначение: вывод подменю пункта “Пользователю”.
Прототип: void user_GUIDE(void)
Пример вызова:user_GUIDE();
Описание функции «Save_and_Load»
Назначение: вывод подменю пункта “Сохранение и загрузка”.
Прототип: void Save_and_Load(void)
Пример вызова:Save_and_Load();
Описание функции «menu_seach»
Назначение: вывод подменю пункта “Поиск”.
Прототип: void menu_seach(void)
Пример вызова: menu_seach ();
Описание функции «menu_confirming»
Назначение: вывод подменю пункта “Обработка”.
Прототип: void menu_confirming(void)
Пример вызова:menu_confirming();
Описание функции «Notice»
Назначение: вывод подсказки
Прототип: voidNotice(void)
Пример вызова:Notice();
Описание функции «menu_enter»
Назначение: вывод подменю пункта “Ввод данных картотеки”
Прототип: void menu_enter(void)
Пример вызова:menu_enter();
Описание функции «menu_enter»
Назначение: вывод подменю пункта “Ввод данных”
Прототип: void menu_enter(void)
Пример вызова:menu_enter();
Описание функции «output_menu»
Назначение: вывод подменю пункта “Вывод данных”
Прототип: void output_menu(void)
Пример вызова:output_menu();
Описание функции «help»
Назначение: вывод помощи.
Прототип: voidhelp(void)
Пример вызова:help();
Описание функции «recomend»
Назначение: вывод рекомендации пользователю.
Прототип: voidrecomend(void)
Пример вызова:recomend();
Описание функции «Screen»
Назначение: вывод няшности*
Прототип: voidScreen(void)
Пример вызова:Screen();
Описание функции «enter»
Назначение: ввод
Прототип:SP*enter(SP*), где параметр типаSP* - указатель на “голову” списка, тип возвращаемого значенияSP* - указатель на “голову” списка.
Пример вызова:names=enter(&k), гдеnames- указатель на “голову” списка.
Описание переменных: описание локальных переменных функцииenterприведено в таблице 4.
Таблица 4. Описание локальных переменных функции enter
Имя переменной |
Тип переменной |
Назначение |
p |
SP * |
Указатель на “голову”списка |
Описание функции «Output»
Назначение: вывод информационных полей списка.
Прототип: voidOutput(SP*,char*), первый тип параметраSP* - указатель на “голову” списка, второй тип параметраchar* - указатель на объект типаchar.
Пример вызова:Output(games, "Данные:"), гдеgames–адрес первого элемента последовательности структур.
Описание переменных: описание локальных переменных функцииOutputприведены в таблице 5.
Таблица 5. Описание локальных переменных функции Output
Имя переменной |
Тип переменной |
Назначение |
q |
Int |
Вспомогательная переменная |