这是一本全方位养成你的编程能力的好书!有点难,但值得花时间去钻研!极力向大家推荐!学会编程最难的就是学到编程思想和编程原理。本书的编程思想和原理讲得非常好!这是本书的核心价值所在.
序
目前,人们要真正学会编程,几乎都要花费五年以上的时间悬梁刺股、卧薪尝胆。真正原因何在?其实只需到真正会编程的人身上就能找到根本原因。
经过认真仔细分析,我发现:根本原因在于:每个真正会编程者,都必须具备计算机科学的大局观。也就是说,每个真正会编程者都必须懂得和掌握:
1、C语言的基本语法(主要是各种命令型语言的公共部分,其他语言目前还无法取代); 2、整体把握计算机到底是如何工作的;
3、整体把握操作系统是如何在硬件的密切配合下,管理调度计算机的所有软硬件资源,为多道应用程序运行提供服务的。 4、编译程序大体上是如何对源程序进行编译工作的。
5、大量的阅读和调试经典的、基本的、由易到难的各种类型的C语言程序(至少100题以上)。消化和积累各种基本问题的编程思路,并能用逐步求精的伪代码构造常见问题的算法;
以上五项是必须具备的大局观方面的基本素质。此外,如果想成为程序员,还应当学习和掌握:汇编语言程序设计、算法与数据结构、数据库原理及数据库编程、计算机网络及网络编程、面向对象编程技术等课程知识。
由此可见,这条成才之路确实非常漫长和艰苦!尤其是第2到第5项知识的掌握,更是一个极为痛苦的心路历程上的万里长征!因为读者不仅要认真学习这些知识,而且还要做大量的提炼精华、融会贯通的艰巨功课。这是由于各门课程之间的内容衔接这项无比艰巨的工作,通常必须由学生亲自去做,目前没有任何一本书在这方面做得比较好。
为了大大减轻这个成才过程中的痛苦,明显缩短真正学会编程的周期。笔者花费了十余年时间广泛收集、筛选素材,并且进行了长时间地、艰苦地探索。终于很幸运地找到了一个绝好的比喻——理想厨房系统,恰好可以把以上五大方面的知识在一个比较初级的层次上,比较完美地串联起来。构成一幅计算机科学中(与真正学会编程有关的)最重要的、最精华的基本知识的“联络图”。为初学者在短时间内把握计算机科学的大局观,开辟了一条相对比较轻松的捷径。而且,这也为后续更高级编程技术课程的学习奠定了良好的知识基础。
本书虽然比较系统地讲解了C语言语法,但是,读者别指望从这本书中找到高深语法细节问题的详细讲解。因为笔者认为:过早学习太多高深语法知识,是很多学生学不会编程的罪魁祸首!这将导致很多学生觉得程序设计课相当枯燥乏味。浪费了读者本可以用来学习生动有趣的编程思路和技巧的,有限和宝贵的精力。大脑里存下了一大堆细节的语法规则,反而束缚了最需灵活自由的编程思路的积累、展开和翱翔。
编程语言的高级语法知识的掌握,比大量编程思路的领会和积累要容易得多!学生在学会编程过程中最需要得到的是编程思路上的引导和启发。 然而,本书中的大多数例题却是值得你认真钻研的,因为其中蕴含了大量比较经典的基本编程思想和编程技巧。本书不可能系统讲解各种编程思路(这是算法、数据结构这两门课的任务),然而,本书却教给了读者一种极为有效的举一反三的编程方法,这种方法强调从特殊到一般,来探索问题的编程思路和编程技巧。在循环和数组这两章的很多例题中,展现......
了如何利用这种方法来做各类编程题。本书也很重视培养读者用逐步求精的伪代码来构思算法的能力。
读者要注意,学习钻研本书一定要配套做100——200道各种类型的由易到难的编程题。这个亲自动手编写和调试程序的实践性修炼环节,是任何编程书籍和老师都无法替代的。 读者还要特别注意:千万不要被某些教科书误导,从而陷入钻研一门高级语言语法细节知识的痴迷和狂热之中,误以为学好一门语言的高深语法,就可以轻松步入编程高手的行列。这就象一位想学会写作文的学生热衷于冷僻汉字和高深语法,而置更为重要的通过学习课文