Название: Лекции по C++ для начинающих
Автор: Сергей Николаевич Талипов
Издательство: ЛитРес: Самиздат
Жанр: Программирование
isbn:
isbn:
1. d – значением аргумента является десятичное целое число;
2. с – значением аргумента является символ;
3. s – значением аргумента является строка символов:
4. f – значением аргумента является вещественное число с плавающей точкой;
5. р – значением аргумента является указатель (адрес).
Функция printf использует управляющую строку, чтобы определить, сколько всего аргументов и каковы их типы. Например, в результате работы программы получена переменная i, имеющая значение 100, и переменная j, имеющая значение 25. Обе переменные целого типа. Для вывода этих переменных на экран в виде
int i = 100;
int j = 25;
необходимо применить функцию
printf("i = %d j = %d", i , j);
Как было описано выше, в кавычках задается формат вывода, перед знаком % записываются символы, которые будут непосредственно выданы на экран. После знака % применена спецификация d, т.к. переменные i и j имеют целый тип. Сами i и j приведены через запятую в списке аргументов.
Если после знака % стоит цифра, то она задает поле, в котором будет выполнен вывод числа. Приведем несколько функций printf, которые будут обеспечивать вывод одной и той же переменной S целого типа, имеющей значение 336.
Вызов функции printf("%2d", S);
Вывод: 336
В этом примере ширина поля (она равна двум) меньше, чем число цифр в числе 336, поэтому поле автоматически расширяется до необходимого размера.
Вызов функции printf("%6d", S)
Вывод: _ _ _336 (6 позиций)
То есть, в результате работы функции число сдвинуто к правому краю поля, а лишние позиции перед числом заполнены пробелами.
Вызов функции printf("%-6d", S);
Вывод: 336_ _ _ (6 позиций)
Знак «минус» перед спецификацией приводит к сдвигу числа к левому краю поля.
Рассмотрим вывод вещественных чисел. Если перед спецификацией f ничего не указано, то выводится число с шестью знаками после запятой, при печати числа с плавающей точкой перед спецификацией f тоже могут находиться цифры.
%6f – печать числа с плавающей точкой в поле из шести позиции;
%.2f – печать числа с плавающей точкой с двумя цифрами после десятичной точки;
%6.2f- печать числа с плавающей точкой в поле из шести позиций и двумя цифрами после десятичной точки.
Примеры:
float а = 3,687;
float b = 10,17;
Вызов функции printf("%7f %8f", a, b);
Вывод: _ _3.687_ _ _ _ 10.17
Как видно из примера, лишние позиции заполняются пробелами.
Вызов функции printf("%.2f %.2f", а, b);
Вывод: 3.69 10.17
В первом числе третья цифра после десятичной точки отброшена с округлением, т.к. указан формат числа с двумя цифрами после десятичной точки.
Вызов функции printf("%7.2f %e", a, b);
Вывод: _ _ _3.68 1.017000е+01
Поскольку для вывода значения переменной b применена спецификация е, то результат выдан в экспоненциальной форме. СКАЧАТЬ