cstdio is the header file that contains all of the old C functions to print stuff and write to files (printf(), fprintf(), fopen(), etc). iostream contains all of the C++ streams to do that same thing (more easily IMO).
printf is bad old C, cout is C++.
When you have both the C and the C++ ways use the C++ one, it is safer
printf uses variadic arguments which don't check the argument type and it can't be overloaded for new types
both are header files used by the C++ complier to perform input and output functions
iostream includes c++ keywords for input and output
cstudio.h includes c keywords(prinf..etc) and as c keywords can be used for c++ compiler so we can use both headers for input and output.....
you can use the keywords of c in c++ but the reverse is not always true......