我今天刚学习了c语言,感觉是一点听不懂,我该怎么办呢

Python020

我今天刚学习了c语言,感觉是一点听不懂,我该怎么办呢,第1张

如果刚开始接触c语言,听不懂也正常,不要有畏惧的心理,有些小伙伴可能看到部分同学什么都会,自己就很气馁,因为这部分同学很可能接触编程比较早,即使小孩学走路也有一个过程,刚开始有走路欲望->学会站立,腿部有力量->尝试走路,不断练习->学会走路。所以不要慌。

学C语言与走路一样,刚开始一定要有学习的欲望,然后,再制定计划,不断练习,量变会引起质变,坚持下去就发现原来这么简单。

1、学习资料

书本推荐:《c primer plus》难得的好书。老谭的书可看可不看,但是这本蓝皮的c primer plus是我案头必备的参考书,后面还有完整的c99标准库,所以适合当个参考书。注意区分一下《c++ primer》和《c primer plus》

如果觉得这几本书还是有点难,那就先看《C语言程序设计》

有了经验后要去看看,例子很经典。后来进阶可以看看三剑客《c和指针》《c陷阱与缺陷》《c专家编程》

刚学C语言的话可以结合看下C语言编程经典100例;

编译器:VS,DevC++,VC++,CodeBlocks,C-Free,Turbo C。关于它们的特点网上介绍很多了,就不赘述了。讲真,入门和基础阶段你用哪个无所谓,还是选自己喜欢的,不过对于初学者我们推荐Dev C++。可能现在大学课堂用的还是VC++,刚入门自己习惯就行。

视频推荐:有同学曾经说过,视频这么好,上课就不用听讲了,这个是完全错误的,视频是课堂补充,上课还是一定要好好听讲的,视频可以查缺补漏,系统的学习一下。b站找

学习方法:

1、过:学习一门新的语言,第一步就是把它所涉及的基础知识大体过一点,不求深解,只求了解——第一遍:无需了解太过深入的理论,大体知道这门语言是什么样的,主要面向哪些场合,一些基本的语法格式是什么样的就可以了。

2、抄代码:刚开始写代码,没有多少人一上来就能立刻自己写一个很完善很强大的代码,甚至连基本的语法都会写错,这时候抄代码就很关键了,从书上抄,从例子里抄,边抄边想,边想边回忆语法。

3、模仿改:自己会抄写一些简单的代码,熟悉了一遍此语言的简单语法后,但还不太清楚怎样下手写一个完整的代码模块,所以这一步要仿写了,仿照给出的代码写一个属于自己的代码

4、勤调试:没有人能一下子写出完全正确的代码,自己试着写一些代码,通过不断调试来验证自己的一些想法,继续思考,再次验证,来回折腾。熟悉一些基本的调试工具以及调试方法。

5、看n遍:出错或遇到问题时,将代码从头看到尾,看了一遍又一遍,直到快全部记住时,总能找出问题原因,相信方法总会比问题多

6、练重复2-5步三遍以上,不解释。

7、创新拿出一个完全没有写过的代码,根据要求,一步步的写出来。如果写不出来,或者中间一堆错误,请参考第六步。

8、悟:主动找到写代码的感觉和成就感,并保持下去,世界上最难的语言就掌握了,将成为你软件生涯永远的工具。

这个程序,就是让你搞清楚函数传值和传址的区别。

这里fun第一个参数是传址(值改变外部函数对应的变量值也改变)。第二个参数是传值(值改变外部函数对应的变量值不变)。

所以这个程序,x传地址&x,y传值。经过fun函数改变后,x的值改变了,而y的值不变。

老是看到有些朋友发帖子:

感觉对于学习c语言无从下手,特别是刚入门的朋友.看到那些奇怪的,不合常理的符号,感觉完全是摸不着路一样.

然后写这篇帖子,谈一下个人的学习方法和学习效率,希望对大家有帮助,特别是新手,

书的选择

首先选择一本或者两本,开始学习的时候,书不要过多,多了自己看不完,而且每一本书,作者都有自己的思路和写法习惯,然后现在市面上的书很多编写都不是很好,纰漏百出.看的多了反而感觉思维太混.一些印刷的错误或者其作者本来就写的不正确的程序,对于初学者或者是不懂的朋友,要花许多的时间把错误找出来.很是麻烦.我以前发的教材是北邮出版的,c语言程序设计.基本上教材上面的例子,就算照抄的话,3个就有2个要出现错误.上机课的时候,大家都不怎么会,就把例子抄下来.出了错,不能够通过编译,就不停的问老师.白白浪费了许多时间.

