in reply to F***ing sprintf rounding - how does it work?
See also Is this odd behavior a floating point problem?