> 首页 > 生活 > 百科 > 如何系统学习C语言

如何系统学习C语言

来源:网络 作者:佚名 时间:03-28 手机版

首先就是买书。推荐买《c语言入门》等相关书籍。看书可能看不懂,那就找老师,或者找资料;其次,建议在了解c语言的基本情况之后,寻找相关的网络授课,进行专业的学习;再者,做好长期面对枯燥文字的心理准备。计算机高级语言的学习并没有想象中的那么简单,其基本是由英文和各种符号组成的,并不像人类语言一样易于理解,要做好面对枯燥乏味事物的准备。

谈谈如何才能学好c语言

谈谈如何才能学好c语言如下:

学习C语言的目的也是要进行程序设计,所以,同样符合程序设计的一般思路和方法。要学好程序设计,首先要掌握的就是程序设计的基本过程和思路,只有这样,才能逐渐形成一个良好的设计习惯,能够正确地设计程序,高效地完成设计任务。

分析问题,找出解题思路。所谓分析问题是对要解决的问题进行分析,找出解决问题的基本思路,即用什么样的控制流程,找到表示抽象数据的程序语言方法,即用什么样的数据格式表示,这样才能把抽象问题数字化,流程化。

如“报数问题”:“有100人按编号顺序顺时针围成一个圈,现在从1号开始报数,并且下一位的报数总是加1,报数中凡能被3整除的人就退出圈外,直到圈中剩下三人为止,请问最后剩下三人的最初编号是多少。”这样一个看似简单的问题,真要着手写代码,真有不少问题。

首先,我们分析一下解题思路。对于按顺序绕圈报数,实际上就是绕圈在循环啊,所以可以使用循环结构。至于能被3整除的报数人退出圈外,这仅仅是个判断。

问题是当一个人退出后,这个圈变小了,实际中是中间留出了空位,程序中如何处理空位?这实际上就是我们如何表示这个圈的问题。

因为报数是按顺序进行的,而且是循环的,所以我们可以想象这些人是站成一个队列,报数从左开始,凡是能被3整除的就退出圈外,最右边一个人报数后又从最左边开始报数,这样就和圈报数的效果一样了。

在每报完一个循环后,队员立即向左对齐,消除中间空位,这样只是队列缩短了,并不影响报数,从而有效解决了空位问题。既然我们可以把一个圈想象为一个队列,问题就很容易解决了,对于这样一组连续的同类数据,学过C语言的人都知道,用数组表示是最合适不过了。

C语言简介:

C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括一些类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

C语言描述问题比汇编语言迅速,工作量小、可读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言可以编写系统软件。

二十世纪八十年代,美国国家标准局为了避免各开发厂商用的C语言语法产生差异,给C语言制定了一套完整的美国国家标准语法,称为ANSIC。

作为C语言最初的标准。 2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

C语言编译器普遍存在于各种不同的操作系统中,例如Microsoft Windows,Mac OS X, Linux, Unix等。C语言的设计影响了众多后来的编程语言,例如C++、Objective-C、Java、C#等。

零基础的话该如何系统的学习C语言的知识点

C语言是一个实用性很强的语言。你如果想要学好它,就得下一翻功夫。

首先,你要有一个正确的态度,没有一个正确态度的人是学不好任何东西的。你如果真想学好C语言的话,你就要做好好好学它的准备,不要三心二意。

其次,你要了解你学这个语言的目的。

还是想真正想用这一门语言。这就有很大的区别,这决定你学习的程度。

再次,你要了解你需要的教材。什么样的教材才是适合你。你要认真的选,不要太随意了。因为不同的教材程度不同,也不一定适合你。

然后,就是学的问题了。你做好了上面的准备,就好好开始学了。可是学好一门语言,一个好的方法很重要的。你要从整体上来理解C语言,认识到C语言的优势,还有C语言的特点。C语言是面向过程的一门语言,特别强调各个程序的关系。像程序之间的调用,这是很平常的。