我感觉现在编写书的许多作者,在编写的时候,遇到些简单的程序,随手一写,然后就印刷上了书,也没经过调试得到正确的结果.最后出现了些许错误.也不管三七二十一,只要书能卖的好,就行了.这是相当不负责任的.误导读者.

开始学习,可以看看潭浩强的c程序设计,老潭的书卖得好,还是有他的理由的,错误比较少,然后讲的也比较通俗易懂,清华出的书我感觉都还可以.

习惯和方法

贵在坚持,每天看.一天不要搞懂很多的问题,但求把看过的一部分的每一个环节搞清楚,实在搞不清楚的,先跳过去,学习逐渐深入,看了后面在看前面,前后的知识是相通相连的.

我一般都会把书上的例子一个一个的敲到计算机上面,然后调试,运行.不要看过了就以为自己懂了,那是不好的,就算让你看100编,你输入到机器里面,还是可能会出错,一个简单的

main()

{ printf("hello world.") }

你就算这样背了下来,还是出错,因为你没有注意到语句少了分号,为什么这里有一个分号.只有自己把代码输入,机器编译通顺了,你才明白自己错在那里.当敲的代码越来越多,熟练度越高,编译再次出现错误,就知道错在那里.如何更正.还有一个好处就是可以发现一些错误,这些错误涉及到当前没有学习过的知识.然后通过逐渐深入的学习,在回想以前出错的,就知道当时为什么会出错.把这里改成

main()

{ print("hello world")}编译系统会报出不同的错误结果

比如这个函数没有写头文件,在某写c++的编译器中也不能通过,当你学习过c++的一些相关知识以后,你就会逐渐明白其中的道理.为什么要使用头文件等等.

错误是相当重要的,书上只会告诉你怎么写一个对的程序,程序的格式,程序怎么写.不会告诉你出了错误怎么修正,如何处理,靠自己不断的摸索,才会有新的心得和体会.

把课后的习题做完,做好,基本上都弄懂,习题是检验你这一章学习怎么样的一个标准.自己想,自己做,写出简单的算法,不懂的,上论坛,上c吧,发帖子,会有人告诉你的,

不要拿着书上的练习跑到论坛来求代码,这是不好的,也没有人愿意告诉你.谁都愿意帮助那些自己思考的朋友,不愿意帮助像乞丐一样不劳动就指望人家给你代码写好了把作业交差了事或者是只为了应付考试蒙混过关的人.那样的人不是真正的喜欢编程,不指望提高自己的水平,也不需要我们帮助.

学习后面的知识的时候,如果遇到以前的问题,再把掌握的代码敲一遍,敲两遍,敲n遍提高熟练度,更加可以发现新的问题.

mian()

{

int a = 5

printf("%d",a)

}

谁都知道输出5,把程序改从一小处

mian()

{

int a = 5

printf("%d")

}

程序是通不过编译呢,还是输出奇怪的字符或者地址.相信有部分朋友不知道.(我也不知道)

3不断深入

有如许多朋友发帖子说的,经常把一些时髦的语言挂到嘴边,比如说我要学c#好,还是,java好,不如把基础的东西弄懂弄通.在我看来,在没有学习好c 之前最好不要学习其他任何的语言,不要想到c#,java里面没有指针,没有复杂的东西,可以避难就易,基础的东西不学好,就像做的很华丽的豆腐渣工程,再漂亮,也是会倒的.学完了c ,学习数据结构,学完了,学习计算机编译原理,当你把这三门课都掌握的时候,再开始学习c++,c#,或者是java就很容易,也快得多,

把平时用的多的算法写下来,记住,把基础的学好以后,不断往后的学习,你会发现,知道的东西越多,不知道的东西越多,软件行业的博大精深,任何一个小的领域,比如c ,也许穷尽我门毕生的精力才发现自己错学只不过是边陲一角.

因为我自己的学习也在初学阶段徘徊,所以也不知道应该更加深入的学习的方法,但是相信知识积累到一定的程度.你自然就知道自己往哪方面发展.