Problem Solving and Program Design in C is one of the best-selling introductory programming textbook using the C programming language for beginning programmers. It embraces a balanced approach to program development and an introduction to ANSI C. and provides a gradual introduction to pointers and covers programming with functions early in the text. In later chapters, students learn to implement fundamental data structures such as lists, stacks, queues, and trees in a language that fosters their understanding of stack- and heap-dynamic memory allocation and programmer-controlled pointers. To enhance students learning experience it offers the right amount of pedagogical features that include end-of-section and chapter exercises, examples and case studies, syntax and program style display boxes, error discussions and end-of-chapter projects.