Problem Solving and Program Design in C teaches a disciplined approach to prob
lem solving, applying widely accepted software engineering methods to design
program solutions as cohesive, readable, reusable modules. We present as an
implementation vehicle for these modules a subset of ANSI C—a standardized,
industrial-strength programming language known for its power and portability. This
text can be used for a first course in programming methods: It assumes no prior
knowledge of computers or programming. The text’s broad selection of case studies
and exercises allows an instructor to design an introductory programming course in
C for computer science majors or for students from a wide range of other disciplines.