This looks like a bug in gmp_printf. The exponents returned by mpf_get_str looks reasonable. For some reason, gmp_printf emits many extra zeros. Follow-ups to bug-gmp, please. -- Torbjörn