-- Programming Language Books and Training

 C C++ Java

Books by K. N. King

Books by K. N. King
Short courses
Recommended books
Recommended links

C Programming: A Modern Approach

Comments by Instructors and Readers

To add your own comments, please email me.

Comments by Instructors

I think you have made available the finest C Programming textbook yet. The fact is last quarter I chose a book (don't ask why) that was the most despicable waste of wood pulp I had ever seen. Now I feel like I've won the lottery. Last year I picked the number one and number four performing stocks in the San Francisco Bay area and they were the only two I picked. I'm quite certain I've recognized another winnner. Congratulations. —Scott Gever, CTIS Division, Foothill College

Having discovered that by reading your book carefully I can become famous [by reporting errata], I noted everything as I went through the rest of it. This was no hardship, as it's certainly a pleasure to read, but it's still a little disappointing that the pickings were so slim. ... Great book! —Jim Clarke, University of Toronto
Let me commend you on your excellent book which just came across my desk last week!! The exposition is very elegant (as is the way that Norton put it together) and thorough - with no hint of the programming tutorial "how-to" style. The preview of C++ - and the issues about C failing to manage the desired opaque client/server interface thoroughly enough - are very nicely described. I like also the sections on preprocessor directives and program development. —Kenneth R. Kaplan, Rutgers University
I have recently received a copy of your new book C Programming: A Modern Approach. While I have not read it completely I have been most impressed, it is as excellent as your Modula-2 book. I really like the exercises at the end of each chapter, especially the non-programming questions. —Paul Pospisil, Mount Royal College, Calgary, Alberta, Canada
As textbook on C, we have earlier used the Kernighan-Ritchie "bible" (which is also available in a Swedish translation) but we have also tried a number of C textbooks over the years. I got ahold of a copy of your "C programming, a modern approach" this summer and immediately liked it. This year we use your book for the students of engineering physics and though we have only completed one-third of the course I can already say that everybody seem very pleased with it. The students find it clear and easy to read and me and my collegues appreciate that it emphasizes a good ("modern") style of C-programming. —Prof. Orjan Ekeberg, Department of Numerical Analysis and Computer Science, Royal Institute of Technology, Stockholm, Sweden
I am on the faculty in Comp Sci at the University of Toronto, and I have used your C book in several courses. It is a *wonderful* book. I particularly like that you explicitly address so many issues that are never brought up in other books -- "why are there 3 ways to do this, and how would I choose among them?" and so on. My students have also loved the book. —Diane Horton, University of Toronto
The book is perhaps the best book I have seen in the past 10 years on C programming. —S. Ravichandran, De Anza Community College
I found out about your book through It was a huge job just finding a book that I could understand. Even though I've taught microassembler, RPG, and BASIC, I could not understand the C texts that the usual publishers sent me. Thank you for a good, solid, logical approach. I've never seen such a well organized book on any subject.—Karen Moran, Quinebaug Valley Community College
I would just like to thank you for your C Programming book. I teach C programming to 2nd year BSc undergraduates and had spent all last summer planning the course and trying to find books to recommend. Not only did yours look one of the best to use, its ordering was almost exactly the same as I had planned before I had seen your book. Great minds think alike... or perhaps I aspire to greatness. The feedback I have so far from other readers of your book is also very positive.—David Bennett, Department of Mathematics and Computing, Canterbury Christ Church University College, U.K.
After careful review of many textbooks for my Programming I course (CS131) for the spring '03 semester, I have decided to adopt your book. I find that the book has wonderful examples and the concepts are clearly written and easy to understand. Many reviews pointed to your book as one of the best. I agree.—Rich Huebner, Eastern Nazarene College

Comments by Readers

Although I only up to page 44 at this moment, my enthusiasm for what I've seen thus far compels me to write this note. Unless the quality of what I have encountered thus far suddenly nosedives, I think it is fair to state that you have indeed written the second book that should be in a C programmer's library. I must admit that the phrase "destined to be a classic" [on the back cover] made me skeptical until I began my very careful sequential reading. Again, barring an unanticipated drop in quality of content beyond page 44, I concur that you have indeed authored a classic.

Here are some of the initial things I've encountered that led to my exceedingly favorable reaction:

1). The bibliography is just the right size. With the exception of Stroustrup, every one of the books cited there has the distinction of bearing coffee stains, tattered bindings, yellow-highlighted text and other evidence of frequent use in my rather extensive library of books devoted to C. There's no fluff in there at all and nothing is missing that I consider essential.

2). Your handling of main()'s return value (as you know - a litmus test for heretics on c.l.c [comp.lang.c]) early on in the book is done to perfection. Unlike a big selling author's approach that really only adds to confusion later on, you do it exactly the right way.

3). With the possible exception of Plauger, I don't think I've ever seen a better explanation of exactly how scanf() works. As I mentioned, I've been carefully reading from front to back (with the exception of the bibliography) and if your treatment of scanf()'s inner workings is typical of things to come, I am going to get a lot out of this book...even though I am a seasoned C programmer.

... To end this message on a personal note of praise, I actually skipped watching the television program "Walker, Texas Ranger" tonight because I found your book so damned interesting! Having _anything_ divert my attention from that show (about the only non-sports program I view) is no small accomplishment. —Bob Nelson

If I failed to tell you that my comments still stand after the reading whole book, let this be that notification. I'll also add that I am now tutoring an individual wishing to learn C. (He already is adept in assembler for embedded systems.) I told him there are two must have books to supplement my training: K&R and King. —Bob Nelson
I am using your C: A Modern Approach to teach myself the C language. I must say your book has been very helpful to me. The only language I really know to any degree of competence is unfortunately RPG/400 on the AS/400 platform, which is what I do for a living. I've been trying to teach myself C for about a year and have, for the most part, failed. However I believe I'm on the road to success using your book. —Don Smar
The book you made is the best I have ever read. I would recommend it to anybody who is learning C on his own. —Nicholas Janzen, The American School of The Hague
I have recently purchased your book, "C Programming, A Modern Approach", and am in the process of using it to teach myself C. Although I am currently only on chapter 4, I would like to congratulate you on your entertaining and clear writing style. I was at first a bit surprised at your choice of chapter structuring (we don't get to loops until chapter 6!), but am finding that simple concepts, such as printf and scanf, which were glossed over in other books now are much clearer to me. ... So far, the book deserves great kudos for its clarity and readability. (Hopefully it will continue so through the chapter on pointers!) —Inna Nirenburg
Purchased a copy of your book today upon the recommendation of someone who responded to one of my USENET postings. A very clear and concise text! I am attempting to teach myself the language -- was using Kochan's book: PROGRAMMING IN ANSI C. which is fairly good (it was a required text @ DePaul University in Chicago for their Accelerated Programming School) but lost me when it got into pointers and bit operations. Looking forward to working through your text. —Greg McNichol
I finally got my copy of your book "C Programming, A Modern Approach". I have read through the first one hundred pages or so and I want to say that I find it very well written. It is written for someone like me who has limited programming experience yet contains as much detail as one could require. —Dwight Reed
I came across the page on your book, and I wanted to tell you that I really like your C book that we are using at my school, UC Davis. It's really easy to understand, especially with all of the examples. —Tim Tully
I like your book a lot. This is the second time that I have tried to learn C and I feel that this time I am making real progress. I particularly like your approach of introducing parts of a topic and forgoing more complicated aspects of the topic to the Q&A or to later sections of the book. The books that I previously used were written by authors who felt compelled to cover every aspect of a topic within the limits of a chapter. So, for instance, all aspects of arrays -- no matter how confusing or arcane -- were covered in the chapter entitled "arrays." If I do get a handle on C, it will be thanks to your efforts. Thanks for your fine book. —William L. Spitzig
Your book is a beautiful instrument. And I thank you. —Harry D. Jeffery
C Programming: A Modern Approach was without doubt, the best C book I have yet come across. Congratulations! —Walter Pahk
Some months ago I asked for help about C programming on comp.lang.c and you answered to me suggesting your book "C Programming: A Modern Approach." I have read your book, and now I thank you. Thanks for your suggestion, and thanks for your book. It's clear, easy to read and understand, even if my English is poor (as you can see!). I'll recommend your book to anyone who asks me for the best C book. —Andrea Riciputi
C Programming: A Modern Approach ... is a great book and one of my indispensable references at work. —Chris Jiang
Thank you for your excellent text on C Programming. I am currently using it to refresh my C skills and it's one of the most helpful programming books I've ever used. —J. Collins
Thanks for recommending your book. Out of the several responses I received from various people on the newsgroup, your book is far and above the rest. I am actually beginning to understand C, and I've even been able to author my first usable program in C. —Rob Snodgrass
I am currently taking an Introduction to C class through the University's extension program. The instructor selected your book as the text for the class, and I could not be happier with his choice. Your book is simply outstanding - best of breed in my opinion (and I've flirted casually with quite a few different books on C). Your writing style is clear, concise, organized and approachable. You have made the intimidating prospect of learning C much less so with your thorough, non-presumptuous explanations, and for that I am grateful. My only regret is that it I did not encounter your book years ago. Many thanks. —Dave George
May I finish by congratulating you on such an incisive book. I hope to order it for class use next year. Already I have been showing it to students interested in C - my copy is quite coveted! —Eric O'Donnell
Thanks for your wonderful book - the best computer book I've ever read. —William Baruch
I'm busy reading your "C Programming - A Modern Approach" text book and think it is absolutely great. —Chris Smit

