This causes the compiler to read the header file stdio.h which declares and/or defines a number of symbols and functions such as NULL, printf(), stdout, stdin, stderr, etc. These are necessary for general I/O (input/output) actions that all programs need to perform. On Linux/Unix and similar systems, this file is found in the directoryo /usr/include. Not sure where it is on Windows, but it would depend upon the compiler you are using.
preprocessor directive which tells the compiler that add these things in file before compilation (a program runs before compilation just for the preprocessor dircetives) as there are many things which compiler will get after including those files like declarations, functions prototypes etc.... ;)