Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методическое пособие Visual C (14.02.2012).doc
Скачиваний:
3
Добавлен:
12.08.2019
Размер:
97.28 Кб
Скачать

Int *fscanf(file * указатель, const char * управляющая_строка)

считает форматированные данные из файла. Строка форматирования строится аналогично функции fprintf.

Void rewind(file * указатель)

устанавливает указатель текущей позиции выделенного файла в начало файла.

Int ferror(file * указатель)

определяет, произошла ли ошибка во время работы с файлом.

size_t fwrite (const void * ptr, size_t size, size_t count, FILE * указатель)

записывает в файл заданное число данных определенного размера. Функция возвращает число записанных элементов массива.

ptr  указатель на массив данных. Тип данных может быть любым.

size  размер в байтах каждого элемента массива данных, в большинстве случае это размер типа данных.

count  число записываемых элементов массива.

size_t является целым положительным числом.

size_t fread (void * ptr, size_t size, size_t count, FILE * указатель)

считывает из файла заданное число данных определенного размера. Функция возвращает число считанных элементов массива.

int fileno(FILE * указатель)

возвращает значение дескриптора указанного файла (дескриптор – логический номер файла для заданного потока).

long filelength(int дескриптор)

возвращает длину файла с соответствующим дескриптором в байтах.

int fseek(FILE * указатель, long int число_байт, int точка_отсчета);

устанавливает указатель в заданную позицию. точка_отсчета показывает откуда произвести переход указателя: SEEK_SET – с начала файла, SEEK_CUR – с текущей позиции, SEEK_END – с конца файла.

10.3. Индивидуальные задания

В программе предусмотреть сохранение вводимых данных в файл и возможность чтения из ранее сохраненного файла. Результаты выводить на экран и в текстовой файл.

Внимание! Разработанная программа будет использоваться в других лабораторных работах.

Для всех вариантов использовать вложенные структуры.

1. Список товаров, имеющихся на складе, включает в себя наименование товара, количество единиц товара, цену единицы, дату поступления товара на склад и название, юридический адрес, контактные данные производителя. Вывести список товаров по указанному заказчику, хранящихся больше месяца и стоимость одной единицы которых превышает 250000 р.

2. Для получения места в общежитии формируется список студентов, который включает ФИО студента, группу, доход на члена семьи, текущие предметы и оценки по ним. Вывести информацию о студентах, которые учатся на 3 или 5 курсах со средним текущим баллом не менее 6.5.

3. В справочной автовокзала хранится расписание движения автобусов. Для каждого рейса указаны его номер, пункт назначения, количество остановок, время отправления и время между каждыми остановками (до 8 остановок на рейс). Вывести информацию о рейсах, которые наименьшим количеством остановок с максимальным временем поездки.

4. Информация о сотрудниках фирмы включает ФИО, количество проработанных часов за месяц, номер разряда, который включает в себя тарифную ставку, повышение за сверхурочные часы, размер подоходного налога, размер несверхурочного времени. Сверхурочное время оплачивается по тарифу, зависящему от разряда. Вывести размер заработной платы первых 2 сотрудников фирмы, которые имеют наибольшую зарплату, и 2 сотрудников с наименьшей зарплатой.

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

6. Для книг, хранящихся в библиотеке, задаются автор, название, год издания, количество страниц и номер издательства, которое включает в себя название, юридический адрес, контактные данные. Вывести список книг, изданных не позже 3 лет назад в Москве.

7. На заводе выпускается несколько наименований деталей. Сведения о деталях включают код детали, количество выпущенных деталей, дату выпуска, ID рабочего, который делал оценку качества. Информация о рабочем включает ФИО, должность, дату поступления на работу. Вывести информацию о продукции, выпущенной двумя самыми опытными работниками за последний месяц.

8. Информация о сотрудниках предприятия содержит ФИО, номер отдела, должность, дату начала работы. Информация об отделе содержит его наименование, размер штата сотрудников в нем и юридический адрес. Вывести список сотрудников, проработавших на предприятии более 10 лет в 2 наиболее крупных отделах.

9. Ведомость абитуриентов содержит ФИО, населенный пункт проживания, суммарный балл. Информация о населенном пункте включает в себя население, тип пункта, область. Вывести информацию об абитуриентах, проживающих в деревнях с населением выше 30 человек и имеющих суммарный балл выше 100.

10. В справочной аэропорта хранится расписание вылета самолетов на следующие сутки. Для каждого рейса указаны номер рейса, номер аэропорта назначения (страна, город, название аэропорта), время вылета. Вывести все номера рейсов и время вылета самолета для заданной страны.

11. У администратора железнодорожных касс хранится информация о свободных местах в поездах. Информация представлена в следующем виде: номер поезда, номер пункта назначения (населенный пункт, название станции), время отправления, число свободных мест, расстояние до пункта назначения. Вывести информацию о поездах и всех близлежащих пунктах назначения в районе 100 км, в которые могут поехать 5 человек.

12. Ведомость студентов, сдававших сессию, содержит ФИО, номер группы, количество предметов, количество попыток сдачи каждого предмета, их наименование и оценки по ним. Вывести список студентов, сдавших сессию без пересдач со средним баллом больше 7.5.

13. В радиоателье хранятся квитанции о сданных в ремонт телевизорах. Каждая квитанция содержит следующую информацию: марка телевизора, дата приемки в ремонт, состояние готовности заказа (выполнен или нет) и ID клиента (ФИО, адрес, телефон). Вывести информацию о гражданах и заказах, которые на текущий момент не выполнены для граждан с улицы П. Бровки.

14. На АТС информация о разговорах содержит номер телефона абонента (информация об абоненте включает ФИО, адрес), время разговора, тариф, дата звонка. Вывести информацию об абонентах и счетах оплаты за предыдущий месяц для абонентов города Минска.

15. В магазине составлен список людей, которым выдана карта постоянного покупателя. Каждая запись этого списка содержит номер карточки, ID клиента (ФИО, адрес, телефон в международном формате +375-XX-XXXXXXX), предоставляемую скидку. Вывести информацию о покупателях с кодом телефонных номеров 55 и имеющих более чем 5 %-ную скидку в магазине.