最新整理初学者应该怎么学习c语言.docx

上传人:b****6 文档编号:7991494 上传时间:2023-01-27 格式:DOCX 页数:6 大小:20.80KB
下载 相关 举报
最新整理初学者应该怎么学习c语言.docx_第1页
第1页 / 共6页
最新整理初学者应该怎么学习c语言.docx_第2页
第2页 / 共6页
最新整理初学者应该怎么学习c语言.docx_第3页
第3页 / 共6页
最新整理初学者应该怎么学习c语言.docx_第4页
第4页 / 共6页
最新整理初学者应该怎么学习c语言.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

最新整理初学者应该怎么学习c语言.docx

《最新整理初学者应该怎么学习c语言.docx》由会员分享,可在线阅读,更多相关《最新整理初学者应该怎么学习c语言.docx(6页珍藏版)》请在冰豆网上搜索。

最新整理初学者应该怎么学习c语言.docx

最新整理初学者应该怎么学习c语言

初学者应该怎么学习c语言

学习C语言不是一朝一夕的事情,特别是初学者。

那么初学者应该怎么学习c语言?

为了帮助大家更好的学习c语言,小编精心整理了初学者学习c语言的方法,一起来看看吧!

初学者学习c语言的方法一、要读就读好书,否则不如不读

所有初学者面临的第一个问题便是:

如何选择教材。

好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。

不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择。

大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。

虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但我是无比坚定地黑他这本书的。

这本书不是写给计算机专业的学生的,而是给那些需要考计算机等级考试的其它专业学生看的。

这本书的主要缺点是:

例子程序非常不专业,不能教给你程序设计应该掌握的思考方式;程序风格相当地不好,会让你养成乱写代码的恶习;错误太多,曾经有人指出过这本书的上百个错误,其中不乏关键的概念性错误。

好了,这本书我也不想说太多了,有兴趣大家可以XX一下:

Kernighan和Ritchie的《TheCProgrammingLanguage》(中译名《C程序设计语言》)堪称经典中的经典,不过旧版的很多内容都已过时,和现在的标准C语言相去甚远,大家一定要看最新的版本,否则不如不看。

另外,即使是最经典最权威的书,也没有办法面面俱到,所以手边常备一本《C语言参考手册》是十分必要的。

《C语言参考手册》就是《CReferenceManual》,是C语言标准的详细描述,包括绝大多数C标准库函数的细节,算得上是最好的标准C语言的工具书。

顺便提一句,最新的《C程序设计语言》是根据C89标准修订的,而《C语言参考手册》描述的是C99标准,二者可能会有些出入,建议按照C99标准学习。

还有一本《C和指针》,写得也是相当地不错,英文名是《PointersonC》,特别地强调指针的重要性,算是本书的一个特点吧。

不过这本书并不十分适合初学者,如果你曾经学过C语言,有那么一些C语言的基础但又不是很扎实,那么你可以尝试一下这本书。

我相信,只要你理解了指针,C语言便不再神秘。

如果你已经啃完了一本C语言教材,想要更进一步,那么有两本书你一定要看。

