Я должен произвести числа в экспоненциальном представлении, таким образом, что всегда существует "0" перед десятичной точкой.
например, Для номера x = 134.87546, я должен произвести вывод 0.134875E03 НЕ 1.348755E02
Кто-то знает, как сделать это?
Заранее спасибо - Шираз.
int exp = (int)log10(input)+1;
double shifted = input / pow(10.0, exp);
printf("%fE%d", shifted, exp);
int exponent = floor(log10(num)) + 1;
, то просто напечатайте «0.», номер без десятичных действий », E ", то показатель.
Вы можете исследовать с использованием библиотеки формата форматирования , которая является общей библиотекой форматирования вывода.