Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник 357.docx
Скачиваний:
27
Добавлен:
30.04.2022
Размер:
1.75 Mб
Скачать

%[Флаг][ширина][.Точность][h|l|l]тип,

где флаг – символ, указывающий на особенности заполнения полей вывода (таблица 2.3);

ширина– десятичное число, которое указывает минимальную ширину поля (включая знак для чисел);

точность – число, которое указывает:

– на минимальное количество символов, которое должно появиться при обработке типов d, i, o, u, x, X;

– на минимальное количество символов, которое должно появиться после десятичной запятой (точки) при обработке типов a, A, e, E, f, F;

– максимальное количество значащих символов для типов g и G;

– максимальное число символов, которые будут выведены для типа s.

тип – символьная константа, указывающая на типы выводимой переменной (таблица 2.2).

Для форматированного ввода данных с консоли используется функция scanf (..), которая сканирует клавиатуру, определяя какие клавиши нажаты. А затем интерпретирует вводимые данные в соответствии с указанной управляющей строкой и списком параметров (аргументов функции). Аргументы функции scanf должны быть указателями на соответствующие значения (перед именем записывается символ &). Управляющая строка содержит спецификации преобразования (рис. 2.1), используемые для установления количества и типов аргументов. В нее могут включаться: пробелы, символ табуляции и перехода на новую строку.

Таблица 2.2

Спецификация преобразования переменных

символ

%d или %i

целое десятичное число со знаком

%e или %E

десятичное число в виде x.xx e+xx

%f или %F

десятичное число с плавающей запятой xx.xxxx

%g или %G

%f или %e, с выбором по принципу, что короче

%o

восьмеричное число

%s

строка символов

%u

беззнаковое десятичное число

%x или %X

шестнадцатеричное число

%lf или %lg

длинное десятичное число

Таблица 2.3

Спецификатор вывода флаг

Знак

Значение

В отсутствие этого знака

-

выводимое значение выравнивается по левому краю в пределах минимальной ширины поля

по правому

+

всегда указывать знак (плюс или минус) для выводимого десятичного числового значения

только для отрицательных чисел

*

помещать перед результатом пробел, если первый символ значения не знак

вывод может начинаться с цифры.

0

дополнять поле до ширины, указанной в поле ширина управляющей последовательности, символом 0

дополнять пробелами

*)символ, означающий пробел

На время выполнения функции scanf (..) выполнение приостанавливается, и программа ожидает ввода указанных параметров. Завершение ввода осуществляется нажатием клавиши Enter.

Функция scanf (..) может быть использована для одновременного ввода нескольких параметров, но если они будут введены не в правильной последовательности, то введенная информация может быть проигнорирована, поэтому рекомендуется для каждого ввода вызвать отдельную scanf (..).

Прототипы функций printf и scanf описаны в заголовочном файле stdio.h.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]