The Art and Science of C is specifically designed to teach introductory programming using ANSI C. Roberts uses standard software engineering strategies-procedural abstraction, modular decomposition, and information hiding-from start to finish. What is unique about this book is Roberts' use of libraries. This method has two advantages. First, Roberts uses the libraries to emphasize the techniques of procedural abstraction, modular development, and information hiding, which are essential tools for the professional programmer. By emphasizing these concepts from the very beginning to the text, students develop the skills necessary to manage complexity when it arises.
Second, the text makes the material easier for students to learn. Early in the book, Roberts introduces several new libraries that hide details from the students until they are ready to use them. The libraries give the students the power to write useful programs that they could not yet develop on their own. Later chapters reveal the implementation of those libraries, thereby allowing students to appreciate the power of abstraction. With this text, Roberts provides you with everything you'll need to manage C's inherent complexity.
The library interfaces and associated implementations are reprinted in Appendix B of the text.
All supplemental material available on-line.