%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 применена спецификация е, то результат выдан в экспоненциальной форме. Следует отметить, что, если ширина поля меньше, чем число цифр в числе, то поле автоматически расширяется до необходимого размера.
Как было отмечено выше, в управляющей строке могут содержаться управляющие символьные константы. Среди управляющих символьных констант наиболее часто используются следующие:
\b – для перевода курсора влево на одну позицию;
\n – для перехода на новую строку;
\t – для горизонтальной табуляции;
Предположим, в результате работы программы переменная i получила значение 50.
Вызов функции printf("\t ЭBM\n%d\n", i);
Сначала выполнится горизонтальная табуляция (\t), т.е. курсор сместится от края экрана на 8 позиций, затем на экран будет выведено слово «ЭВМ» после этого курсор переместится в начало следующей строки (\n) затем будет выведено целое значение i по формату d, и окончательно курсор перейдет в начало новой строки (\n). Таким образом, результат работы этой функции на экране будет иметь вид:
_ _ _ _ _ _ _ _ ЭВМ
50
7) ОПЕРАТОРЫ ВВОДА
Для форматного ввода данных используется функция:
scanf("управляющая строка", аргумент1, аргумент2, …);
Если в качестве аргумента используется переменная, то перед ее именем записывается символ &. Управляющая строка содержит спецификации преобразования и используется для установления количества и типов аргументов, спецификации для определения типов аргументов такие же, как и для функции printf.
Если нам надо ввести значения для переменных i (целого типа) и а (вещественного типа). Эту задачу сможет выполнить функция: scanf("%d%f", &i, &a).
В управляющей строке спецификации трех типов могут быть отделены друг от друга различными знаками, в том числе и пробелом. Следовательно, при занесении значений переменных необходимо использовать указанный разделитель. Если функции не отделены одна от другой никакими значениями, то значения переменных заносятся через пробел.
/*
* Пример решения квадратного уравнения
*/
#include