Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции по С++.doc
Скачиваний:
34
Добавлен:
15.12.2018
Размер:
2.31 Mб
Скачать

4. Функции форматированного ввода и вывода

При разработке вычислительных алгоритмов не обойтись без функций ввода-вывода информации. В языке С++ предусмотрены функции форматированного ввода-вывода и потоковые функции форматированного ввода-вывода. Для использования в программе функций форматированного ввода-вывода необходимо подключить головной файл stdio.h. Потоковые функции в этом разделе рассматривать не будем.

4.1. Функция форматированного ввода с клавиатуры

Для форматированного ввода информации с клавиатуры в оперативную память используется функция scanf(). Структура функции:

scanf(<формат_ввода>, <адрес_переменной_в_ОП>);

Функция scanf() осуществляет чтение символов, вводимых с клавиатуры, в формате, указанном в скобках, и записывает полученное значение в ячейку ОП, адрес которой указан как второй аргумент функции ввода. <Формат_ввода> – строка, заключенная в кавычки. Эта строка может состоять их двух или трех символов и должна начинаться с символа %, за которым следует символ, определяющий, какого типа данные будут считываться с клавиатуры. Некоторые форматы:

Формат ввода

Тип данных

%i или %d

Целое число (int)

%f

Вещественное число (float)

%u

Целое число без знака (unsigned int)

%ld

Длинное целое (long int)

%c

Символ

%s

Строка

Вторым аргументом функции ввода является адрес переменной, в которую записывается вводимое с клавиатуры значение. Для определения адреса переменной пользуются операцией & – получения адреса переменной в ОП.

Таким образом, оператор

scanf(“%i” , &V);

запишет целочисленное значение, введенное с клавиатуры, в оперативную память по адресу переменной V. При этом надо строго следить за тем, чтобы формат ввода и тип переменной точно соответствовали друг другу.

4.2. Функция форматированного вывода на экран

Для форматированного вывода информации на экран используется функция printf(). Структура функции:

printf(<форматная_строка>,<список_выводимых_переменных>);

<Форматная_строка> – строка, заключенная в кавычки. Она может включать в себя произвольный текст, управляющие символы и формат вывода. Текст форматной строки будет выводиться на экран, управляющие символы влияют на расположение выводимых на экран символов, а формат вывода позволяет выводить на экран значения переменных того или иного типа данных.

Наиболее часто используемые управляющие символы:

Управляющий символ

Смысл

\n

Перевод строки

\t

Горизонтальная табуляция

\a

Сигнал–звонок

Некоторые форматы вывода:

Формат вывода

Тип данных

%i или %d

Целое число

%f

Вещественное число

%u

Целое число без знака

%c

Символ

%s

Строка

К формату вывода могут быть добавлены числовые параметры: ширина поля и точность. Ширина поля – количество позиций, отводимых для вывода переменной на экране, точность – количество позиций, отводимых под дробную часть.

Таким образом, оператор

printf(“Значение переменной V=%i\n” , V);

выведет следующий текст на экран, если значение переменной V равно 10:

Значение переменной V=10

При выводе форматной строки “Значение переменной V=%i\n” на экран монитора вместо %i будет выведено значение переменной V. При этом необходимо следить за тем, чтобы формат вывода и тип выводимой переменной точно соответствовали друг другу.