Спецификатор точности следует за спецификатором минимума ширины поля (если он есть). Он состоит из точки, за которой следует целое число. Его точное значение зависит от типа данных, к которым он применяется.
При применении спецификатора точности к вещественным данным, используя спецификаторы %f, %e или %Е, он определяет число выводимых цифр в дробной части. Например, %10.4f выводит числа, по крайней мере, с длиной строки в 10 символов, причем под дробную часть отводится 4 символа. Если не указать точность, то по умолчанию используется шесть символов.
Когда спецификатор точности применяется к %g или %G, он определяет число значимых цифр.
Применение спецификатора точности к строкам ограничивает длину строки. Например, %5.7s длиннее, чем максимальная указанная ширина, оставшиеся символы отбрасываются.
Когда спецификатор точности применяется к целым типам, он указывает минимальное число цифр, отводимых под каждое число. Для достижения требуемой длины к числу добавляются нули.
Следующая программа иллюстрирует применение спецификатора точности:
#include <stdio.h>
int main(void)
{
printf(“%.4f\n”, 123.1234567);
printf(“%3.8d\n”, 1000);
printf(“%10.15s\”, “This is a simple test”);
}
В результате работ программы получаем:
123.1235
This is a simpl