Let me start out by saying that your C book is one of the best I have ever seen on any programming language. There is a certain fluidity to your expository style that is highly uncommon. Going through your book, one clearly gets the impression that you did not assume that your reader would be a dolt. In short, you have written intelligently for the intelligent reader. I'm recommending your book to anyone and everyone who wants to learn C and that includes my own daughter. —Avi Kak, Professor of Electrical and Computer Engineering, Purdue University
I've just started reading your C Programming book yesterday and I really love it very much. I really like the Q & A sections. I think your book is the best! I have never found any C book that is well organized, easy to read, and has many great examples like yours. —Jimmy Setyo
I like your book "C Programming - A Modern Approach" very much and I think it is one of the very few best C books I have ever seen. —Dar Peng
I learnt C from your book 'C Programming - A Modern Approach' and it is the greatest book on programming that I ever read. I loved the way you quietly gave us the underlying concepts that let us draw other conclusions from the information. —Motti Mezei

I would like to thank you for your excellent publication, C Programming - A Modern Approach. I was introduced to it while taking a course in C at the Berkeley Extension Center. After looking at much of the "schlock" that is available, I found your book to be quite thorough and very well laid out. —Emil Varona

I am in the process of reading your book and can sincerely say it is worth the high praise it has received. —"Grassy Knoll"
I just a copy of your book today and I am ready to program. I think your style is very informative and easy to understand. And it's not overloaded, it actually gives me a challenge to think ahead, before your explanation follows. —Burk Mayer

I'm writing because this is about the hundreth time I've wanted to find out about something, looked in the index, and found it. I'm a first year Comp Sci student, so I don't really have enough knowledge to comment on the whole book, but it definitely has the most useful index of any computer related book I've ever read. Well worth $65 Canadian. Thanks.

P.S. By the way, the index wouldn't be so nice if it didn't point to decent information. —Tim Sanderson

I want to compliment you on your book, C Programming: a Modern Approach. I find it to be the best expository C book I've encountered. In fact it cleared up alot of questions I've had about the C language. I would go so far as to say that it was only after reading your book that I became a true C programmer. Previously I used K&R, 1st ed., as my teaching guide. I'm sure you can appreciate what a struggle that was! However, after my experience with your book, I found that I actually appreciated the programming examples in K&R (I now use the 2nd. ed.) and more importantly understood them... I continue to be amazed at just how thorough your C book is... The strongest point of your C book for me is Chapter 22 (Input/Output). I've been really disappointed with other C books which tend to devote little space to explaining file I/O operations. 'Appendix D: Standard Library Functions' ... makes your C book an invaluable reference after mastering the other material. —Timothy Kallinis
I recently bought a copy of your textbook "C Programming: A Modern Approach" and the accompanying Study Guide. Both are excellent. —Dr. Peter Corvi, Lecturer in Finance, Warwick Business School, The University of Warwick, United Kingdom
I just wanted to say thank you. I'm writing "real-world" 'C' code now, and your textbook is by far the most often used reference I've come across. After taking your ANSI 'C' continuing Education class, I went out and purchased all sorts of 'C' reference materials, but your book is by far the most readable and understandable book I have seen. Appendix D is worth it's weight in gold. Just the function descriptions themselves are worth the purchase... Keep up the good work. It is appreciated. —Scott Davis

I have been using your C book for self-study. I missed the summer class at UCLA, where I got it, and it has been EXCELLENT! I am more than one fourth done and I haven't needed to get help on a single thing yet (I work in QA in a software co., so there is lots of help). It is great. —Jason Jackson, Integrated Decision Systems, Los Angeles

I'm enjoying your book. It appears to me (a technical writer) to be very well written and informative. It's vastly superior to the other two books I've perused on C. —Mark Weaver

