Содержание:
1)Введение 3
2)Описание глобальных переменных 4
3)Блок-схемы 5
4)Тестирование программы 19
5)Листинг программы 33
6)Заключение 43
7) Список используемой литературы……………………………………..44
1. Введение
Цель работы: освоение функций работы со структурным типом данных и файлами.
Постановка задачи: Разработать программу на С++ для обработки данных типа структура. Обработка должна включить следующие функции:
создание новой базы данных (с возможностью задания имени файла);
просмотр существующей базы данных (чтение данных осуществить из файла);
редактирование базы данных (с сохранением изменений в файле );
дополнение базы данных новыми записями (с сохранением в файле);
удаление записей из базы данных (с сохранением в файле);
поиск в базе данных (по одному или двум поисковым признакам ) с выводом на экран найденных записей или сообщения о неуспешном поиске;
сортировка данных по заданному полю ( с сохранением в файле).
Вариант №11: «Легковые автомобили»
Марка
|
Цвет |
Стоимость |
Изготовитель |
Максимальная скорость |
Ключевые поля: цвет,стоимость
2. Описание глобальных переменных, разработанных подпрограмм
Описание глобальных переменных:
Const int L=30 struct avto { char model[L]; char cvet[L]; long int stoimost; char izgotovitel[L]; int speed; }; |
Количество символов под структуру
-структура записей в базе данных
-тип наименования марки -тип наименования цвета -тип стоимость -тип наименования изготовителя -тип максимальная скорость
|
Class avtos |
|
avto a[N] int n |
|
Описание разработанных подпрограмм:
Название подпрограммы |
Назначение |
|
|
void input_file |
Ввод из файла |
void outputfile |
Вывод из файла |
void alfsort |
Сортировка по наименованию марки |
void sohranenie |
Сохранение изменений |
void sort_chisl_1 |
Сортировка по цвету |
void sort_chisl_2 |
Сортировка по стоимости |
void sort_chisl_3 |
Сортировка по изготовителю |
void sort_chisl_4 |
Сортировка по скорости |
void add |
Добавление записей в базу данных |
void udalenie |
Удаление записей из базы данных |
void redaktirovanie |
Редактирование записей в базе данных |
void input |
Создание новой базы данных |
void poisk |
Поиск по заданному полю |
3. Блок – схемы
Блок-схема функции main()
Блок–схема функции input_file
Блок-схема функции alfsort
Блок-схема функции outputfile
i=0
i++
Блок-схема функции sort_chisl_1
Блок-схема функции sort_chisl_2
Блок-схема функции sort_chisl_3
Блок-схема функции sort__chisl_4
Блок-схема функции sohranenie
Блок-схема функции redaktirovanie
Блок-схема функции input
i=0
i++
Блок-схема функции poisk
2
r
=
1
strcmp(izgotovitel,
a[i].izgottovitel)==0
d
=
d
+
1
t
=
1
speed
=a[i].speed
3
d
=
d
+
1
j
=
0
d
=
f
Найденные
данные Поиск
не дал результатов
j =
j +
1
d
=
0 ;
i
=
i
+
1 конец
3
stoimost
=
a[i].stoimost
d
=
d
+
1
2
Блок-схема функции udalenie
Блок-схема функции add
a[n]=x n=n+1
4. Тестирование программы.
При входе в программу появляется меню с выбором пунктов меню, доступных для любого пользователя:
1). Ввод из файла.
2). Вывод из файла.
3). Сортировка по наименованию марки.
4). Сортировка по цвету.
5). Сортировка по стоимости.
6). Сортировка по изготовителю.
7). Сортировка по максимальной скорости.
8). Поиск по полю.
9). Добавление записи в базу данных.
10). Удаление записи из базы данных.
11). Редактирование базы данных.
12). Создание новой базы данных.
13). Сохранение изменений.
14). Выход из программы.
Теперь посмотрим, что происходит при нажатии пользователем каждого пункта меню. При неверном вводе данных во всех пунктах меню выходит сообщение об ошибке.
Нумерация пунктов – есть номер клавиш на клавиатуре.
1.Ввод из файла – в этом пункте пользователь может ввести свой файл:
2.Вывод из файла – в этом пункте пользователь может просмотреть свой файл: