Preface (slightly abridged)

Dear Reader: Welcome! I hope this Study Guide will provide you with a wealth of opportunities to hone your programming skills in the C language. We will follow each chapter of K. N. King's book and supplement the material with a chapter summary, worked-out exercises, and plenty of programming projects for you to work on and enjoy. Programming in C is challenging, but fun!


How to Use This Study Guide

After reading a given chapter in the main text, you should first tackle some of the exercises at the end of that chapter, especially the straightforward ones. Then read through the first two sections of the corresponding chapter in this Study Guide. They contain a chapter summary and some worked-out programming exercises that show you more on how it's done. All programs in the Solved Exercises sections appear in my World Wide Web Site: http://www.cise.ufl.edu/~manuel/. Or you may request them by e-mail from manuel@cise.ufl.edu. I suggest you compile and run each program, and experiment with them, making changes to see what happens.

By then, if you're taking a course, you'll be impatient to get your feet wet with the programming assignment your instructor has probably given you. Perhaps it's one of those in this Study Guide. The programming exercises generally consist of writing entire programs, or modifying earlier ones to add new features. Most programs should normally take between one and three hours to complete.

I assume you have some prior experience in programming in another language such as BASIC, Pascal, Fortran, or COBOL. If so, it shouldn't surprise you to learn that even professional computer programmers experience a large variation in their productivity. So don't be surprised if you spend much more time than you expected on some aspects of C programming and less on others. In particular, tracking down errors in C can be time-consuming and downright frustrating (defined as having no one to blame except yourself!). In C, it's easy to make subtle and difficult-to-catch errors, more so than in many other languages, including those mentioned above. To avoid as much of this as possible, please pay special attention to the warnings marked in the main text.


Enjoy learning C!


Acknowledgments


First of all, thanks to Kim King for writing such a great book. I wrote part of this Study Guide while on sabbatical leave from the University of Florida, and holding a Fulbright Scholar position at the University of Costa Rica. For that I am grateful to the J. William Fulbright Board, the Council for the International Exchange of Scholars in Washington D.C., and the University of Florida. While in Costa Rica, Manuel Cerdas and Humberto Hernandez contributed many ideas that helped shape this Study Guide. Finally, there are always those special people that keep it all in perspective: my wife Ligia, and my partner and mentor Adrian Lewis.



M.E.B.
November 1997