What's the point and are the input data actually in that format? I'm guessing not based on your description of the symptoms. On input there should be no need for the precision; the %f is sufficient to handle any legitimately-formed floating point value on its own. That said _IF_ (the proverbial "big if") the data are formatted that way, then it should work (and I think, theoretically it should anyways as explicit decimal points and exponents, etc., should override the format specification, but why make it more difficult than needs be?