一门语言的基础部分不过是一些关于数的类型,字符的类型的定义。你只要认真看不难明白的。不过最好的方法还是上机调试。在这一阶段做一些简单的程序。来明白C语言的编程环境,数字的类型。这样理解起来会更快些,也比较容易记忆。

最后,就是学习一些过程语言的基础的模式。顺序,循环,选择这些东西。这些东西都是一些活的东西,千万不要死记硬背,这是没有用的。在这一阶段,你可以编一些比较简单的程序。像数据的计算,成绩的判定等等。

c语言怎么系统的学习》?

学任何一门语言多练习才是王道。多找找题目,然后自己试着写程序,当然,你还得学会怎么编译、调试程序。你得学会看懂编译器的警告、错误信息。这些都是最最基础的。当你写完程序发现有问题的时候,可以对照知识点看书,或者上百度知道提问,但记得把代码贴上来。

初学者应该看的书:《c primer》。当然,如果你是在linux下,还应该看《UNIX环境高级编程》

给你推荐点书,建议你在linux下学C语言,因为开源代码很多,可以很好的学习:

第一阶段:《c primer》、《c primer plus》、《linux c》、《unix环境高级编程》

第二阶段:《深入理解计算机系统》、《代码大全》

第三阶段:《重构》

除了多看书,还要多看开源代码。因为很多开源代码写的都很经典。我是过来人,所以就有这些经验了。

很多人推荐谭浩强的书,我不推荐,原因是:谭浩强的书有的东西不标准也不完善。最简单的例子就是main函数。通篇用的是main()(这也是用windows学c语言的通病)。标准的main函数是int main(void)和int main(int argc, char *argv[])。因为弄懂了标准的main函数,你就明白了程序是如何和系统交互的。

深入学习C语言的具体步骤

①、对于你能写这么长的问题描述,说明你很认真。

②、你的目的性较强,但是你也想有更加明确的目标,我可以给你讲一下怎么自己去寻找目标和路线以及怎样学习。

③、计算机专业领域一共有几个大方向,十几个分支方向,而每个分支方向又有几十个小方向,每一个方向的深入学习与熟练到一定火候都不是一朝一夕,互相之间也不是完全没联系的,但是你现在就应该选择一个大方向并在其中的一个小方向内深入(为什么要这么早就选择具体的分支方向?后面说)。

④、这里列出计算机的几个大方向(非编程开发类的我就不说了):

基本方向:

1、单片机、嵌入式方向

2、网络编程:涉及到服务器程序、客户端开发、脚本设计等。

3、系统编程:基础API开发、桌面开发、系统程序开发、服务程序

4、图形学:3D、2D、图像识别、人脸识别

5、音频:语音识别、音频解码、音频软件

6、编译原理:编译器设计、脚本解释器、虚拟机、非自然语言翻译系统

7、应用层开发:利用高层语言去开发表层应用

8、安全:反工程、病毒、反病毒、木马、反木马、软件破解、软件加壳

附加方向:

8、人工智能:遗传算法、神经网络、灰色系统等等

9、游戏设计:各种游戏引擎设计以及业务逻辑设计等

⑤、基本方向是你一定要选的,附加方向只是基于基本方向的一些锦上添花,但是不管你怎么选,最开始某些东西一定要深入而不是只是懂就够(当然你对自己要求似乎不会很低),我把这个列出来:

数据结构:下面其他理论的基础。

操作系统原理:理解操作系统的架构和细节,你才能对以后关于多线程、文件管理、内存管理、指令优先级等有一个正确理解和运用。

编译原理:能够升华你对计算机编程语言的理解,对以后出现的各种编译、解释、兼容、移植、优化、并发与并行算法等有一个深入理解。

数据库系统原理:这个是进入公司都要会的,也是大型软件开发的基础。

软件工程:这个是你能够在经验不足还能保证大项目正常完成的理论基础。

