I disagree, #include <stdio.h> implies a system which has a stdout or stdin.
That is not necessarily a case for embedded systems, where maybe at most you can blink an LED as a form of user output.
I don't disagree, but the compiler could insert it automatically when you need it. In those rare cases where e.g. you want to use a function called printf() that's not the standard printf(), you explicitly opt out of the default via a compiler argument, a #pragma, etc.