Functions let you chop up a long program into named sections so that the sections can be reused throughout the program. Functions accept parameters and return a result.
C functions can accept an unlimited number of parameters.
In general, C does not care in what order you put your functions in the program, so long as a the function name is known to the compiler before it is called. We have already talked a little about functions. The rand function seen previously is about as simple as a function can get. If you accidentally put one in, you will get a huge cascade of error messages from the compiler that make no sense. They tell the compiler that you are declaring a function rather than simply declaring an int.