网络技术:这个是必须学的,因为目前几乎没有一款装几率很高的软件或者平台跟网络无关。

数学的话,主要是:离散数学、线性代数、高等数学、计算机图形学、概率论

以上几个基础就是你成为一个融汇各个主要分支牛人必须学的(当然不是指理论,而是理论+实践编码能力)

⑥以上都是大的基础,要一一攻破并深入学习,虽然网络时代计算机专业知识爆炸式的增长,但是以上几个基础掌握后,会发现,以后的什么新的理论和技术都是基于这些大基础,你就很容易理解了。

⑦我为什么开头不讲你要具体学什么怎么顺序学呢?因为那些技术你要掌握的话,根本可以自己解决,但是如果你由于兴趣,沉迷于一些自己可见的小范围技术的话,那么毕业后虽然也能找到不错的工作,薪水也可能高,但是不能成为一个大牛。

现在才开始讲学习顺序,虽然你说不要推荐书,不过我还是要用书来做顺序。

C语言是可以写很多核心和高级的东西,而不只是小东西,但是从你代码来看,居然用到了 goto,我不是说你那些程序用到GOTO有什么不好,而是一定要避免用GOTO,goto是错误之源,如果你有什么内容非要用到goto才能写到,说明你的编码技巧还有不少提高空间。

你的学习顺序应该是:

C:做一个超级马里奥出来,并能够读取文本脚本来更新关卡。

C++:写一个2D图形引擎,封装掉细节,实现面向对象设计和可复用设计,并且用到《设计模式》中提到的一些设计模式,这样才能算对C++有一个很好的掌握。

MFC:MFC技术虽然近期已经冷下来了,但是你能熟练掌握它,才能证明你的C++OO技术够纯熟,严格证明你掌握了MFC很简单,你只要用MFC做出一个杀毒引擎就差不多了。推荐的书有《深入浅出MFC》。

《Windows程序设计》:和MFC不同的是,用的是windows核心SDK,也就是API,这本书学完后,你才能从操作系统层面上算掌握了win32 平台下的机理(其实win64和win32大部分机理类似)。

C#:C#里集合了当代和前沿计算机科学里最先进的一些语法(虽然执行效率一直被人质疑),但是你学完C#并深入后,至少能够算是对计算机语言有一个更加深刻的理解了。如何证明你C#学的不错了?也很简单,再次写一个随便什么游戏,比如俄罗斯方块。如果更加证明自己呢?用它写一个P2P网络对战游戏。