I really like your book C Programming, a Modern Approach. I find it very clear and easy to read. That is something very rare in technical and computer books. I am a computer programming student at Santa Fe Community College in Gainesville, FL and I found your book through a friend of a friend who is using your book in her C class at U of F. Your book on C is saving me in my C class. I would like to thank you for taking the time to write such a good book. You must be a very good person. Extraordinarily good. If others would write textbooks as well as you, the world would change dramatically. Education could begin. Thanks again. Bless you and your wonderful work. Continue to do great deeds.

P.S. I passed an open book test in my C class using your book because I could quickly find what I needed, that I couldn't find in my required textbooks. —Steve Littler

Your text ("C Programming -- A Modern Approach") is a wonderful gift to students of the C programming language. Thank you for writing it. Unlike most books about C, yours actually communicates and teaches, and does both well.

I am taking courses at a local college (Tunxis, in Farmington, CT) on a variety of computer programming languages after 20 years of practicing law. C is one of those languages. Although classes usually are helpful, much of the learning comes from books and practice programs. So when studying a language I look for books (in addition to the course's "assigned text") that can communicate to me and teach me something. For most languages, there are a variety of such books; but not for C. Most books on C seem to be written by people who, although I am sure they are expert at C, seem to lack much ability either to communicate or to teach, or both.

A good teaching text must communicate or foster *understanding* in the student. That requires a lot more than just accurately writing language rules or making statements that are true. In other words, this requires a lot more than just providing accurate data. It requires among other things that the author address what is and is not going through the student's mind, things that cause confusion, things that impede understanding, etc. The author of a good teaching text must write what is necessary to convey actual comprehension to the student. Ideally, the book will help the student achieve some "Eureka! I got it!" moments. Your book does those things quite well. It actually teaches, and with a somewhat conversational and slightly humorous tone. But it actually gets the concepts across.

The texbook used for my course in C is very poor in these regards. I had searched in vain for a good "teaching" book. I bought several that I thought were the best of a bad lot; I was desperate, as C is not intuitive or easy for me. Then my daughter, who at the same time was taking a course in C at the University of Maryland, brought home her textbook (yours) over the Thanksgiving break. In my quest to find a decent C text, I looked at hers. It took about two minutes for me to realize how good your book is, and I now own a copy.

Unlike novelists, textbook authors don't get enough credit when they do an outstanding job. Your book is superb, top notch. And it must be difficult to do that with C, because many other C text authors seem to have been unable to do it with anywhere near the success you have. You are in league by yourself. If you teach classes with the same ability that you write about C, your students are very lucky indeed (even if most may not realize it). Again, thank you for writing that book. Your efforts are appreciated. —Richard Garrison

After having tried so many books to learn the C programming language, I am pleased to say that your book is the best. I've used Learn C in 24 hours and Teach Yourself C in 21 Days, both with minimal results. I have been cracking away at learning C for the past month or two. Finally as a fluke while sitting in a bookstore I discovered your book. I've only read about 2 chapters and I can finally say "I understand what I'm reading." Your spiral approach to teaching C is very helpful. Coming away from reading the book and discovering that I understand what I just read is a great feeling.

I am in the unfortunate position that if I want to learn a new programming language or any programming for that matter I have to do it on my own time. I work full time and financially am not in position to learn C in a classroom environment. So as a self taught student I find your book gives me my dollar's worth. I really can understand C and even things that are in C, that are used by other languages.

I really do appreciate the great book you wrote and all the time you put into it. I will put as much time as I can into learning what I can from it. I thank you once again. My only wish is that I could have had you for a teacher, though your book is the next best thing. —Jason Smith 

I'm a Computer Science/Engineering student at the University of Connecticut. I'm currently finishing my Junior year. I'm writing to compliment you on your book "C Programming : A Modern Approach". I must admit, my compliment is rather tardy as I've had the book for over three years now (since I was a freshman, C was used as the second programming language, Pascal was the first). What prompted me to take the book off of the shelf was that I'm now taking a class on compiler theory, in which the term project is to develop the forward end of a compiler. We are allowed to choose whichever language we wish to write the compiler, as well as whichever language we wish to translate. I've chosen to write a C compiler in Java. Therefore, I've taken out your book again and begun to refresh on C. With the benefit of my experiences since freshman year, I'm truly impressed with the quality of your book; I've found it rather rare to have a good textbook on programming! Congratulations! —Andrew Miner
I'm almost done scanning the book for the first time. As I had hoped, many secrets have been revealed. Better yet, there is much advice that will help my programming in **any** language. (I've worked with Perl, mostly. There are many references to C in Larry Wall's 'Camel' book that make sense now.) Thanks for this excellent work.—Mark Krautheim, GE Aircraft Engines, North Clarendon, Vermont

King covers the C language in ordinary English, which allows the book to be an easily comprehensible and reliable source. I really enjoy reading his book.—Alexander Forero

I love C: A Modern Approach. I've recommended it to many people and I'm on my fourth time through it right now. I've used it so much it's falling apart!—John Babich
I just wanted to let you know that your books "C Programming: A Modern Approach" and "Java Programming: From the Beginning" are phenomenally great. Your style of explaining things is simply the best. Keep up the outstanding work.—Dr. Jeffry Padin, The Aerospace Corporation
We used your book for the Programming I course at our university (University of Central Oklahoma, Edmond). The book is very well written! If I have to pick one feature over all the others that I like about the book it would definitely be the Q&A section at the end of each chapter. I also love the epigrams at the beginning of each chapter.—Amar Gunda
I wanted to write you to say thank you for your book, "C: A Modern Approach." Within the past 10 months, I've developed a growing interest in programming and have been trying to self educate myself. Although I had heard it was a difficult language to learn and master, I thought I'd try my hand at C. I purchased K&R2 and some others that I had heard were good beginner's books for C. While I have to admit that I've tried using these other books while carrying a full-time work schedule and a full-time academic schedule, I found the material to not be quite helpful enough. I picked your book off my shelf (I had purchased it nearly a month ago now) yesterday afternoon and am about to finish Chapter Four and can't wait to jump in to some of the more detailed material. I find myself reading it while waiting for stop lights to change. Whatever you have done with this book, please keep it up. I'm eventually going to make my way to Java and, although I already have the Sun Java tutorial book, I will be purchasing a copy of your Java book as soon as I feel comfortable with my C abilities. Again, thank you much. I believe with the impetus I've gained from reading your book, someday I may be able to actually sit down and write some usable C. —Tony Yelacic
I am currently working my way through your excellent book "C Programming: A Modern Approach." It is by far the best I have tried to date. "Learn C in 21 Days" appears to teaching much non-ANSI C in a style that many far more knowledgeable than I (alt.comp.lang.learn.c-c++, comp.lang.c) disapprove of. I finished it but realise there are large gaps/misconceptions in my knowledge. K&R2 lost me fairly quickly. That's when I turned to your book.—Paul Rees
This is the book I normally recommend when people express interest in learning C, or learning more about C if they already use it.—Peter Seebach
As a 38-year-old computer science student at a Massachusetts college, I absolutely love your book C Programming: A Modern Approach. I found the book to be quite informative, and along with the study guide, both are exceptional. I look forward to my first object-oriented class this summer, and because of your books, I am prepared to do so.—Brian Scheufele
Just thought I'd let you know that we're using your C Programming: A Modern Approach as a textbook in two of the computing courses at the University of Missouri - St. Louis (and I enjoy the book a lot!).—Bryan Cool
I am a student at Brooklyn College who is currently enrolled in a CIS class. We are using your book, C Programming: A Modern Approach. I happen to like the book very much, the way you explain things is very easily understood and non-threatening, you have a good sense of humor. Thank you very much for the user friendly book.—Carol Chin
Your book is the best C textbook I have! This and K&R are the perfect C learning combination!—Kevin Davis Sr.
They say one should not judge a book by its cover, but in this case however I believe the judgment would be correct. C Programming: A Modern Approach is without doubt the best book I have read. Somehow you have managed to make it very easy to read — and in fact pleasant to read. You have a great talent for teaching and writing, thanks for using it.—Marius Aursnes
I enjoyed your book "C Programming: A Modern Approach." This is the best book I ever read. Thanks for such a good book. In fact, I never showed so much passion to any book other than "The Dilbert Future" until I read yours.—Wong Hoi
Your book C Programming A Modern Approach is the best one I have ever read (I have, already, read many books on C). You can, also, add that you are one of very few authors who answers their reader's questions and comments. My experience with most of the authors is "very sad".—J.Veichselfish
I just wanted to tell you that your book is a wonderful change from the typical book on programming. I simultaneously had two friends tell me that yours is the one to read to learn C—and this is after I read the O'Reilly book and K&R. Your book covers everything with an amazingly concise clarity—while being advanced enough to give insights into the deeper issues. It is a wonderful jumping off point for a project I'm working on with wireless cards and Linux—meaning lots of device driver code and kernel code. I can actually look through this code and slowly but surely understand it! Thanks for the book! Keep writing them...—Mike Biglan


Copyright © 1999-2009 K. N. King. All rights reserved.