数据结构论坛

首页 » 分类 » 问答 » C程序设计谭浩强第五版和第三版对
TUhjnbcbe - 2023/8/30 23:56:00

01引言

谭浩强,对大学生来说很熟悉的一个名字,大学习C语言基本上都是他的这本《C程序设计》作为教材。笔者上大学时学习的是第三版,现在流行的是第五版。当初学C语言的时候是一知半解,纯粹为了应付考试,后来工作主要是PHP、Python等高级语言为主。如果恰巧你是刚入学的大一新生,或者对编程感兴趣,那不妨我们一起来学习一下C语言,希望我这个互联网打拼10余载的老鸟能帮助一些新手完成编程第一课。

02章节对比

看一本书先看目录,了解这本书的篇幅结构和布局,不仅为我们的学习计划做铺垫,还能把我全局,学起来不会像无头苍蝇毫无目的,而是每一次学习都有比较明确的目标,大大增强我们学习的信心。

虽然这本书修订到了第五版,和我当初的第三版在章节和内容顺序上略有不同,但是总体基本一致。下面我们通过对比这些章节上的区别来了解这本书的布局和结构,为后面的学习打下基础。

整体来看,第五版比第三版少了四章,是知识点少了吗?下面看具体分析。

第五版将第3章、第4章合并为第三章,内容基本一致

第五版第6章“循环控制”改为“循环结构程序设计”为了和第五章命名保持一致

第五版第7章、第8章命名加长,可能为了更好地体现出“数组”和“函数”的作用,内容基本一致

第五版第9章“用户自己建立数据类型”对应第三版第11章“结构体与共同体”

第五版舍弃第三版第9章“预处理命令”这个章节

第五版舍弃第三版第12章“位运算”这个章节

可以看出,第五版舍弃了一些章节,看书本开头的介绍是把这些章节移入了《C程序设计辅导》中,因为有些知识点对于非计算机专业的同学来说难度较高,所以,谭浩强的目的还是为了让这本书有普适性,作为不同专业同学的入门书籍是他的初衷。

03如何学好编程

与其答“如何学好C语言”,不如答“如何学好编程”。基于我的经验来讲,学编程只是手段,解决问题才是目的。

解决问题的手段有很多种,可以用C语言,也能用C++、Java、PHP、Python等语言实现,不同编程语言组织形成的代码最终都会编译成二进制交给计算机去处理,这叫殊途同归。

学习编程就是学习使用一款电脑软件一样,只不过这款软件没有图形化的界面,它只是定义了一些规则,你在遵循它的规则之下去编写一些字符,这样就可以交给它去执行了。和普通软件相比,它肯定难以上手,而且规则较多,但是它没有图形界面,没有条条框框,更适合让我们自由地去发挥想象,也具有十足的潜力。

讲了这么多,学习编程到底如何进行呢?

学习编程语言本身。也就是学习它的规则,如数据类型、逻辑控制、数据结构、函数对象,这个整体思路在各编程语言是相通的。

学习思路,举一反三。编程只是手段,是为我们解决问题而服务的。如何控制利用好编程,即用什么来指导编程,这个就是我们的思路。如同做数学题,要有清晰的解题思路,才不会感觉无从下手;而且要学会举一反三,这个要求我们在解决好一个问题之后要思考、去总结,不断地精炼、提升我们的编程思路,最好是把一般性的业务抽象成纯粹的数学题(工作后会明白这句话的深刻含义)。

04学习计划

接下来,我会集中利用闲余的时间来学习《C程序设计(第五版)》,期限暂定一个月之内。正如文章开头所讲,正巧你也要学习C语言,那不妨我们一起学习交流、成长。

有任何想法和问题可以留言或者私信,见后即回。

C程序设计(第五版)
1
查看完整版本: C程序设计谭浩强第五版和第三版对