(如果你注意的话,会发现我说的学习顺序都是沿着语言和某些技术的,为什么呢?因为这些语言和技术涉及到特定的领域技术和计算机理论思想,比如【真正】学完了C#的话,就不单指学完了C#,而是把多种语言范式都学习了一遍,以及现代的程序开发思维(因为里面用到了很多让你一劳永逸的技术))

以上5个步骤都是基础大步骤,要解决的话要没1-2年应该不够。

与此同时,要尽快选出文中你感兴趣的方向作为3-5年的长期方向,不要担心过早选择分支方向会有什么损失,因为计算机很多分支是相通的,只有你把分支方向深入进去,才能真正理解很多理论的实践意义。并且一旦你在某个分支领域形成了较强的优势(比如,到公司里只有你这方面最强),那么你就是稀缺人才。

关于大方向的步骤就不说了,你主要就是要把我说的这几个基础步骤先解决,同时平时要注重大方向理论结合实际去编码和开发。

如何系统的学习C语言(我是一个初学者,什么都不懂)

下面是本人自己总结的方法。本人感觉只要你肯花时间。学好应该没问题。

《C程序设计》的内容很丰富,一般选谭浩强老师编写的教材,按照我们现在的教学大纲,教学的主要内容是基础知识、四种结构的的程序设计、函数与数组的应用和一些简单的算法。在学习时,同学们应该把主要精力放在这些部分,通过实践(练习和上机调试等熟练掌握。当然,在初学C语言时,可能会遇到有些问题理解不透,或者表达方式与以往数学学习中不同(如运算符等),这就要求不气馁,不明白的地方多问多想,鼓足勇气进行学习,待学完后面的章节知识,前面的问题也就迎刃而解了,这一方面我感觉是我们同学最欠缺,大多学不好的就是因为一开始遇到困难就放弃,曾经和好多同学谈他的问题,回答是听不懂、不想听、放弃这样三个过程,我反问,这节课你听过课吗?回答又是没有,根本就没听过课,怎么说自己听不懂呢?相应的根本就没学习,又谈何学的好?

不要说在家里自己学看着书这种方法.个人觉得完全是自欺欺人.而且你没有基础根本就学不到什么东西.不管你多用功!这种东西必须先入门!这才是最快的方法.起电脑学校培训去吧,他们教不到你什么东西,就是教你最快的入门跟编程基础,真真的你想靠IT致富的话,起码要有3年以上的工作经验再说!出了学校门,找个IT公司进去当”苦力”.跟着老师傅做几年项目,培养点工作经验!能独立完成业务了!你就离有房有车的日子不远了!前提是你必须好好在单位搞几年.

但是我没有银子,也没有关系怎么快速入门。建议大家可以看着书加上详细的视频教程学习是目前最好的方法,主要省钱还高效。可以从百度里面搜索“理想视频教程网”,自我感觉这个网的内容学习起来还可以,讲的比较系统。

最后,学习C语言始终要记住“曙光在前头”和“千金难买回头看”,“千金难买回头看”是学习知识的重要方法,就是说,学习后面的知识,不要忘了回头弄清遗留下的问题和加深理解前面的知识,这是我们学生最不易做到的,然而却又是最重要的。比如:在C语言中最典型的是关于结构化程序设计构思,不管是那种教材,一开始就强调这种方法,这时也许你不能充分体会,但是学到函数时,再回头来仔细体会,温故知新,理解它就没有那么难了。学习C语言就是要经过几个反复,才能前后贯穿,积累应该掌握的C知识。

以下几点是我的总结:

1、学好C语言,你可以很好地应付任何一种编程工具。

2、一定要多上机练习,通过程式了解相关知识。几经反复方得正果。

3、不要把学习C语言当成一种任务,更不要把它看成很难完成的任务。要充满自信,只要是一个智力正常的人都能学好C语言。始终保持游戏的心态,多发现其中的乐趣。当感到编程趣味无穷,那你在电脑方面将前程无量。

4、如果一个程式一时无法弄清楚最后暂时放在一边,过一段时间你可能会从其他的程式中悟出道理。

5、C语言是一个整体,各个方面是有机联系的,要从总体上把握它,不要把它割裂成互不关联的部件。

6、不要完全相信教材(包括本讲义),所有结论最好都上机验证。

怎样学好C语言

1. 工欲善其事,必先利其器

准备工作:一个开发环境,如Turbo C 2.0、Visual C++等开发工具;一本好教材,如谭浩强主编的《C语言程序设计》(第二版)。我当时看的是他的第一版,就为它的简洁、完美所吸引,简直爱不释手,用了两个星期一口气看完。

2. 秘密武器

初学者学习计算机语言要会“读程序”,要对小型的应用型、游戏型程序感兴趣,并模仿去加深对C语言程序设计的理解和操作,只有不断地写程序、调试程序才能得到编写程序的经验和加深对程序的理解,这也是学习编写优秀高级程序的秘密武器。

3. 发扬探索精神

学习C语言程序设计有点像做数学难题,只要我们善于思考,善于探索,发扬探索精神去寻找好的设计思想和方法,才能把C语言的精髓真正地掌握。

备战C语言考试要诀

1. 了解大纲,临阵不乱

各类笔试中,大多数考题是与大纲要求的基本内容一致的,难度不高,但内容十分广泛,应牢固掌握C语言考试大纲要求的基础部分。只有熟悉题型,理解语法、句法,做到心中有数,才能临阵不乱。

2. 善于归纳,强化记忆

对于需要记忆的计算机基础知识和基本概念,如果考试时因此失分就十分可惜。如:C语言中有几种不同的数据类型?运算的优先级别是怎样的?因此我们需要善于归纳这些计算机基础知识,并在理解的基础上强化记忆。

3. 重视实践,善于调试

计算机科学是一门理论性、实践性都很强的学科,对C语言考试的参加者来说,基础理论方面要求不高,而上机试题往往是很多考生不能通过考试的重要原因,因此要勤于实践。

4. 多做练习,查漏补缺

在认真地学完指定用书后,最好再找些试题,认真地测试一下,一则可以检查自己的复习情况;二则可以查漏补缺;三则可以调节心理状况,以备正式考试时沉着冷静、万无一失。

相关推荐:

如何系统学习C语言

木瓜炖雪蛤的正确做法

苹果原装耳机音质如何

如何系统性地学习英语

樱花的种类有哪些

木瓜发苦是什么原因

如何保养音响

木瓜和猕猴桃一起吃有什么好处

标签: [db:标签]

声明:《如何系统学习C语言》一文由排行榜大全(佚名 )网友供稿,版权归原作者本人所有,转载请注明出处。如果您对文章有异议,可在反馈入口提交处理!

最近更新

  • 如何系统学习C语言

    首先就是买书。推荐买《c语言入门》等相关书籍。看书可能看不懂,那就找老师,或者找资料;其次,建议在了解c语言的基本情况之后,寻找相关的网络授课...

    百科 日期:2023-03-28

  • win7acpi.sys蓝屏问题彻底解决方法教学

    win7acpi.sys蓝屏问题彻底解决方法教学分享。电脑因为一些不知原因导致了蓝屏,即使你通过重新启动的方法暂时得到了解决,但是不好保证下次还会...

    互联网 日期:2023-03-28

  • 小米印度智能手机出货量突破 2 亿大关

    感谢小编网友 华南吴彦祖 的线索投递!小编 7 月 20 日消息,小米 Redmi 印度官推宣布,小米已在印度出货 2 亿部智能手机,达成了新的里程碑。小米...

    互联网 日期:2023-03-28

  • 木瓜炖雪蛤的正确做法

    主料:雪蛤3克,木瓜一个,牛奶50ml。辅料:蜂蜜适量,姜片少许,冰糖适量。制作步骤:1、雪蛤清水泡发,拣去杂质。2、清水加姜片煮开,放入雪蛤煮片刻,去腥。3...

    百科 日期:2023-03-28

  • 苹果原装耳机音质如何

    1、苹果原装耳机一般会比较清淡,而且声音也非常舒展,几乎没有什么毛刺感,很耐听。同时苹果原装耳机的音质效果也是非常出色的,可以在不影响别人...

    百科 日期:2023-03-28

  • 如何系统性地学习英语

    早上起床后,打开复读机放到最大的声音听,直到离开家。带着MP3, 上班路上骑车听,不过要注意交通安全;或者拿着一张头天晚上写好的已学过的英文,边走...

    百科 日期:2023-03-28

  • 中国信通院:2022 年 6 月国内市场手机出货量 2801.7 万部, 同比增长 9.2%

    小编 7 月 20 日消息,中国信通院数据显示,2022 年 6 月,国内市场手机出货量 2801.7 万部,同比增长 9.2%,其中,5G 手机 2302.7 万部,同比增长 16.3%,...

    互联网 日期:2023-03-28

  • 樱花的种类有哪些

    1、山樱。山樱可以长到树干直径超过1米的大树,这类樱花在4月初就会开放近似白色的淡粉色花朵,同时还会生长出略带红色的新叶,美丽而浪漫。2、河...

    百科 日期:2023-03-28

百科排行榜精选

邮箱不能为空
留下您的宝贵意见