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

论坛 期权论坛 工作     
爱用户   2019-12-1 23:34   2156   5
分享到 :
0 人收藏

5 个回复

倒序浏览
2#
热心回应  16级独孤 | 2019-12-1 23:34:22 发帖IP地址来自
既然谭浩强的C语言教材那么烂,那么应该选择什么书作为C语言教材?
那么题主和搜索到这个问题的人,你们很棒,作为一名初学者能够意识到自己的书不是那么合适,这一点很强
结合我的经历说说,我自己到目前为止,C这门语言不能说学通了,但是用C语言写程序,做点小项目处理个小文件还是会的
谭浩强的红皮书是学习期间完全没有碰过,倒不是我自己有意识不碰,而是阴差阳错地我学会用C写一点小玩意之后才知道有这本书,而且知道这本书完全是因为它被喷得很惨,233333333333,并且在大学学习期间我们的教材也不是这本书(这点我要吹爆母校计科院,因为其他学院的后来的新生都是红皮书)
唯一一次深入碰红皮书的经历是帮一个妹子看C的时候接触到她们发的教材,不过这段经历想起来有点伤心,我也不想继续想了... ...
综上,谭老的这书真是没给我留下什么好印象,不过现在想来这些不好的印象全都是主观原因造成的


我自己当初开始学习的时候用的是C Primer Plus第五版的中译版,蓝皮厚书贼沉一本,高中的时候看的,看到指针那一章(好像是第九章还是第十几章,书不在身边)大概就满足大学一年级新生第一学期的学习要求了(不过这些内容是这本书的九牛一毛)
C Primer Plus这书现在(2019年7月12日)最新版本是第六版,白皮书,封面是国际象棋


后来写了许多程序遇到过许多坑,还有很多需要用的特殊特性,让我觉得自己这门语言学的还是不够深刻
然后在又写了许多程序之后,遇到了(或者说重新重视了)另一本书,The C Programming Language,也就是我们常说的K&R C,C的创世书,书里面的东西很简单但是很明了,讲的东西都很关键(而且薄薄一本没有那么大心理压力,2333333333


后来我还和人讨论过各个C的书,当时我就提出来说,“我对于老谭的书并没有过接触,想黑也黑不到点子上,我是不是跟风黑呢”,然后我们就这个问题讨论了一番,老谭的书除了一些其他的小黑点(我下面会说)以外,就一个“错误太多”黑点就足够黑了;另外还有C Primer Plus我们也讨论了一下,这本书我个人是捧的,但是他说这书写的太罗嗦,那关于这一点我也无法评论;至于K&R C,我们是一致好评


啰里啰唆说了这么多,其实要点如下:
1.老谭的书很糟糕,但是除了错误太多以外,其实其他黑点不重要,如果你是那种——明明是一名初学者,之前的确丝毫没有接触过C,但是却想在在时间有限的情况下在这门课程“考出高分”——的人,比如被许多答主称作“大学里的憨批”(原文引用没有感情色彩)的那种人,或者是明明本专业和编程序没啥关系却被学校逼着学C语言,学完以后也用不上的人,而且发的教材就是这本,那么,这本书很合适,因为它所在意的那些没有卵用的细节不合国际规范的奇葩调用各种无关紧要的可以绕开的问题,都是你们可能遇到的考试考点,所以如果你不是想要学习如何使用一门语言,而是要应付考试甚至取得高分的话就继续看这本书吧,这本书作为某些学校的教材也不是没有原因的,它异常适合考试用,书里面的错误的确有很多,网上找一找都能找到勘误,当然不注意的话就会被坑,但是这些错误考试又不考,这门课学完书就扔了谁还在乎呢;
2.如果你确定自己不是那种只想考高分的人,那么也许你需要找找国外的C教材,我因为个人经历的原因比较推崇C Primer Plus,因为它的确把我从一个什么都不知道的小白教成了会一点东西的人,所以我可以说,如果你有和我类似的经历,那么用C Primer Plus自学应该是没问题的;
3.但是有人说,“C Primer Plus罗里吧嗦(就像我这篇答案一样),看起来容易打瞌睡(有吗?)”,我也不能排除有的人会讨厌太长这一点,所以也许The C Programming Language会比较合适,以我现在的眼光来看,这本书要点基本上都是有的,这本书很适合学习C语言,但是,是否很适合初学的人学习C语言,我不知道,因为我接触这书的时候不是初学者,我只能说,这书我现在很推荐你去看,而且我觉得初学者看应该没问题,看这本就行了;
[h1]综上,推荐 The C Programming Language,也就是K&R C[/h1]
3#
热心回应  16级独孤 | 2019-12-1 23:34:23 发帖IP地址来自
当然是C语言他爹写的《The C Programming Language》。初学一张白纸最适合看,看不懂赶紧改行,避免把当初选专业的时候脑子里进的水在将来流成眼泪。

当然了,最好还是读《C++Primer5th》中文版没有plus,把C语言跳过。在微软维护STL的Stephen Thomas Lavavej都说他当年学C++之前学C语言浪费了大量的时间,早知道就直接从C++开始。
4#
热心回应  16级独孤 | 2019-12-1 23:34:24 发帖IP地址来自
接触过编程可以看 0基础就
至于白纸看不懂 要不要改行 就要看某人装逼你信不信了
5#
热心回应  16级独孤 | 2019-12-1 23:34:25 发帖IP地址来自
选什么教材不重要,我自己就是谭浩强的Pascal入门的。
光逼逼什么书好什么书不好的,都是读书太少的缘故。
任何教材你拿来入门,都是有问题的。
哪怕教材没写错,门外汉也会理解错。
书读得多了,Case接触的多了,慢慢就理解了。
知识这东西,很大程度上是靠Training出来的,样本不够,说什么都白搭。
6#
热心回应  16级独孤 | 2019-12-1 23:34:26 发帖IP地址来自
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:31799
帖子:6375
精华:1
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP