- •Лабораторная работа №7 Работа с файловыми потоками в с. Текстовые файлы.
 - •Теоретические сведения Форматированный консольный ввод-вывод
 - •Файловая система ansi c
 - •Указатель на файл
 - •Открытие файла
 - •Запись символа
 - •Чтение символа
 - •Закрытие файла
 - •Требованияк отчету.
 - •Контрольные вопросы:
 - •Лабораторное задание.
 
Лабораторная работа №7 Работа с файловыми потоками в с. Текстовые файлы.
Цель работы: получить практические навыки решения задач с использованием текстовых файлов на языке С.
Теоретические сведения Форматированный консольный ввод-вывод
Стандартная библиотека С содержит две функции, выполняющие форматированный ввод и вывод стандартных типов данных: printf() и scanf(). Терминформатированныйподразумевает, что эти функции могут читать или писать данные в различных форматах, которыми можно управлять. Функцияprintf()используется для вывода данных на консоль,scanf()– для чтения данных с консоли. Какprintf(), так и scanf()могут работать с любыми стандартными типами, включая символы, строки и числа.
Функция printf()имеет следующий прототип:
int printf(const char * форматная_строка, …);
Первый аргумент форматная_строкаопределяет способ вывода последующих аргументов. Он содержит два типа элементов: символы, выводимые на экран, и спецификаторы формата, определяющие способ вывода аргументов, следующих за форматной строкой. Спецификаторы формата приведены в таблице 1.
Таблица 1
| 
			 Код %c %d %i %e %E %f %g 
 %G 
 %o %s %u %x %X %p %n 
 %%  | 
			 Формат Символ Знаковое десятичное целое число Знаковое десятичное целое число Научная нотация (e– строчная) Научная нотация (E– строчная) Десятичное число с плавающей точкой Использует или %e, или %f, соответствующее более короткому представлению Использует или %E, или %f, соответствующее более короткому представлению Беззнаковое восьмеричное число Строка символов Беззнаковое десятичное число Беззнаковое шестнадцатиричное число (строчные буквы) Беззнаковое шестнадцатиричное число (прописные буквы) Вывод указателя Ассоциированный аргумент – это указатель на целое, в которое записывается число уже выведенных символов Выводит знак %  | 
Функция printf()возвращает число напечатанных символов. В случае ошибки она возвращаетEOF.
Стандартный ввод с консоли, как правило, осуществляется с помощью scanf(). Она читает все стандартные типы данных и автоматически преобразует числа к правильному внутреннему формату. Стандартный видscanf()следующий:
intscanf(constchar*форматная_строка,…);
форматная_строкаопределяет способ чтения значений в переменные, на которые указывает список аргументов. Форматная строка состоит из трёх типов символов:
Спецификаторы формата
Специальные символы
Стандартные символы
Спецификаторы формата перечислены в таблице 2.
Таблица 2
| 
			 Код %c %d %i %e %f %g %o %s %x %p %n %u %[]  | 
			 Значение Читает одиночные символы Читает десятичное число Читает десятичное число Читает число с плавающей запятой Читает число с плавающей запятой Читает число с плавающей запятой Читает восьмеричное число Читает строку Читает шестнадцатиричное число Читает указатель Получает целочисленное значение, равное числу прочитанных символов Читает беззнаковое целое Сканирует множество символов  | 
В scanf() следует передавать адреса. Это означает, что все аргументы должны быть указателями на переменные. Например, для чтения целого в переменнуюcountнадо использовать следующий вызовscanf():
scanf(“%d”, &count);
