Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная 4_Лебедев.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
47.68 Кб
Скачать

Федеральное государственное учреждение высшего профессионального образования

Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина) (СПбГЭТУ)

Факультет компьютерных технологий и информатики

Кафедра вычислительной техники

Отчет

по лабораторной работе №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

Используется для ввода данных