自学C语言要先学习什么呢?
首先来回答您的问题
所有编程初始都要学习代码中的语言,最基础的就是C语言,当你稍微了解C语言,可以尝试学一学当今就业比较好的Java语言。
接着考虑C++,相对于C语言比较高难度。我们面对新的编程语言时,只需简单了解该语言的语法特点,就可以轻松应对和应用了。
刚开始掌握一门语言即可,毕竟以后工作熟练掌握一种语言即可。
像18年比较火的大数据,区块链,人工智能(AI),不单单是通过一门语言就能掌握的,一名程序员的高级境界,是在反复的实践、观察、分析、比较、总结中潜移默化积累的。
拓展资料:编程是编写程序的中文简称,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,是计算体系按照该计算方式运行,并最终得到相应结果的过程。
为了使计算机能够理解人的意图,人类就必须将需解决的问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算体系之间交流的过程就是编程。
基础的话什么都不用。往深学需要英语 主要为了看外文书籍和代码注释。还需要数据结构和操作系统的知识。当然要想写出一段高效的代码 还需要离散数学,计算机算法的知识。
程序员之路——如何学习C语言并精通C语言
程序员之路——如何学习C语言
学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意,即使是“最小的代价”,也绝不是什么捷径,而是以最短的时间取得最多的收获,同时也意味着需要经历艰苦的过程。
一、要读就读好书,否则不如不读
所有初学者面临的第一个问题便是:如何选择教材。好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,还可以再次选择。
大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但是无比坚定地黑他这本书的。这本书不是写给计算机专业的学生的,而是给那些需要考计算机等级考试的其它专业学生看的。这本书的主要缺点是:例子程序非常不专业,不能教给程序设计应该掌握的思考方式;程序风格相当地不好,会养成乱写代码的恶习;
Kernighan和Ritchie的《The C ProgrammingLanguage》(中译名《C程序设计语言》)堪称经典中的经典,不过旧版的很多内容都已过时,和现在的标准C语言相去甚远,大家一定要看最新的版本,否则不如不看。另外,即使是最经典最权威的书,也没有办法面面俱到,所以手边常备一本《C语言参考手册》是十分必要的。《C语言参考手册》就是《CReferenceManual》,是C语言标准的详细描述,包括绝大多数C标准库函数的细节,算得上是最好的标准C语言的工具书。顺便提一句,最新的《C程序设计语言》是
根据C89标准修订的,而《C语言参考手册》描述的是C99标准,二者可能会有些出入,建议按照C99标准学习。还有一本《C和指针》,写得也是相当地不错,英文名是《Pointers onC》,特别地强调指针的重要性,算是本书的一个特点吧。不过这本书并不十分适合初学者,如果曾经学过C语言,有那么一些C语言的基础但又不是很扎实,那么可以尝试一下这本书。相信,只要理解了指针,C语言便不再神秘。
如果已经啃完了一本C语言教材,想要更进一步,那么有两本书一定要看。首先是《C Traps andPitfalls》(中译名《C陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。要注意一点,这本书是二十多年前写成的,里面提到的很多C语言的缺陷都已被改进,不过能够了解一些历史也不是什么坏事。然后可以挑战一下《Expert CProgramming》(中译名《C专家编程》),书如其名,这本书颇具难度,一旦仔细读完并能透彻理解,便可以放心大胆地在简历上写“精通C语言”了。
切记一个原则,不要读自己目前还看不懂的书,那是浪费生命。如果看不懂,那一定是缺失了某些必需基础知识。此时,要仔细分析自己需要补充哪些内容,然后再去书店寻找讲述的这些内容的书籍。把基础知识补充完毕再回头来学习,才会真正的事半功倍。
二、Unix/Linux还是Windows,这是个很大的问题
不同的编程环境会造就出不同思维的程序员。Windows的程序员大多依赖集成开发环境,比如VisualStudio,而Unix程序员更加钟爱Makefile与控制台。显而易见,集成开发环境更容易上手,在Windows上学习C语言,只需要会按几个基
本的Visutal C++工具栏按钮就可以开始写Hello,
World!了,而在Unix下,需要一些控制台操作的基本知识。有人也许认为Unix的环境更简洁,但习惯的力量是很大的,大家都很熟悉Windows的基本操作,而为了学习C语言去专门装一个Unix系统,似乎有点不划算。
对于一个只懂得Windows基本操作、连DOS是什么都不知道的新手而言,尽快做一些有趣而有意义的事情才是最重要的。用C语言写一个小程序远比学习
ls、cat等命令有趣,况且要专注于C语言本身,就不得不暂时忽略一些东西,比如编译链接的过程、Makefile的写法等等等等。
所以建议初学者应该以Visual C++ 6.0(不是VisualC++ .NET)或者DevC++作为主要的学习环境,而且千万不要在IDE的使用技巧上过多纠缠,因为今后一定要转向Unix环境的。Visual C++6.0使用很方便,调试也很直观,但其默认的编译器对C标准的支持并不好,而DevC++使用gcc编译器,对C99的标准都支持良好。使用顺带提一下,很多大学的C语言课程还在使用Turbo C2.0作为实验环境,这是相当不可取的,原因其一是TC 2.0对C标准几乎没有支持,其二是TC2.0编译得到的程序是16位的,这对今后理解32位的程序会造成极大的困扰(当然,用djgpp之类的东西可以使TC2.0编译出32位程序,不过那过于复杂了)。
等学完一本C语言的教材,一定要转向Unix平台继续学习,几乎所有的C语言高级教程都是基于Unix平台的(比如《C专家编程》)。转变的过程是痛
苦的,需要面对的是各种纷繁复杂的命令,完全不同于Windows平台的思考方式,但是这种痛苦是值得的。Unix与C是共生的,Unix的思考方式和习惯更加符合C语言的思考方式和习惯。在Unix下,可以找到无数优秀的源代码供你尽情阅读,可以方便地查看某个库函数的联机手册,还可以看到最优秀的代码风格
归结起来就是一句话:初学C语言,建议使用Windows系统和集成开发环境,在准备向“高手”方向努力时,请先转向Unix平台。
三、万事俱备,就是东风
书已选定,环境配置完成,正所谓万事俱备,只欠自己的努力了。请从书的前言开始,仔细地阅读手头的教材,很多人看书喜欢直接从第一章开始看,这是错误的做法。前言是作者对整本书的大体介绍,作者一般会告诉需要什么基础才能够顺利阅读本书,这可以帮助你检验自己的基础知识是否已经具备。看完前言,还要浏览一下目录,了解一下书的整体结构,顺便给自己安排一下学习计划。
学习C语言,必需注意每一个细节,书上的例子代码一定要自己亲自敲一遍,编译执行输出都跟书上说的一致才能算是学完了一个例子,如果不一致,就要仔细找原因。出了书本上有的例子,自己还要“创造”一些例子,比如学习运算符优先级的时候,可以写几个相同的表达式,在不同的位置加上括号,看看有哪些不同的行为,比如*p++和(*p)++,又比如a = b == c、(a = b) == c和a = (b ==c)等等。自己抄的书上的例子以及改造之后的例子,还有自己“创造”的例子,都应该仔细地归类保存,并且要在源代码中写上简短的注释,阐述这个例子的意图。
例子之后就是习题了,建议初学者把所有的习题都独立做一遍,然后对照答案的代码,看看自己的代码有那些不足,再试着修改自己的代码。很多人不重视习题,这是极大的错误,因为作者通常会在习题中说明一些重要的道理,而不是单纯地检验前面的知识。
也许认为这样学习太慢,其实不然。学得细致就不用走回头路,等学到后面才发现自己前面没搞清楚,那才是真的得不偿失。一般说来,整本书读完,应该完数千行乃至上万行的代码,无论是原封不动照抄书上的,还是自己心血来潮写就的,都是今后继续学习的一笔财富。以自己举例,阅读《Windows核心编程》时(只阅读了3/4的内容),除了抄书上的代码,还自己写了很多例子,一共有5574行(用unix下的wc工具统计),时隔多日,早已记不清Windows的系统编程了,但只要花几分钟翻出以前的代码看看,便会重新了然于胸。所谓好记性不如烂笔头,就是这个道理。
仔细读书、认真抄写源代码、独立完成习题外加更进一步的实验,最后将所有的代码留下,成为自己的经验和财富,绝对的辛苦,也绝对的事半功倍。当然,这种方式只适合学习需要精通的技术,如果不是学习C语言,还要具体情况具体分析。
其实C并不难,关键你得找个适合自己的材料,如果是自学的话,以我自身经历来看,感觉看视频比看书效率高,毕竟理科知识不像是文科的,看书效率太低了。可能一个很简单的知识点,自己看书得半个小时,但是懂的人就讲几句话,就能明白了。所以相比之下,还是视频效率比看书高。选择个适合自己的就能学懂C了。我当初看的是夏老师的,感觉挺适合我这样初学者的。他讲的不繁琐啰嗦,都是重点,而且思维原理讲的最好。能让我理解,我感觉这点很重要。比之前看的什么郝斌曾怡金文的那些繁琐啰嗦听不出重点的好多了。
如果是自学的话,前期推荐看视频,边看边编写程序
当把基本语法会了,要是觉得
看视频太慢,就可以使用书本自学
要是上课的话,一定要多编程。
学习C语言要些什么基础?
C语言本身就是基础,很多的高级语言都是基于C语言的,这个只能当做基础,以此学习更高级的语言,如C++,JAVA等,至于入门,建议系统的学习,这样基础比较牢靠 推荐科目:C语言,数据结构,C++(这个学完C语言后再学,相对c语言,C++更适合大型软件开发)要求:基本的英语单词要会,高中水平吧 数学要求不高...
怎么自学c语言,需要怎么学习?
学习中的困难莫过于一节一节的台阶,虽然台阶很陡,但只要一步一个脚印地踏,攀登一层一层的台阶,才能实现学习的最高理想。C语言学不会怎么办?我大一的时候也需要学C语言,C语言自学方法有很多,下面是我的建议。1.首先应该记住基础知识点,如数组,结构体,指针等相关内容,如果在编程过程中遇到...
c语言如何学习,学习C语言之前要学习什么
你可以算是真正的入门了。精通:C语言是一门非常容易学,但同时又非常难精通的语言,如果你想要学精C,没有好几年的实践,应该是不可能的吧。当然了,不排除那种天才型的可能。但是,天才很多吗?不!所以想精通C,就得下苦功,得多看多练多想多问!!!学习C语言的捷径:没有捷径!
怎么去学习C语言?学习C语言应该先学习什么?
切记一个原则,不要读自己目前还看不懂的书,那是浪费生命。如果你看不懂,那你一定是缺失了某些必需基础知识。此时,你要仔细分析自己需要补充哪些内容,然后再去书店寻找讲述的这些内容的书籍。把基础知识补充完毕再回头来学习,才会真正的事半功倍。其实c语言很简单,它只是一种交流的规则,一种表达...
学习c语言要有什么数学基础吧
C语言中的数学因素就是个“槛儿”,一个思维变通的“门槛”,当学不进去的时候,认为哪里都有自己的不足。当学进去以后,在学习更深的C++\/C#或者JAVA,就要容易多了。总的来说,C语言仅仅是个基础,只要有毅力,相信两个月时间就玩转了它,不要被自己以前的基础差所吓倒。
如果学习C语言需要先学习什么学科
我认为可以先学习一下pascal,这个语言比较严谨,适合初学者。pascal它被称为教学语言,结构严谨,不像C语言那么灵活,易于理解和学习。 然后可以继续学习C语言,这个语言比较灵活。有了pascal的基础,在进行C语言编程就不会因为C语言的灵活而有问题 。后面的就可以学习VC什么的了。C语言的书推荐谭浩强的...
怎么学好C语言 从什么开始学起
当然有几本经典是必须看的:C Primer Plus,C语言程序设计_现代方法,C和指针,C专家编程。算法,数据结构与看不懂的先放在一边,等基础掌握好后再慢慢研究不迟。如果没任何编程基础,可以先看看李炎恢教师的html+css,javascript这些,不然直接学vb或delphi,以上都可以马上看到多姿多彩的效果。没基础一...
学习编程先学什么?
每章末尾设计了大量复习题和编程练习,帮助读者巩固所学知识和提高实际编程能力。附录给出了各章复习题的参考答案和丰富的参考资料。适合希望系统学习C语言的读者,也适用于精通其他编程语言并希望进一步掌握和巩固C编程技术的程序员。2、《The C Programming Language》c语言方面的经典教材,而这本与之配套...
想学计算机C语言首先该怎么做???
2:葵花宝典 学习计算机语言最好的方法是什么?答曰:读程序。没错,读程序是学习C语言入门最快,也是最好的方法。如同我,现在学习新的J#,C#等其他语言,不再是抱着书本逐行啃,而是学习它们的例程。当然,对于没有学过任何计算机语言的初学者,最好还是先阅读教程,学习完每一章,都要认真体会这一...
学习c语言需要什么基础呢?
从一开始养成良好的编程习惯,怎么算好的你看书上的代码怎么写的 关于数学, 初中数学水平可以编程,小学甚至学前班也没什么不可以。 另一方面数学博士编程的时候也不会嫌自己数学学的太多了。 需要多少数学这跟你要做的东西很有关系, 也影响到你学习的深入程度, 工作中就影响你的代码质量。 总的来...
宇文战双黄: 我以前也是自学C语言的:其实编程如有较好的数理逻辑能力和英语阅读能力那将进步提高很快.我认为,首先找本好书如谭浩强的《C语言程序设计》就很好的,浅显易懂循序渐进.先将书本概览一遍,等心里有系统框架后在一步一步编程调试积累经验;其次是选一个编译环境,通常都选Turbo C;再者是边研读边调试至成功,因为C语言的语法格式都很活,所以还要注意积累,最好准备一个本子,记录编程调试心得,有时间去翻番,恩,效果不错!最后,是要坚持到底!切莫半途而废!
湟中县13219992047: 我想先自学c语言 应该怎样来学习呢 - ?
宇文战双黄: 一、多看代码 在有一定基础以后一定要多看别人的代码,同时注意代码中的算法和数据结构,因为数据结构和算法是程序的灵魂.提到数据结构,指针是其中重要的一环,绝大多数的数据结构是建立在指针之上的,如链表、队列、树、图等等,...
湟中县13219992047: 要学习C语言,首先需要学习什么呢. - ?
宇文战双黄: C语言并不是一门纯理论的课程,而是一门应用的课程.所以首先要学习注意培养分析问题的能力、构造算法的能力、编程的能力和调试的能力. 初学时,先把重点放在解题的思路上,通过大量的例题学习怎么样设计一个算法以,构造一个程序,切不可在细节上死抠硬背.一开始要学会看懂程序,编写简单的程序,然后再惭步深入.
湟中县13219992047: 如何自学C语言呢? - ?
宇文战双黄: C++自学的话非常难,因为c++需要学习的东西很多而且很难,如果你没掌握学习c++的方法的话,可能1-2年都只能入门,如果你掌握c++的学习的方法的话,半年就能学会C++. ……………………………………………………看你问的问题,应...
湟中县13219992047: 初次接触c语言应该先学什么 - ?
宇文战双黄: 最好的教材就是 清华大学出版社的谭浩强 教授编写的 《C语言教程》 原因就是因为此书介绍的简单,入门相当的好.然后不急不躁的看,看到函数那一章,你就可以入门了 第一章要省略.那个理论太强,没用; 变量 数组 基本的三大结构(...
湟中县13219992047: 自学C语言第一步该做什么? - ?
宇文战双黄: 如果你是个新手,想学好C语言我建议你从如下几个步骤着手! 一,题书结合! 如果你在看C语言教程时可以找一些对应知识点的练习做下,如果那个题搞不懂就多看看书中的知识点!看几回你就会知道一些了!二,学好C语言的运算符和运...
湟中县13219992047: 学习C语言先学习什么呢? - ?
宇文战双黄: 学C、什么数学、英语都是无所谓的. 英语,常用的就一些内置关键字等等,除非你以后想进大企业,要看英文文档 数学,对一般写点小程序的人用的不太多,除非你想变得很厉害很厉害,学数据结构和算法的时候,会用到一点点数学知识,...
湟中县13219992047: 学习C语言必先学习什么 - ?
宇文战双黄: 先学basic然后转C比较容易的...还要了解下内存(指针要用)
湟中县13219992047: 作为一个学习C语言的初学者,应该先从哪些方面入门呢??
宇文战双黄: 荐给你的是谭浩强的《C语言程序设计》,不管怎么说,谭浩强教授是C语言教学方面将C语言说明得比较通俗易懂的一位,之后,在推荐你看一看《编程之道》的有关教学视频,虽然是包含C和C++的,但是也是很合适C语言入门的教学软件,还有一套不错的C语言电子书——《21天学通C语言》,是一整套C语言的学习电子书,很全面和详细的讲解了C语言,我会将这些推荐推荐的书和软件发给您,你记得到QQ邮箱去查收一下!希望这一些对你有帮助! .^_^.
湟中县13219992047: 我想自学c语言但以前从学习接触过类似的东西 请问学c语言初步要先学什么?
宇文战双黄: 当然是基本流程语句了 然后是面向对象 总之,要学了东西多了去了,不是吓你,自从接触这个学科我才深切感受到什么学海无涯呀!