打印

[技术前景]零基础如何入门c语言

[复制链接]
766|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hbyu|  楼主 | 2015-9-2 09:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    工作中,接触过很多想到学习c语言而又没有一点计算机基础的人。经常有人问”我没有一点基础,该怎么入门c语言啊”。看过很多初学者久久摸不到门路,每到这个时候,脑海中总会浮现一个问题:学习c语言真的就那么难吗? 不难。


    很多人学习c语言,上来就去背语法,甚至连各种高深的算法都是死背出来的,大学里流行考计算机二级C语言证书,手抄资料的有之,背全书者有之,终于可怜又可 悲的拿到了所谓的证书,真正用c语言编写程序处理问题时,满脑子空了。可能这样学过之后,把许多c语言语法记住了,但是却学不会如何编写程序处理问题。所 以,掌握学习方法很重要。如果你觉得很难,那是因为你缺少一个好的方法。

    学习c语言也离不开**语法,但是死记的话,肯定不行。c语言,无非也就 是一种工具,用它来表达我们的思路,让计算机帮我们思考,写程序的过程就变成了告诉计算机该怎么做的过程。很多人遇到问题,自己都没有思路,更别提用c语 言写程序了。很遇到问题的时候不要满脑子去想怎么用c语言处理这个问题,记住:程序 = 数据结构 + 算法,把思路转变到对数据的组织和对算法的思考上 来。

    数据结构归根结底就是一些数据的组织形式,而数据在c语言里都有各自的类型,各种复杂的数据结构也都是从最基本数据类型组织起来的,所以学习 c语言,首先要记住c语言里可用的数据类型都有哪些,掌握每种数据类型的定义和使用规则。任何一种计算机编程语言,最根本都是对数据的操作。每种语言都有 不完全相同的数据组成形式,很多时候,对于同样一个问题,你可以构建不同的数据结构对它进行处理。初学者,不必太深究要把数据做成什么类型可以写出漂亮的 程序。你只需要记住:你需要什么样的数据。

    学习c语言,其次要学习算法。算法的好坏直接影响了程序的好坏。有人建议学程序的时候多看别人的例子程 序,研究别人是如何处理问题的。不错,这是必不可少的,但是不要总是去看,也要自己多思考。这里的思考不是让你思考如何处理这个问题,你要思考的是如何教 会计算机帮你解决这个问题。我们写出来的程序毕竟是让计算机来运行的。你必须按照计算机的特点来思考才可以。
计算机在处理问题时有自己的特点:

1、 计 算机在问题的处理方式上要求全,将所有的可能都要告诉它。人可以根据习惯忽略一些东西,但计算机不行。计算机没有像人一样的智能处理能力,它是人忠实的信 徒,不管你怎么想,它都会执行你的命令。由于你的习惯,导致一些别有用心的人或者无意犯错的人来犯错误,致使计算机有时无所适从。很疲惫,甚至崩溃,报 错,造成你的程序是不成功的,所以你感觉很难。

2、 计算机要求程序的描述精确,无二义性。人的语言有很强的随机性和二义性。我们平时说话时,有 时是一些招呼,有时说话的逻辑性可以不太清楚,话既可以表达这样的意思,也可以表达那样的意思,人可以根据环境和对方想表达的含义进行分析,最终得到正确 的结果,但是计算机很弱智,虽然它很听话,但是他不能理解你表达的思想,只会按你交给的指令执行,这样导致执行时报警和出错。

3、 计算机编程是 要求有很强的全局性和逻辑性,不存在起伏的问题。人的思维有很强的活跃期和蛰伏期,计算机不会,它随时待命。人在考虑问题时,有很多尽兴的东西,但这不是 处理问题的整体,而是一部分,所以就出现做完一段代码后,就不愿意再写,或感觉很吃力,所以感觉很难。
所以我们在思考问题时,要记住计算机的特 点,从计算机的角度去考虑问题。当然作为初学者,习惯了以人来思考问题,转变思想需要一个过程,我们可以先按照人的逻辑解决好问题,然后作类比,假如你自 己是计算机你该怎么处理问题。当你学会了从计算机的角度思考问题,并能够正确地用c语言的语法表述出来你的思路(算法)时,你就真正的入门c语言了。

更多精彩请关注技术交流QQ群:437264760

相关帖子

沙发
hbzjt2011| | 2015-9-2 10:14 | 只看该作者
楼主可以边学便用,效率要高一些,还有在解决问题的过程中很多知识点就自然学会了,该记得不用刻意及也能记个差不多

使用特权

评论回复
板凳
ganyy| | 2015-9-2 15:04 | 只看该作者
推荐 《嗨翻C语言》

使用特权

评论回复
地板
hbyu|  楼主 | 2015-9-4 11:34 | 只看该作者

使用特权

评论回复
5
oldzhang| | 2015-9-4 12:14 | 只看该作者
C语言:
数和变量:分几种类型:bit,char,int,unsigned,short,long,float。。。,还有数组。
运算符:加,减,乘,除,和逻辑运算:与,或,非,异或,移位。。。,单目,双目,三目,括号。
函数:带()的,分自己编写的,系统自带的。。。
四条语句(函数):while(),for(),if()-else,switch()-case。。。含return,break,continue,goto
最后还有关键词,上面的英文都是关键词,还有一些如include,default。。。
构造数据类型的结构体共同体枚举等可以先不学,等到一定程度再学

使用特权

评论回复
6
landship| | 2015-9-5 14:44 | 只看该作者

使用特权

评论回复
来自iphone 5s
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

26

帖子

0

粉丝