首先是《CTrapsandPitfalls》(中译名《C陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。

要注意一点,这本书是二十多年前写成的,里面提到的很多C语言的缺陷都已被改进,不过能够了解一些历史也不是什么坏事。

然后你可以挑战一下《ExpertCProgramming》(中译名《C专家编程》),书如其名,这本书颇具难度,一旦你仔细读完并能透彻理解,你便可以放心大胆地在简历上写精通C语言了。

切记一个原则,不要读自己目前还看不懂的书,那是浪费生命。

如果你看不懂,那你一定是缺失了某些必需基础知识。

此时,你要仔细分析自己需要补充哪些内容,然后再去书店寻找讲述的这些内容的书籍。

把基础知识补充完毕再回头来学习,才会真正的事半功倍。

二、Unix/Linux还是Windows,这是个很大的问题

不同的编程环境会造就出不同思维的程序员。

Windows的程序员大多依赖集成开发环境,比如VisualStudio,而Unix程序员更加钟爱Makefile与控制台。

显而易见,集成开发环境更容易上手,在Windows上学习C语言,只需要会按几个基本的VisutalC++工具栏按钮就可以开始写Hello,World!

了,而在Unix下,你需要一些控制台操作的基本知识。

有人也许认为Unix的环境更简洁,但习惯的力量是很大的,大家都很熟悉Windows的基本操作,而为了学习C语言去专门装一个Unix系统,似乎有点不划算。

对于一个只懂得Windows基本操作、连DOS是什么都不知道的新手而言,尽快做一些有趣而有意义的事情才是最重要的。

用C语言写一个小程序远比学习ls、cat等命令有趣,况且我们要专注于C语言本身,就不得不暂时忽略一些东西,比如编译链接的过程、Makefile的写法等等等等。

所以我建议初学者应该以VisualC++6.0(不是VisualC++.NET)或者DevC++作为主要的学习环境,而且千万不要在IDE的使用技巧上过多纠缠,因为今后你一定要转向Unix环境的。

VisualC++6.0使用很方便,调试也很直观,但其默认的编译器对C标准的支持并不好,而DevC++使用gcc编译器,对C99的标准都支持良好。

使用顺带提一下,很多大学的C语言课程还在使用TurboC2.0作为实验环境,这是相当不可取的,原因其一是TC2.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语言的注意事项1.学习基本的语法

例如:

数据类型int、double的含义、使用和背景;逻辑判断if的使用;流程控制的循环while\for的使用;函数的调用;

2.编写基本语法的代码

学完基本的语法,熟悉了之后,针对这些基本语法,写一些基本的代码来练习,巩固。

在写代码的过程中熟悉基本语法。

第1步只是学习理论,这一步就是巩固基本语法,是通过实践来巩固,实践就是写代码,能够运行通过,才表示正确。

这一步是最基本的一步写代码。

3.混合使用语法实现复杂的功能

各个基本的语法点都掌握了,要开始找一些实用小程序来综合练习,就好像是物理考试的最后几个大题一样。

综合练习就是加深各个基本语法的理解和混合使用。

这也就是项目经验的基础。

这里会遇到各种混合使用中因为自己不熟而碰见的各种错误,也就是积累经验的过程。

4.写多了,遇到的坑多了,然后就理解了语法,记住了用法。

无法使用英语学习的强行记忆,是行不通的。

5.自己写一个完整的可以供他人实际使用的程序

比如可以写一个完整的计算器、一个完整的通讯录、一个成绩统计分析程序、图书管理系统。

这里会涉及到各种语法知识,也是真正大量积累项目经验的时候了。

这些完整的程序就是小项目了。

这些都能够做好后,就可以开始写大项目了。

这些完整程序都要以实际的需要来做,不能绕过,要直面需求。

可以直接解决,可以换个思路解决,这是锻炼自己的过程。

做完了这5步,C语言也就学好了。

学习C语言,绝对不是简单学习一下语法而已。

5步做完,才真正的学完了C语言基础。

CPrimerPlus是非常适合完全自学C语言的书籍了。

根据这个5步的前3步,这本书里有对应的联系,后面两步需要自己来找程序开发。

C语言的优点1.简洁紧凑、灵活方便

C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。

它把高级语言的基本结构和语句与低级语言的实用性结合起来。

C语言可以象汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。

2.运算符丰富

C的运算符包含的范围很广泛,共有34种运算符。

C语言把括号、赋值、强制类型转换等都作为运算符处理。

从而使C的运算类型极其丰富,表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。

3.数据结构丰富

C的数据类型有:

整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等,能用来实现各种复杂的数据类型的运算,并引入了指针概念,使程序效率更高。

另外C语言具有强大的图形功能,支持多种显示器和驱动器,且计算功能、逻辑判断功能强大。

4.C是结构式语言

结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。

这种结构化方式可使程序层次清晰,便于使用、维护以及调试。

C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

5.C语法限制不太严格,程序设计自由度大

虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。

6.C语言允许直接访问物理地址,可以直接对硬件进行操作

因此既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可以用来写系统软件。

7.C语言程序生成代码质量高,程序执行效率高

一般只比汇编程序生成的目标代码效率低10へ20**时间就可以编写出一些软件。

但是有一点可以肯定,几个月从小白成长为大神是绝对不可能的。

要想出类拔萃,没有几年功夫是不行的。

学习编程不是看几本书就能搞定的,需要你不断的练习,编写代码,积累零散的知识点,代码量跟你的编程水平直接相关,没有几万行代码,没有拿得出手的作品,怎能称得上大神。

每个人程序员都是这样过来的,开始都是一头雾水,连输出九九乘法表都很吃力,只有通过不断练习才能熟悉,这是一个强化思维方式的过程。

知识点可以在短时间内了解,但是思维方式和编程经验需要不断实践才能强化,这就是为什么很多初学者已经了解了C语言的基本概念,但是仍然不会编写代码的原因。

程序员被戏称为码农,意思是写代码的农民,要想成为一个合格的农民,必须要脚踏实地辛苦耕耘。

也不要压力太大,一切编程语言都是纸老虎,一层窗户纸,只要开窍了,就容易了。

2)学编程难吗?

