Значение, которое вы видите в обоих случаях, одинаково, поскольку в случае, если точность не указана, оно принимается равным 6.
Кроме того, согласно расширению аргумента по умолчанию, любой тип с плавающей запятой будет повышен до double
, что также является требованием для спецификации преобразования %f
.
Цитирование C11
, глава §7.21.6.1, для спецификатора формата f
, ( выделение мое )
Двойной аргумент должен быть преобразован в десятичную запись в стиле "[-] ddd.ddd", где количество цифр после символа радиуса равно спецификации точности. Если точность отсутствует, она должна быть принята за 6 .
Если вам нужно больше цифр после десятичной точки (больше точности), вам нужно явно указать значение для точности больше 6.