Functions break large computing tasks into smaller ones, and enable people to build on what others have done instead of starting over from scratch.
C has been designed to make functions efficient and easy to use; C programs generally consist of many small functions rather than a few big ones. A program may reside in one or more source files. Source files may be compiled separately and loaded together, along with previously compiled functions from libraries.