Файлы
Общие замечания
Приступая к решению задач этого раздела, следует вспомнить, что:
- в программе, которая выполняет операции чтения из файла или запись в файл, должна быть объявлена переменная-указатель на тип file;
- для того чтобы файл был доступен, его надо открыть, указав, для выполнения какого действия открывается файл: чтения, записи или обновления данных, а также тип файла (двоичный или текстовый);
- при работе с файлами возможны ошибки, поэтому рекомендуется при помощи функции ferror проверять результат выполнения потенциально опасных, с точки зрения возникновения ошибок, операций с файлами (fopen);
- чтение данных из текстового файла можно выполнить при помощи функции fscanf, запись – fprintf;
- по завершении работы с файлом нужно его обязательно закрыть (функция fclose).
Задачи
235. Напишите программу, которая на сменном диске компьютера (диск А:) создает файл numbers.txt и записывает в него 5 введенных пользователем целых чисел. Просмотрите при помощи редактора текста, например, встроенного в Norton Commander, созданный файл. Убедитесь, что каждое число находится в отдельной строке.
236. Напишите программу, которая дописывает в файл A:\numbers.txt пять введенных пользователем целых чисел. Убедитесь при помощи редактора текста, что в файле находятся 10 чисел.
237. Напишите программу, которая выводит на экран содержимое файла A:\numbers.txt.
238. Напишите программу, которая вычисляет среднее арифметическое чисел, находящихся в файле A:\numbers.txt.
239. Напишите программу, которая позволяет просматривать текстовые файлы (выводит на экран содержимое файла), например, файлы исходных программ C++. Имя просматриваемого файла должно передаваться программе в качестве параметра, в командной строке во время ее запуска.
240. Напишите программу, которая дописывает в находящийся на диске А: файл phone.txt имя, фамилию и номер телефона, например, вашего товарища. Если файла на диске нет, то программа должна создать его. В файле каждый элемент данных (имя, фамилия, телефон) должен находиться в отдельной строке. Рекомендуемый вид экрана во время работы программы приведен ниже.
Добавление в телефонный справочник Фамилия › Сидоров Имя › Вася Телефон › 234-84-37 Информация добавлена. Для завершения работы нажмите Enter
241. Напишите программу, которая позволяет за один сеанс работы добавить информацию о нескольких людях в файл A:\phone.txt. Рекомендуемый вид экрана во время работы программы приведен ниже.
Добавление в телефонный справочник. Для завершения вместо ввода фамилии нажмите Enter Фамилия › Сидоров Имя › Вася Телефон › 234-84-37 Информация добавлена. Фамилия › Орлов Имя › Андрей Телефон › 552-18-40 Информация добавлена. Фамилия › Ввод завершен Для завершения работы нажмите Enter
242. Напишите программу, которая позволяет найти в телефонном справочнике (A:\phone.txt) нужные сведения. Программа должна запрашивать фамилию человека и выводить его телефон. Если в справочнике есть люди с одинаковыми фамилиями, то программа должна вывести список всех этих людей. Рекомендуемый вид экрана во время работы программы приведен ниже.
Поиск в телефонном справочнике. Введите фамилию и нажмите Enter. Для завершения работы с программой сразу после приглашения нажмите Enter › Петров В справочнике данных о Петров нет. › Иванов Иванов Вася 578-12-45 Иванов Сергей 244-34-02
243. Напишите программу, которая объединяет возможности программ "Добавление в телефонный справочник" и "Поиск в телефонном справочнике". При запуске программы на экран должно выводиться меню, вид которого приведен ниже.
*** Телефонный справочник *** 1. Добавление 2. Поиск 3. Завершение работы Введите номер пункта меню и нажмите Enter