· 1-е поле i-ой структуры – наименование i-ой базы, это символы, записанные после символов "БАЗА_" до пробела;
· 2-ое поле – адрес участка памяти, где следует хранить назначение i-ой базы: набор символов (без управляющих), записанных после наименования базы до слова "Поставка";
· 3-е поле – стоимость годового ежемесячного обновления i-ой базы, которая соответствует цифрам, записанным после символа " Ежемесячно:" до первого символа ‘/’;
· 4-е поле – стоимость годового еженедельного обновления i-ой базы, которая соответствует цифрам, записанным после символа "Еженедельно:" до первого символа ‘/’; если символы "Еженедельно:" отсутствуют в тексте – информации об i-ой базе, – то в 4-ом поле записать 0.
Перебрав значения 4-ых полей всех структур, вывести в файл name7-25.out всю информацию о базах (наименование, назначение и стоимости обновлений), которые обновляются и ежемесячно, и еженедельно.
Пример файла name7-25.txt.
БАЗА_1/A Нормативные акты Российской Федерации
всем отраслям права
Поставка: $600
Обновление: (оплата в USD за 12/6/3 месяцев)
Ежемесячно: 300/190/120
Еженедельно: 450/290/180
БАЗА_1/B Судебная практика
Поставка: $140
Обновление: (оплата в USD за 12/6/3 месяцев)
Ежемесячно: 120/85/55
БАЗА_1/C Арбитражная практика
Поставка: $140
Обновление: (оплата в USD за 12/6/3 месяцев)
Ежемесячно: 120/85/55
БАЗА_2/A Нормативные акты Москвы
Поставка: $250
Обновление: (оплата в USD за 12/6/3 месяцев)
Ежемесячно: 190/130/80
Еженедельно: 200/130/80
БАЗА_3/A Нормативные акты Московской области
Поставка: $150
Обновление: (оплата в USD за 12/6/3 месяцев)
Ежемесячно: 160/105/65
Еженедельно: 200/130/80
БАЗА_1/Z Нормативные акты России в последней (текущей)
редакции (по списку)
Поставка: $120
Обновление: (оплата в USD за 12/6/3 месяцев)
Ежемесячно: 80/50/35
БАЗА_1/E Научно-практический комментарий (картотека)
Поставка: $60
Обновление: (оплата в USD за 12/6/3 месяцев)
Ежемесячно: 60/40/25
БАЗА_4/G Научно-практический комментарий эконо-
мического законодательства (еженедельник "Экономика и жизнь")
Поставка: $190
Обновление: (оплата в USD за 12/6/3 месяцев)
Ежемесячно: 160/105/65
Еженедельно: 200/130/80
ТЕОРЕТИЧЕСКИЙ МАТЕРИАЛ
В тех случаях, когда программа обрабатывает достаточно большой объем данных, последние обычно организуются и хранятся вне оперативной памяти ЭВМ. Наиболее эффективным устройством для организации внешнего хранения данных являются диски. При этом, для того, чтобы к данным можно было обратиться, их необходимо сгруппировать в памяти и присвоить этому набору байт некоторое имя. Такая поименованная область внешней памяти и называется файлом (дисковым файлом).
В.В. Подбельский [1], объясняя различие между файлом и потоком, дает следующее определение: «поток – это файл вместе с предоставляемыми средствами буферизации».
Поскольку функции из библиотеки <stdio.h>, предназначенные для работы с файлами, в качестве аргументов имеют адреса потоков, работа с файлом предполагает связывание этого файла с неким потоком. Поток, с помощью которого будет осуществляться в программе обмен данными с одним или несколькими файлами, должен быть объявлен. Синтаксическая форма оператора объявления потока :
FILE * < имя указателя на поток>;
Например, после объявленияFILE * fp ; – указатель fp идентифицирует поток во всех последующих операторах программы.
Операция связывания файла с потоком осуществляется при помощи библиотечной функции fopen() , ее заголовок:
FILE *fopen(char * pathname, char * type).
Функция fopen() открывает файл, имя и местоположение на диске которого задается в строке pathname. Символы в строке type определяют режим доступа к файлу.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.