分类：电脑/网络-操作系统/系统故障
问题：怎么才能把计算机c语言学啊？我数学基础还可以？不知道怎么下手学习 
我基础还可以？不知道怎么下手学习C语言，不知道大家有什么好的方法？
回答：怎样才能学好c语言？其实c语言很简单，它只是一种交流的规则，一种表达的工具，一种承载思想的容器而已，之所以感觉难，我觉得是还不习惯使用计算机特点来考虑问题。这就好比中国人从到英国定居一样，虽然你学过英语，但是那只是想象中的英国，和现实的英国的情况还相差很远，所以要有一个适应的过程，也就是常说的过渡期或磨合期。想尽快上手就得掌握计算机的特点，计算机的特点包括：1、 计算机在问题的处理方式上要求全，将所有的可能都要告诉它。人可以根据习惯忽略一些东西，但计算机不行。比如说求解一元二次方程，我们考虑问题就已经默认了a不等于0，更有甚者把b方减4ac也默认大于等于零了。这是我们的习惯，既然有解，我们一般习惯上就把它定为实数解，所以你做出来的程序一般是不考虑这两个条件的，但是计算机不行，计算机是有名的弱智。计算机没有象人一样的智能处理能力，它是人忠实的信徒，不管你怎么想，它都会执行你的命令。由于你的习惯，导致一些别有用心的人或者无意犯错的人来犯错误，致使计算机有时无所适从。很疲惫，甚至崩溃，报错，造成你的程序是不成功的，所以你感觉很难。2、 计算机要求程序的描述精确，无二义性。人的语言有很强的随机性和二义性。我们平时说话时，有时是一些招呼，有时说话的逻辑性可以不太清楚，话既可以表达这样的意思，也可以表达那样的意思，人可以根据环境和对方想表达的含义进行分析，最终得到正确的结果，但是计算机很弱智，虽然它很听话，但是他不能理解你表达的思想，只会按你交给的指令执行，这样导致执行时报警和出错。3、 计算机编程是要求有很强的全局性和逻辑性，不存在起伏的问题。人的思维有很强的活跃期和蛰伏期，计算机不会，它随时待命。人在考虑问题时，有很多尽兴的东西，但这不是处理问题的整体，而是一部分，所以就出现做完一段代码后，就不愿意再写，或感觉很吃力，所以感觉很难。计算机要求它的主人，考虑问题要全面，所有可能的情况及处理都要告诉它，要求学会沉稳，心态要稳定，要求交流的语句一定要明了含义单一。怎样才能很快的学会c语言，更快的度过磨合期呢？C语言的语法规则记忆理解当然是不可少的，除此之外还应注意以下几个方面：1、 好好理解一下变量和函数的概念，至少要重新回头看看初等。这是基础，否则就会先天不足，你学的再好，也成不了大气候。2、 平衡心态，虽然不能做到“不以物喜，不以己悲”的水平，但至少不要浮躁，不要急于求成，欲速则不达。3、 培养自身的全局意识，既能小无内，也能大无外，才行。4、 严格按照程序设计过程设计程序，不要跳脱，天马行空，没有规矩是不成方圆的。5、 努力提高自身的综合素质。程序是人思维的表达形式，是人处理问题思路和语言的结合体。你对客观看成到什么程度和你掌握的知识成正比。如果你对处理的问题不理解，不会处理，你怎么也写不出程序。6、 学会交流，多交流，相互补益，同时团队合作也是很重要的。总之，实践出真知，多学、多练、多思、多交流，勤奋好学才能学成。二、新手必看１、多看代码 在有一定基础以后一定要多看别人的代码。 注意代码中的算法和数据结构。 毕竟学C之后的关口就是算法和数据结构。提到数据结构，指针是其中重要的一环，绝大多数的数据结构是建立在指针之上的，如链表、队列、树、图等等，所以只有学好指针才能真正学好C。别的方面也要关注一下，诸如变量的命名、库函数的用法等等。有些库函数是经常用到的。对于这些函数的用法就要牢牢记住。 ２、要自己动手 编程序是个实干的活，光说不练不行。刚开始学的时候可以多练习书上的习题。 对于自己不明白的地方，自己编个小程序实验一下是最好的方法，能给自己留下深刻的印象。 自己动手的过程中要不断纠正自己不好的编程习惯和认识错误。有一定的基础以后可以尝试编一点小游戏，文曲星之类的电子词典上小游戏很多，照着编作为练习。基础很扎实的时候，可以编一些关于数据结构方面的东西，诸如最经典的学生管理系统。之后.....学汇编、硬件知识。 ３、选择一个好的编译器 英文版Turbo C v2.0没话说，最经典的C编译器(下载地址：   )，其次推荐一个win-tc 1.91,支持windows下的编译器。(下载地址：   ) ４、关于养成良好的编程习惯 基本上每本C教材上都要提到。作为新手这条一定要时时遵守。具体方面： （1） 在比较复杂的代码后面要有注释。 如果光溜溜一堆代码，别人就不可能看懂你的代码，而且也不利于查找错误。除非你一直编东西给自己看。能在代码里说明白的就一定要在代码里体现。比如变量名、函数名，在命名的时候尽量说明是干什么用的。 （2）注意语句的嵌套不能过长，一般来说，一段代码里Tab要少于8个。 简单说就是语句最多8个嵌套。 对于新手来说，这个标准还要下降。有一个好习惯是，把主函数尽量写简短。经常看到别人的代码是主函数只有几行，几个函数调用，而定义全在主函数外部。这样一是减少了主函数内部的嵌套，二是比较精简，容易读懂。 （3）注意语句的选择。并不是分支语句就用if循环就用while、for。在适当的情况下switch和do while语句也是要用的。在某些时候，switch语句比if语句更加精练明了，而do while比while少一个循环。三、C语言学习环境c语言初学既要考虑学习的效果，还要考虑今后的使用和发展。所以我推荐几个c语言的开发环境：1、kdevelop是linux下最好的开发环境之一，也是linux下主要的开发软件。有志于做linux开发的可在此环境下学习。学习顺序为：c->c++->数据结构->操作系统原理->数据库（orcale、mysql）->QT(GTK、gomn)2、bcb是borland c++ builder非常经典的c&c++开发环境，在vc++ 和delphi对决江湖时,c++ builder是一匹黑马，学习难度小于vc++，但功能基本和vc++齐平，兼有跨平台开发的本事（linux）3、vs2008是微软搞的集成开发环境vb、c#、c++、j#等开发环境功能之强大叹为观止（可惜只能在windows下使用），可以开发窗口程序、网站、移动设备程序包括嵌入程序。以只是建议，仅供参考。