Functions allow programmers to break programs into reusable pieces of code. The C programming language includes standard library functions like printf() that are predefined in header files to perform common tasks like output. Programmers can also define their own custom functions to encapsulate and repeat code for specific purposes.