I've read that printf's %f specifier is used for double and that it automatically converts float to double. But I couldn't find any proof in books (though it's stated on the web).
I don't have access to a copy of the ANSI C standard files and I couldn't find the specific place in the glibc source code. I have searched in "The C Programming Language, 2nd Edition".
I need to have something for ANSI C specifically.
As effeffe pointed out, there is a paragraph in the C89 standard, 3.3.2.2 which states what I was looking for. In C99 it's just a different paragraph.