Как я могу отобразить двойной какКак отображать большие двойные числа без научной нотации в C?
5000683
Вместо 5.000683e6
в C?
Я пробовал %d
, %g
и %f
, но безрезультатно.
Как я могу отобразить двойной какКак отображать большие двойные числа без научной нотации в C?
5000683
Вместо 5.000683e6
в C?
Я пробовал %d
, %g
и %f
, но безрезультатно.
Похоже %f
работает просто отлично:
#include <stdio.h>
int main()
{
double d = 5000683;
printf("%f\n", d);
printf("%.0f\n", d);
return 0;
}
Выход этого кода будет
5000683.000000
5000683
Второй printf()
оператор устанавливает точность до 0 (предваряя f
с .0
) в избегать любых цифр после десятичной точки.
Спасибо! '.0' решила проблему конечных нулей. – WhiteFlameAB
['% f': no научные обозначения] (http://ideone.com/rukF3A). Вы можете указать [точность] (http://en.cppreference.com/w/c/io/fprintf), если вам не нужны цифры после десятичной точки. – user2357112