注:括号内的书名是英文原名。斜体字的“中”表示有中文版,“英”表示有英文影印版,“E”表示有英文电子版,“电”表示有中文电子版(不包括超星格式),有删除线的表示该版本已绝版。请不要向我要索要电子版,并且大部分电子版属于盗版,慎重下载。同时因为世界总在变化,我不能保证你读到此文时这些信息依然有效。
[Deitel94] H. M. Deitel,《C程序设计教程(C How to Program)》第二版,中。书中错误不少,不知道是原版的问题还是翻译的问题,但至少翻译版的排版一团糟,有点糟蹋好书了。
[Prata04] Stephen Prata,《C Primer Plus(C Primer Plus)》第五版,中E。“Primer”的名头太大了,以至于中文版干脆不翻译书名了。
[Kelley97] Al Kelley、Ira Pohl,《C语言教程(A Book on C: Programming in C)》,英。
[Roberts94] Eric S. Roberts,《C语言的科学与艺术(The Art and Science of C: A Library Based Introduction to Computer Science)》,中英。虽然另类,但有很多创新值得回味。我正在学习他把图形库引入C语言教学的方法。
[Harbison02] Harbison、Steele,《C语言参考手册(C: A Reference Manual)》第五版,英。其实,这本书是有中文版的,但为了您的健康,还是忘掉他吧,阿门……
[Kernighan88] Kernighan、Ritchie,《C程序设计语言(The C Programming Language)》第二版,中英E。这本书被简称为“K&R2”,并被尊称为C语言的“圣经”。Ritchie就是C语言的爸爸。
[C99] ISO/IEC 9899:1999,C标准1999年版,E。被简称为C99。可以这样描述它:“1. C99永远是对的;2. 如果C99错了,请参看第一条。”可笑的是,我们的国家计算机等级考试二级考试的很多题目都是违背C99的。相信Ritchie来考二级也会被郁闷住。
[Kernighan99] Kernighan、Pike,《程序设计实践(The Practice of Programming)》,中英电。中英文对照阅读,又学知识又练英语。
[Linden94] Peter van der Linden,《C专家编程(Expert C Programming)》,中E。这是一本行文非常幽默的书(可惜译文版把很多幽默都搞丢了,这也是没办法的事情),因为书面上印着一条腔棘鱼,所以它在业界被戏称为“鱼书”。
[Maguire93] Steve Maguire,《编程精粹─ Microsoft编写优质无错C程序秘诀(Writing Solid Code: Microsoft's Techniques for Developing Bug-Free C Programs)》,E电。网上很多地方传播的电子版写的名字是《Write Clean Code》,这里替Maguire澄清一下。
[Bryant02] Bryant、O’Hallaron,《深入理解计算机系统(Computer Systems: A Programmer’s Perspective)》,中英E。我一定要说,这本书的中译本是为数不多的翻译精品。
[Koenig89] Andrew Koenig,《C陷阱与缺陷(C Traps and Pitfalls)》,中E电。因为年代久远,书中有些观点已经不合时宜,正好用来练习边读边批判。
[林锐03] 林锐、韩永泉,《高质量程序设计指南——C++/C语言》第二版,中电。我觉得这本书错误观点很多很多,正确的也很多很多,欢迎发表你的看法。
[Weiss96] Mark Allen Weiss,《数据结构与算法分析——C语言描述(Data Structures and Algorithm Analysis in C)》第二版,中。
[Cormen01] Cormen、Leiserson、Rivest、Stein,《算法导论(Introduction to Algorithms)》第二版,英E。
[Knuth98] Donald Knuth,《计算机程序设计艺术(The Art of Computer Programming)》I、II、III卷,中英。凡发现书中错误的第一个读者都将得到作者亲笔签发的2.56美元的支票。Knuth退隐后闲赋在家,江湖风传第IV卷马上出版,他正在写第V卷(计划一共写VII卷)。但愿你不要让Knuth的写作速度大于你的阅读速度。