The preprocessor directive #include inserts the contents of header files into the source code. Common header files include stdio.h, stdlib.h, and math.h. The #define directive defines macros that are replaced before compilation. Functions in math.h perform mathematical operations on double values. Functions in stdlib.h provide common utilities like converting strings to integers with atoi() and generating random numbers with rand() and srand().