想学c语言,但不知如何开头,学习c语言的第一步是什么?

Python015

想学c语言,但不知如何开头,学习c语言的第一步是什么?,第1张

c语言是很多人都想学习的内容,但是很多人都不知道如何开头。

学习c言语,是可以分成几个阶段来学习的:

1.初级阶段

这个阶段,其实就是入门阶段。这个阶段的学习办法也很简单,看书、做题。不过这个简单的看书做题却又有一些留意事项。就是书看什么书,题做什么题。首先,关于初学来说,我以为看谭浩强的c言语就能够了,毕竟是初学,不用看难度太大、写的太深的书。至于做题,分两种方式,一种是把谭浩强c言语对应的题集买下来,好好地做一遍;另外一种是把这些题再在电脑里面编一遍。纸上做题是为了锻炼思想、稳固根底,电脑上编程才是真正的学致使用,两者都需求停止。置信依照这个过程,会提升你对c言语的兴味,也能让你快速入门。

有人可能会说谭浩强的c言语太浅,这里我要解释下为什么我要引荐这本书。由于我觉得作为初学者,应该由浅入深,上来就看太难的东西,会消除本人的学习兴味。

2.中级阶段

这个阶段,是对c言语的进阶阶段。这个阶段的学习办法是看书、练习、琢磨。这个阶段的重点倾向于c言语语法背后的原理,例如全局变量和部分变量在内存中分配的区别,又比方栈中分配和分配在堆中又有什么区别等等。这个阶段需求看的书应该主要是《c专家编程》、《c圈套与缺陷》这样的书。在这里,我还要特别引荐一本宋劲杉写的《c言语一站式编程》。这本书的作者固然不是计算机专业的,但是我以为真的写得十分好,关于理解c言语背后的原理,十分合适。经过这个阶段,你对c言语曾经有一个十分不错的功底了。

3.进阶

这个阶段的标题我没有用高级阶段,只用了进阶。由于我觉得高级阶段要懂得东西太多,而且不只仅限于c言语自身或者是编程的东西,所以我用了进阶。

在这个阶段主要是对算法和数据构造上面的学习。入门首先引荐严蔚敏的数据构造。这本书不厚,都是根底的学问,需求将这本书中的学问好好地控制。这本书学完,数据构造根本上没有问题了,根底算法也理解一些了。那么就能够再学习《算法导论》,并且选择一些算法本人入手完成。

当然,这个阶段你也能够选择不重点在算法上面研讨。除了严蔚敏的数据构造是必需控制的外,你也能够选择学习《unix环境高级编程》、《unix网络编程》这样的书籍停止学习。但是我倾向于算法的学习。

4.实战

阅历了上面三个阶段,我以为你根本上曾经晓得本人还要学哪些、该怎样学习了。但是我还是要提示你,这个时分还能够找一个c言语完成的开源项目,好好的研讨一下。个人以为最好的就是linux内核源码。

总结

c言语作为一门编程言语,应该是每个软件开发人员都应该控制的,而对计算机专业的学生来说更是根底。假如你依照我上面说的步骤,把这些学问都控制的话,置信你的c言语可以到达一个较好的程度。

相对于其他编程语言,C语言还是比较难的。初学者需要注意一下几点:

一是学习顺序

先从熟悉简单的C语言语法开始入门,然后再循序渐进,学习C++语法,WIN32、MFC、QT、网络编程,数据库、数据结构、算法、COM、STL等。构建一个完整的C语言知识体系。这需要一个比较漫长的学习积累的过程。语法入门部分大概2-3个月,其他部分需要学习和工作中慢慢理解和消化了。

c11.jpg

二是学习方法

人的知识80%是通过眼睛获取的,但是学习编程有所不同,除了看书、看视频之外,关键是要勤动手,勤动脑。通过做大量的练习、项目实战不断积累代码量。只有代码量足够多了,项目做的多了,才能算是真正学会了。项目能否完成,就是衡量是否学会的唯一标准。后期就是代码的质量和优化问题了,这个只能在项目工作中慢慢积累经验了。

c12.jpg

最后强调一点

很多人学不会编程是因为掉坑里了。就是教程或者书上的知识点之间跨越太大,作为一个初学者很难自己摸索出来,前面的知识点没有掌握,接着学习后面的知识,肯定是学不会了。目前绝大多数编程书籍和教程或多或少都有这样的弊端。自学能力比较强的人可以通过各种方法,参考各种网上的资料自己解决。但是大多数自学能力不是很强的人,只能依赖老师、同学、同事或者朋友帮忙指导,或者报名培训机构,老师指导完成了。

学习编程通常需要一些好的学习资料,包括纸质的书籍,视频教程,课件,项目练习,代码。零基础入门的书籍推荐《明解C语言》、《C Primer Plus》,还有一本非常特别的汇编和C语言正向逆向结合的书编程达人内部教材《汇编、C语言基础教程》也非常不错,讲解汇编和C语言的本质非常透彻,非常细致。视频资料也是特别多了,各种视频网站、论坛、自媒体都有,比如网易课堂、腾讯课堂、慕客网这些。还有一些论坛,比如CSDN、编程中国等。最重要的一点就是答疑服务,推荐爱达人的网站也很不错,从零基础入门到应用课程,配套的视频、课件、代码、项目、答疑服务都有,还可以兼职接单,学以致用。

入门阶段:还是老谭那本。

理由:虽然不能说它写得有多好,但是你现在要做的是入门,要快速的掌握c的基本语法,这本书很好理解,能够让你在最短的时间内大致掌握这门语言的概更。

第二阶段:《c程序设计语言》(The C Programming Language)和《C语言解惑》(The C puzzle book)

理由:《the c programming language》号称c语言圣经。其实它也只是一本介绍基础语法的书,不做入门教程是因为对于初学者来说,它难度稍大,之所以推荐,是因为它能让你---系统而严密的---把C语言知识构架整理一遍。《c语言解惑》,系统的整理了c语法中容易让你产生迷惑或容易犯错的地方(如a+++++b等),这时候你才算真正开始学习c语言了.(以上两本现在出重印了,应该在书店可以买到)

第三阶段:《C陷阱与缺陷》(C Traps and Pitfalls)和《高质量c/c++编程指南》

理由:《c陷阱与缺陷》是让对c的理解有质变得一本书,如如何理解(*(void(*)())0)()等问题,我的感觉是看完这本书让我真正从小菜鸟变成了老菜鸟。《高质量...》,终于有一本国产的了,呵呵,我认为这本书是把你从土匪变成正规军的最好指南,该书涉及编程风格、效率、重载、健壮性等一些列之前很难注意的问题。(以上两本《c陷阱...》已绝版,不过网上可以下载到中英文版,《高质量...》本身就是网络书,很容易找到)

其它推荐书:《c专家编程》《c和指针》

说实话这两本书我并没有看过(或看完),但有口皆碑,都是经典之作,不过都已经绝版,仔细找找网上有下载的。