当前位置: 华文星空 > 知识

既然谭浩强的c语言教材那么烂,那么应该选择什么书作为c语言教材?

2015-10-25知识

今天来看谭浩强的【C程序设计】的确是本彻头彻尾的烂书,这一点毫无疑问,讲真我当年学C语言也被这本书绕进去了,一时间弄得我反复学习居然连指针都理解不了。

相信以上观点知乎上99%的人都会支持吧,但是很多人开始怪谭老,这个方向就不对了,甚至各种讽刺谭老,其实这真的是怪错了人。

计算机行业发展迅猛、新旧更替以年计、甚至以月计!

C语言是1972年问世的,彼时谭浩强已经38岁了,1989年C语言完成第一次标准化,谭浩强这个时候已经55岁了,1991年,谭老在57岁高龄写出【C程序设计】,彼时还真不算太落后。1999年,C99标准才出来,这时候谭浩强已经65岁了,也很难有精力再去高速的迭代他那本书了。

2000年之后,经典的C语言书籍层出不穷,甚至可以用百花齐放百家争鸣来形容了,老谭的书已经毫无竞争力了。

问题来了,谁是坑学生们的罪魁祸首?答案不言而喻了吧!

是那些偷懒的大学、那些偷懒的大学教授,不假思索的继续沿用一个上世纪90年代的教材,全然不顾计算机行业的飞速发展和经典计算机书籍的层出不穷,抱残守缺、因循守旧、冥顽不灵、顽固不化!

是这些人坑了无数学生,让很多人看见C语言就瑟瑟发抖,甚至直接劝退了无数计算机学子。

为了省事轻松,直接用【谭浩强】的大学和大学教授们才是毒害中国大学生的罪魁祸首。

知道谭老这本书发行了多少册吗?

1000万!!!

这还是很多年前的数据了,差不多中国计算机专业的学子都被坑过,这真的可以说是贻害无穷!

那么回到题主的问题,应该使用什么书作为C语言教材呢?

这点我还真不敢妄断,推荐四本我认为非常经典的C语言书籍吧,可以说每一本都要秒杀【C程序设计】和【xx天入门C语言】10倍以上:

1.【C和指针】

推荐理由: 这是一本C语言学习的相当不错的书籍。尤其是对于刚刚入门的学习者。它涵盖了C语言的全部内容,特别注重指针的讲解,除了头尾的几章,指针的话题几乎是贯穿了全书。正是指针使得C语言如此之强大,所以要学习C语言的精髓,就是要精通指针!不应当像java或者pascal那样禁用或者限制指针。当然,设计语言时限制指针也只是一种权衡,牺牲了效率却是使得编程人员更容易保证程序的安全。指针的特点就是高效、灵活。

本书的每一章后面都有「总结」「警告的总结」和「编程提示的总结」三个小节,这个特别好。「总结」是对本章的内容上的回顾,而后面两个是一些经验性的东西,相当宝贵。

这里介绍的书籍我都打包整理好了。 我把大学和工作中用的经典电子书库(包含数据结构、操作系统、C++/C、网络经典、前端编程经典、Java相关、程序员认知、职场发展)、面试找工作的资料汇总都打包放在这了, 点击下方链接直达获取:

2.C prime Plus(入门首选)

推荐理由: 强力推荐的一本C语言入门书籍,626页可以让你在C语言的世界里畅游很久,风趣幽默的文笔让人心情愉悦。这里要感谢云巅工作室精彩的翻译。这本书真正的诠释了入门书籍的概念,却又可以为你指出深入的方向,让你在继续前进时不至于迷茫。(作者不仅阐述了语法中正确的形式,同时也即尽可能的阐述读者错误的代码可能会出现的问题,这一反一正相得益彰,值得多次品读)60元的价格也绝对对得起它的价值。

3.【高质量程序设计指南】(必看)

推荐理由: 国人所写的C++技术书籍大多很坑爹!难得这本是个例外,值得一读,尤其是对计算机系毕业生而言。这本书出自经验丰富的一线软件工程师之手,比某些大学里闭门造车的教授们东拼西凑的教程强太多了!

本书也就定位在初、中级C/C++技术水平。你不可能通过本书学会C++,也不能读过此书就精通了C++,这本书只是众多C++技术书籍中值得你阅读的一本。

真有不少公司就是用该书后面的C/C++测试题做笔试题,虽然这对没读过这本书的同学有些不公平。不过如果真理解了那些测试题,对C++初学者的帮助也是很明显的。

虽然这本书的缺点也有不少,比如说文风不够简练,某些章节内容冗长拖沓,但瑕不掩瑜这本书仍然是我所读过的、国人所写对C++初学者最有帮助的书籍。

这里介绍的书籍我都打包整理好了。 我把大学和工作中用的经典电子书库(包含数据结构、操作系统、C++/C、网络经典、前端编程经典、Java相关、程序员认知、职场发展)、面试找工作的资料汇总都打包放在这了, 点击下方链接直达获取:

4.【从问题到程序】(最好的高校教材)

推荐理由: 首先是书名,「从问题到程序」,体现了作者的高度和境界。许多初学者经常说「一点思路也没有」。是的,从问题到程序还有相当的距离,仅仅学一点语言的语法是远远不够的。

因此,本书前言中对那种「常见的提出问题,给出解答,再加些解释的简单三步形式」表现出了一种很不以为然的态度。「三步形式」是一种迂腐无效的违背程序设计学习规律的教学方法,很遗憾,这种似是而非的方法居然在国内「主流」程序设计教材中大行其道。

这本书既适合初入门到的小子,也适合相见恨晚的匹夫.这里不得不赞一下老裘借鉴得好,而且里面又简略提到不少CS里面的概念。