The C Programming Language - Kernighan, Brian W. (Prentice Hall, 1978)
The book is meant to help the reader learn how to program in C. It is organized as follows: Chapter 1 is a tutorial on the central part of C. Chapter 2 deals with the basic data types, operators and expressions. Chapter 3 treats control flow: if-else, switch, while, for, etc. Chapter 4 covers functions and program structure - external variables, scope rulers, multiple source files, and so on - and also touches on the preprocessor. Chapter 5 discusses pointers and address arithmetic. Chapter 6 covers structures and unions. Chapter 7 describes the standard library, which provides a common interface to the operating system. Chapter 8 describes an interface between C programs and the UNIX operating system, concentrating on input/output, the file system, and storage allocation. Appendix A contains a language reference manual. Appendix B is a summary of the standard library. Appendix C is a short summary of changes from the original language