Платежная ведомость предприятия
Рефераты >> Программирование и компьютеры >> Платежная ведомость предприятия

Функция soxran () – сохранение односвязного списка в файле на жестком диске

Параметром в функцию передается указатель на начало списка.

С клавиатуры вводится название файла в котором будет сохранен список. Затем открывается файл с указанным именем в двоичном режиме на запись. Затем поочередно записи из списка копируются в буферную переменную, и в файл. после этого файл закрывается.

Переменные, используемые в функции, опишем в таблице 2.3.11.

Таблица 2.3.11

Принятое имя

Наименование

fname

Переменная тип char, используется для считывания и хранения имени файла.

k

Переменная типа int, счетчик. Используется для подсчете количества записей.

Функция ochistka () – очистка односвязного списка

Параметром в функцию передается указатель на начало списка.

Проверяется не пустой ли список. Если список пуст, то выводится соответствующее сообщение и происходит выход из функции. Если список не пустой, то производится проход по списку, и удаление текущего элемента, пока не будет достигнут последний элемент списка.

Переменные, используемые в функции, опишем в таблице 2.3.12.

Таблица 2.3.12

Принятое имя

Наименование

k

Переменная типа int, счетчик. Используется для подсчете количества записей.

Функция vossosdanie () – воссоздание односвязного списка из раннее сохраненного файла.

Параметром в функцию передается указатель на начало списка.

С клавиатуры вводится название файла в котором был сохранен список. Затем открывается файл с указанным именем в двоичном режиме на чтение. Файл откроется только, если он был ранее создан. Затем в цикле записи из файла копируются в буферную переменную. Каждый проход цикла создается новый элемент списка, в поля которого копируются соответствующие поля буферной переменной, и формируется поле адреса. Когда просмотрены все записи в файле, файл закрывается.

Переменные, используемые в функции, опишем в таблице 2.3.13.

Таблица 2.3.13

Принятое имя

Наименование

nov

Указатель на переменную типа predpry (структура определен­ная пользователем), используется для копирования информации по фамилии из файла в список.

tek1

Указатель на переменную типа predpry (структура определенная пользователем), используется для копирования информации по фамилии из файла в список. Вспомогательная переменная

fname

Переменная тип char, используется для считывания и хранения имени файла.

kol

Переменная типа int, в которой записывается кол-во записей в файле

k

Переменная типа int, счетчик. Используется для подсчете количества записей.

Ниже приведены блок схемы следующих функций:

- рисунок 1 – главная функция main();

- рисунок 2 – функция создания файла sozd();

- рисунок 3 – функция воссоздания списка vossosdanie().

Рис.1. Блок схема главной функции main()

Рис. 2. Блок схема функции создания файла sozd()

Рис. 3. Блок схема функции воссоздания списка vossosdanie ()

Овал: Выход из ф-ции

potok.close

Нет

Да

Закрываем поток

Блок-схема: данные: Сообщение о восстановлении спискаОвал: Выход из функции

Закрываем поток

q->close

for (int i=0; i<kol; i++)


Страница: