In mathematics, a function is a set relating input variables uniquely to output variables. In C programming, the word function is used differently, inasmuch as the functions in C programs may have side effects, or may not produce consistent outputs for all inputs, or may not even produce outputs at all. Accordingly, many authors of books on programming prefer to use the word procedure instead of the word function. Recognizing, however, that the word function is solidly entrenched in the vernacular of C programming, this book uses function throughout.