编程是一门技术,我也不知道它难不难,我只知道,只要你想学,肯定能学会。

技术就是一层窗户纸,是有道理可以遵循的,在我看来,比搞抽象的艺术要容易。

在技术领域,编程的入门门槛很低,互联网的资料很多,只要你有一台计算机,一根网线,具备初中学历,就可以学习,投资在5K左右。

不管是技术还是非技术,要想有所造诣,都必须潜心钻研,没有几年功夫不会鹤立鸡群。

所以请先问问你自己,你想学编程吗,你喜欢吗,如果你觉得自己对编程很感兴趣,想了解软件或网站是怎么做的,那么就不要再问这个问题了,尽管去学就好了。

3)英语和数学基础不行,可以学会吗?

初中毕业可以学会吗?

首先说英语。

编程需要你有英语基础,初中水平完全可以胜任。

编程起源于美国,代码中会出现很多单词,有英语基础记忆起来会非常容易,如果你不认识也没关系,我推荐你安装有道词典,它的划词功能非常棒,选中什么就及时翻译什么,不管是句子还是单词。

这样,相信你开发出常用的软件不成问题。

当然,如果你希望达到很高的造诣,希望被人称为大神,那么肯定要阅读英文的技术资料(不是所有资料都被翻译成了中文),初中水平就有点吃力了。

不过,长期阅读英文会提高你的英文水平,只要你坚持一段时间,即使只有初中水平,我相信借助有道词典也会提高很快。

如果你没有学过英语,不知道am、is、are,那我该怎么说呢,有志者事竟成,只要你想学,相信英语的障碍你也能克服。

至于数学,只要你不打算搞算法、机器学习/人工智能、大数据/数据分析,会加减乘除法,知道次方、开方、科学计数法等最基本的概念,就不要把数学当做学习的障碍了。

4)需要什么配置的电脑

如果你囊中羞涩,3K以上的台式机,4K以上的笔记本也可以胜任,当然有时候会卡顿。

经济条件允许的话,最好5K以上的台式机,6K以上的笔记本。

如果想从事编程行业,你早晚要有一台高配的机器。

它不但会让你工作更加流畅有效率,还会让你觉得工作是一种享受,所以很多程序员配备了MacBook。

5)学习编程要用Linux吗

很多大神都轻视地说,我不用Windows,一直在用Linux,只有Linux才能让你看到C的本质,C就是为Linux而生的。

话虽没错,但是你想想当初你学习Windows花了多长时间,是不是一开始连切换输入法也不会,编辑Word文档也不会;如果你切换到Linux,你也会遇到同样的问题,你需要一段时间来熟悉Linux,加大了你的学习成本,会慢慢消磨掉你对编程的兴趣。

所以我建议,你可以在Windows下学习C语言,完全没问题,如果有一天Windows不能满足你的学习需求了,那你再切换到Linux,这个时候你对编程已经很了解了,切换的成本也低了。

猜你喜欢:

1.c语言学习心得6篇

2.怎么开始学习java才正确有效

3.怎么学好数控编程与学习方法

4.大一的计算机基础怎么学好

5.怎么才能快速学好计算机编程

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1