
- •Цель работы
- •Задание
- •Уточнение задания
- •5.Описание информационной структуры
- •6.Организация структуры, используемая для создания списка
- •7.Описание переменных главной функции
- •8.Краткое описание алгоритма
- •9. Описание функций
- •9.1. Описание функции f_vvod
- •9.2. Описание функции vivod
- •9.3. Описание функции func_dobavka_nach
- •9.4. Описание функции func_dobavka_kon
- •9.5. Описание функции func_sort
- •9.8. Описание функции func_zapis
- •9.9. Описание функции func_chtenie
- •Результаты выполнения программы
Федеральное государственное учреждение высшего профессионального образования
Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина) (СПбГЭТУ)
Факультет компьютерных технологий и информатики
Кафедра вычислительной техники
Отчет
по лабораторной работе №4
на тему «Работа с файлом»
по дисциплине «Программирование»
Выполнил: студент группы №2306
Лебедев С. И.
Проверила: к. т. н., доцент
Сискович Т. И.
Санкт-Петербург
2013 г.
Цель работы
Получение практических навыков в работе с файлами.
Задание
Написать программу для выполнения записи в файл исходного списка. Чтения из файла соответствующего списка.
Уточнение задания
Запись и чтение из файла происходят по выбору пользователя. Если список пуст, то вывод соответствующего сообщения.
5.Описание информационной структуры
typedef struct swimmers
{
char name[20];
char surname[20];
int dist;
char country[20];
}QT;
Где первое поле типа char-имя пловца.
Второе поле типа char-фамилия пловца.
Третье поле типа int - дистанция.
Четвертое поле типа char - страна, за которую выступает спортсмен.
Пример объявления структуры QT *m=NULL;
6.Организация структуры, используемая для создания списка
typedef struct result
{
QT info;
struct result *next;
}NT;
Где первое поле типа QT – информационное поле.
Второе поле типа struct result – указатель на следующий элемент списка.
Пример объявления списка NT: NT *q=NULL;
7.Описание переменных главной функции
Описание переменных приведено в таблице 4.
Имя переменной |
Тип переменной |
Таблица 4. Описание
переменных
К |
Spisok, popitka |
NT* |
Указатели |
m |
int |
Количество столбцов исходного массива |
y |
char |
Используются для выбора пункта меню |
8.Краткое описание алгоритма
Шаг 1: Начало программы
Шаг 2: Вывод меню
Шаг 3: Вывод сообщения «Выберите пункт меню»
Шаг 4:Ввод номера пункта
Шаг 5:Если пункт 1,то переход к шагу 6,иначе вывод сообщения об ошибке и переход к шагу 2.
Шаг 6: Вывод сообщения «Заполните данные»
Шаг 7: Ввод данных. Возврат к шагу 4.
Шаг 8: При вводе пункта 2 переход к шагу 9
Шаг 9: Вывод данных на экран . Если данные отсутствуют то вывод соответствующего сообщения. Возврат к шагу 4.
Шаг 10: При вводе пункта 3 происходит внесение изменений в картотеку( на выбор пользователя). Возврат к шагу 4.
Шаг 11: Выбор пункта меню. Если пункт 4, то переход к шагу 11, иначе вывод сообщения об ошибке и переход к шагу 10.
Шаг 12: Запись / Чтение данных из файла. Возврат к шагу 4.
Шаг 13: При выборе пункта 5 переход к шагу 14.
Шаг 14: Заверщение программы.
9. Описание функций
9.1. Описание функции f_vvod
Назначение
Используется для заполнения данных электронной картотеки.
Прототип
NT* f_vvod(NT* spisok)
, где NT*-указатель на объект типа NT, NT*-тип вовращаемого значения.
Пример вызова
spisok=f_vvod(popitka);
Описание переменных
Описание локальных переменных приведено в таблице 5.
Таблица 5. Описание локальных переменных функции razm
Имя переменной |
Тип переменной |
Назначение |
r |
NT* |
Переменная для ввода данных полей структуры |
y |
char |
Вспомогательная переменная |
d |
char |
Используется для ввода данных |
i |
int |
Используется для ввода данных |