人人范文网 学习培训心得体会

学习c语言心得体会(精选多篇)

发布时间:2020-04-18 23:26:45 来源:学习培训心得体会 收藏本文 下载本文 手机版

推荐第1篇:学习C语言心得体会

c语言培训学习心得体会 c语言是一种结构化语言,是大部分编程语言的基础,c语言学好了,以后的java,c#以及更多的编程语言才有可能学好。下面就跟南宁达内小编一起,要学好c语言必须了解的四点:

1、课前认真预习,把下一节要上的内容先自己看一遍,把不懂的地方打个标记,等上课的时候可以请教老师。理解书上的例子,搞懂每个语句的含义,用法。看完后尝试着不看例子自己编写程序,编完以后再跟书上进行比较,看自己的程序还有哪方面的不足,再进行改正。想要真正学好c语言光看书是不够的,一定要自己多动手。

2、上课认真听讲积极思考,提高上课效率。老师上课讲述的都是课程的重点和难点,听好课程可以达到事半功倍的目的。

3、课后复习。把每天的上课内容回家再温习一遍,独立完成课后的作业,如果有时间,最好能找点课外书籍、课外习题什么的来巩固所学的内容。

4、主动上机,多多实践,提高动手能力。通过上机实践来验证所学的理论,通过在机器上查找错误来巩固概念,通过提高上机能力来促进理论学习,开阔编程思路,提高反映速度,提高分析问题解决问题的能力,锻炼心理素质,提高心理承受能力。

学习c语言的初期重点要放在掌握语言的语法和规定上,一定要养成良好的编程习惯,平时写程序注意语法规范格式控制,格式规范了,出了错误也容易找到出错的地方,这是c语言的基础;后期的重点要转移到掌握编程的思路和基本算法上来。课后多做习题,找一些经典例子尝试自己编写,写程序切忌半途而费,想到一个思路,就要按自己思路把它写完,就算错了,也可以让自己了解为什么这样做会错?错在哪里?会出什么结果?以后自己也很难在这个地方犯同样的错误。当学到一个新的知识点,就试着把它运用到以前做的习题上,不但巩固了以前学的内容,也更加能加强新知识的理解。 学习c语言就是要经过以上这样几个反复,才能前后融会贯通,积累所应该掌握的知识。c语言是这样,其他语言也是这样,从基本抓起,多动手,多动脑,不懂就问,注意平时积累。篇2:c语言心得体会作业 c语言心得体会

学习c语言已经一个学期了,刚开始学习的时候老是感觉力不从心。虽然认真听课了,但是并不能理解它。这种情况到了后来才有所改变。

之所以能有所改变,是因为本人找到了学习c语言的一些方法。由于c语言对于刚接触的学子,会感到很陌生。因为c语言所要用到的思维逻辑与我们平时的思维逻辑有所不一样。其显得更抽象。所以学习c语言,一定要打好基础。要把基础理解透彻。需要用到的语句要牢记,这样,在以后的运用当中,就能比较得心应手了。学习c语言的起步就是学习它的方法规则,如果把它学习得好在学习后面的时候就比较容易理。比如变量,首先要了解变量的定义方式(格式),其意义是什么(定义变量有什么用);其次就是要我要怎么去运用它(我要用什么型式去应用它)。在c语言的命令行中所有的语句都是有它自己的一定格式和形式出现在我们面前,所以在学习某种语句或命令时你首先要了解的就是它的规则是什么、有什么用、怎么实现等。这些都是语法基础,如果把它们都了解很好了,那么编起程序来就很得心应手。比如说if语句和switch语句,这两种条件语句都是用来执行判断功能的,那什么时侯用if什么时侯用switch,如果很好地了解它们的结构和作用的话那么就能灵活运用:若它的条件分支是多个而且条件的值是一个确定的值时就可以选用switch。反之,在大多数情况下就用if。 掌握了语言法规则,不一定就能编出程序来,其实学习编程就是要学习一种思想,一种思维方法,首先要确定一种算法,如从1加到100,判断润年等,我认为这些算法都是一种思维方法。画流程图就是在构建编写程序思路的过程,当画好一个流程图时编程思想也就出来了,程序也差不多了,再结合掌握的语言的方法规则,在计算机里实现就可以了。任何程序只要有思维,有想法,那么实现程序时就不会觉得无从下手。而要学习这种思维方法就是多做题,多读程序,学习别人好的思维方法,多想想一个程序还可不可以有另外一种方法来实现它。这样久而久之,自然会形成一种自己的思维方法。因此我认为不管学什么语言都是这样。

另外,良好的编程习惯也是学好c语言的重要因素。例如编写程序时用缩进的方式、写注释、程序写到一定的阶段时要做一下测试等。这些工作可以帮我们在调试程序时有很大的帮助。程序代码实现后,错误是难免的,所以也要锻炼自 己的调试查错能力,而良好的编程习惯可以使我们在调试时减小工作量和提高调试效率,也有助于形成自己的编程风格。

在学习的时候,我遇到过这么个情况。觉得c语言学起来很枯燥,很闷。后来才发现学习语言,是要有目的性。如果没有目的,你会发现自己在学习的过程中会很枯燥,会渐渐失去对c语言的学习兴趣。所以我们要有一个远大而又容易实现的目的,我要用c语言来做什么?再把这个最终的目的分成部分,让我们慢慢的一点一点的来完成它,这样在学习c语言的过程中,我们就会始终陶醉在一个又一个成功的喜悦里,让我们的学习越来越有兴趣。有一天,我们会发现:原来学习c语言真的是一件很有意思的事儿,而且学好c语言也不是很难么! 学习c语言只看书也是不够的,我们要一边看书,一边上机做练习,或者在你学习了c语言的基础知识以后就可以找一些别人的程序来看,遇到不明白的函数可以再翻一下书,如果查书也理解不了,我们可以把他的程序输入到计算机里,情况好的话能够顺利通过编译,如果不能顺利执行,我们也同样可以学习到一些c语言调试方面的知识。课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住。然而要使用c语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去掩盖程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对c语言的理解和程序开发能力。 总之一句话,在学习c语言中,一定要多动手。不要老是钻牛角尖,不断的

在那左思右想。用时候只要肯动手,编译错了再改。你会发现慢慢的就能够找到答案了。而且也能从中学习到很多东西,常言道失败是成功之母。只要不怕失败,不断的钻研、尝试,总会能够把困难解决的。

在学习c语言的过程中会遇到许多困难与挫折。但通过自己的努力,最终能克服种种的困难。所得到的成就感是无法用言语去形容的。从中学到的坚韧精神对于我今后的生活也有很大的影响。 c语言是一种抽象的语言,相对于我们平时用的语言,所以学习起来会用点吃力。但是面向对象程序设计的基本要素是抽象,程序员是需要通过抽象来管理复杂性. 管理抽象的有效方法是使用层次式的分类特性,这种方法允许用户根据物理含义分解一个复杂的系统,把它划分成更容易管理的块.例如,一个计算机系统是一个独立的对象.而在计算机系统内部由几个子系统组成:显示器,键盘,硬盘驱动器,dvd-rom,软盘,音响等,这些子系统每个又由专门的部件组成.关键是需要使用层次抽象来管理计算机系统(或其他任何复杂系统)的复杂性. 面向对象程序设计的本质:这些抽象的对象可以被看作具体的实体,这些实体对用来告诉我们作什么的消息进行响应. 学习c语言可以让我们更好的锻炼自己的逻辑思维能力,还可以让你掌握更好的计算机知识,在不断学习的过程中让自己真正的自信起来!学习c语言,对于以后的工作也是有所帮助的,它也可以结合其他的科目,来灵活运用。例如单片机的运用。用c语言去编辑单片机的主程序,会发现程序简洁多了。而且发现c语言的实用性很强。

虽然课程结束了,但在以后的学习过程中,我仍会不断的钻研,希望学得更多,能更好的在以后的工作中运用。篇3:c语言上机实验心得 c语言上机实验心得

在科技高度发展的今天,计算机在人们之中的作用越来越突出。而c语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好c语言,这对我们以后的发展是十分重要的。

说到这,上机实验当然就是一个必不可少的环节了,c语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。

通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了c语言那就大错特错了。

我主要存在以下的这些缺点:

1、学习耐心与细心不足,如scanf(“%d”,&n);中的“&”有时候会忘了。而在最后

输出时又错写成printf(“%d”,&n);从而错误得输出了地址而不是我原来想要的答案。

2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解

题了。

3、

4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够

深刻。

5、

6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在

一点问题。

为了能更好地学好c语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。

实验中我深刻意识到完成程序的编写,决不意味着万事大吉。认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。因为开发环境所提供的编译系统无法发现程序逻辑错误,或者是你原来所设计时的理论错误,这就只能靠自己的上机经验来分析判断错误的所在了。所以程序的调试是一个技巧性很强的工作,它可能比编一个程序耗时更

多。由此可看出上机实践的重要性。

通过本次c语言上机实验,我对这个介于人类与非人类之间的计算机编程语言有了一定的体验。编程的时候有因为顺利编出程序而开心过、有因为做得比人家慢而郁闷过、有因为不知从何入手而无奈过、有因为不知错出在哪而彷徨过??但随着练习的增多,我对c语言比以前熟了很多,不再只是纸上谈兵,我都有能力独立做出一些程序,可能对于一些“高手来说这不算什么,或者他们早就会了,但我依然觉得很开心,因为我跟我自己比是进步了。

当然,我还得感谢老师的指导与帮助,如果没有老师和其他同学的指点,我可能对c语言还是一筹莫展,在实验中遇到的大大少少的问题与所犯过的错误将是我以后的要加以注意的地方与认真审查的部分,为我奠定坚固的基石。伴随着学习的深入,我发现高深的东西还有很多很多,不懂不熟的知识还有很多,所以我不能停步,对c语言,我以后会更加努力学习的。篇4:c语言学习体会

选修c语言期末感受

(电商1032 陈冰寒 18715854669)

这学期,我选择了c语言作为自己的选修课程。因为我一直都对计算机编程非常感兴趣,但是选择专业的时候选择了电子商务没有选择计算机专业,所以一直没有机会接触计算机编程。在选择选修课的时候,我看见有c语言的时候,我便毫不犹豫的选择了这门选修课。

刚刚开始的时候,我以为上选修课会和正式上课一模一样,除了上理论课外还会安排上机,并且每个星期的课程也会是4节左右。但是第一次开始上选修之后,我才知道原来选修和必修的差距是非常大的。c语言每个星期就两节课,而且还没安排上机。这便会让我们对每个星期上的课程印象不深,到了下个星期在上课的时候,可能已经把上个星期的内容忘记的差不多了。这便会让我们觉得选修课上的没什么感觉,一个星期就两节课,不容易学到很多知识。这就会使得我们在上选修的时候变得没上必修课的时候那么认真,并且容易出现逃课的心理,就是觉得选修课上不上对自己没什么影响。这样便会非常不利于选修课的开展。一方面是老师看见每次选修课上的人都不是很多,心情就会变得不好,那么很多知识老师就是准备了,但是到时候看到这种场景可能都没心情讲了;另一方面,来上选修课的同学看见其他同学都可以不来上选修,那么来上选修的同学下次可能也会选择不来,这样,上选修课的同学就会越来越少。便会成为一个恶性循环。使得大家对选修课越来越不感兴趣。

其实我一直认为c语言是一门非常有乐趣的学科,因为c语言不仅仅需要将语言掌握好,更重要的是把握每种程序的思路。我这次选择c语言就是因为我参加了去年的计算机二级的考试,我暑假在家自学了c语言。前面几章的内容勉强还能看懂,但是到了后面的指针、数组的知识点我就不懂了。我一直都觉得如果有一个老师能带着我学习c语言,那么我肯定有信心能把c语言学号。所以我才选择了c语言。但是,计划跟不上变化这学期的c语言的学习并没有我预期的这么顺利。首先是因为考iece电子商务工程师所以耽误了一次课程,后来又是因为清明节家里有急事,所以有耽误了两次课程。这样下来,我就耽误了三次课程,而这三次课程里面有两次课程是在讲循环结构和选择结构,这两个结构是我自学的时候没有怎么学懂的,但这次却又错过了,这便使我学习c语言的积极性受到了打击,因为选修课不像必修课,经常都可以见到老师,而且还是小班教学,有什么不懂的可以慢慢问,但是选修课是大班课,而且一个星期就一次,和老师也不熟悉,所以有问题也没时间问,只能自己慢慢摸索。这样,进度就越拖越慢,到了后来的知识就不容易弄清楚了。

所以,我觉得选修c语言我不后悔,因为这是我一次都渴望学会的,但是这次选修课没能将c语言学懂我只能表示遗憾,在以后的学习里,我也会慢慢地将c语言学会。这是我的目标,就算在困难我也会去做。篇5:c语言程序学习心得体会 c语言程序学习心得体会

通过一学期对c语言的学习,我感觉学习c语言是有一定难度却又是非常有趣的科目。也是很有帮助的,特别是对将要面对的计算机二级考试。 这段时间的学习我知道了c语言的基本特点有以下几点:

1.语言简洁,使用灵活方便。 2.运算符丰富,表达能力强。 3.数计类型丰富。

4.目标程序质量高,具有面向硬件系统的特点。 5.具有结构化的控制语句和模块化的程序结构。 6.具有编译预处理功能。

7.程序设计自由度大,可移植性好。 这段时间学习使我掌握了:

一、我学习了c语言的数据类型、常量与符号常量、变量、c语言的运

算符和表达式、赋值运算符和赋值表达式、自增自减运算符以及逗号表达式等。

二、这章介绍了结构化程序的三种基本结构、c语句概述、数据输出包

括字符输出函数putchar()和格式输出函数printf()、数据输入包括字符输入函数getchar()和格式输入函数scanf(),还有一些简单的c语程序设计举列等。 前几天一直在看c++语法,所以对一些比较实际的例子总感到比较抽象,但是那也是一个必需阶段,可能大家和我的学习方式不一样,但从刚接触程序到现在来看,发现这样学习语言的方法挺不错的。

经过第一阶段对语法的学习,我觉得实例阶段应该是一个过渡阶段吧,通过前一阶段对语法的学习之后,可能有很多概念我们都比较模糊,或者说很多东西太抽象了,这就为我们第二个阶段的学习做好了实例化的准备,可以这样说吧,第一个阶段就我们为我们的学习一样东西而构建的一个类,里面讲了我们应该在这里面要做什么?第二阶,也就是本阶段,我们就应该去把前一段的东西具体化(实例化先前创建的类),那怎么个具体化呢,呵呵!说白了,去练习一些小例子,从网上下载的电子书上有很多这方面的例子的,如果有自己去书店买书的话,里面也应该提供了不少,里面的例子,我是每 次都打了一遍,也许有的人不会亲自去用手打一遍,什么copy等,当然这样也行,但我个人认为,对于初学者来说,最好还是自己动手打一遍比较好,毕竟这些东西对我们来说,都比较陌生,如果每个字都自己打完的话,有些代码你不想记住也难了,在这里,我们得弄懂练习的每一个例子,如果能把一些例子稍稍修改,弄懂里面精髓的东西,让自己知道为什么这样做,那么是最好不过的了,我平时练习时,这一步是少不了的,都习惯了,所以也就成了条件反射,想不这样都不行。最后,我们就应该汇一下总,把前面做过的例子里所用的技术理一下,再做一个比较大的例子,尽量把到目前为止所懂的知识全部应用到里面去,只是尽量,当然有些东西是不能集成到一起的,也是是代码之间的排斥性。

这是个人的一点学习心得,希望能更好的运用到学习中去。c语言是一门很有用的、对于我们的就业很实际的语言,学习好c语言是一项必须而实际的任务。我们必须要好好掌握。

推荐第2篇:c语言学习的心得体会

c语言学习的心得体会

下面是由小编为大家整理的关于c语言学习的心得体会,欢迎阅读参考。希望可以帮助到你。

在科技高度发展的今天,计算机在人们之中的作用越来越突出。而c语言作为一种计算机的语言,我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。

在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。

由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。包括了程序模块处理.简单界面程序.高级界面程序.程序的添加修改.用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。

上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。

学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基矗为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:

1.加深对课堂讲授内容的理解

课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用c语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。

学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。

通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去\"掩盖\"程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对c语言的理解和程序开发能力。

2.熟悉程序开发环境、学习计算机系统的操作方法

一个c语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓\"环境\"就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基矗同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。

3.学习上机调试程序

完成程序的编写,决不意味着万事大吉。你认为万无一失的程序,实际上机运行时可能不断出现麻烦。如编译程序检测出一大堆错误。有时程序本身不存在语法错误,也能够顺利运行,但是运行结果显然是错误的。开发环境所提供的编译系统无法发现这种程序逻辑错误,只能靠自己的上机经验分析判断错误所在。程序的调试是一个技巧性很强的工作,对于初学者来说,尽快掌握程序调试方法是非常重要的。有时候一个消耗你几个小时时间的小小错误,调试高手一眼就看出错误所在。

通过这次为数不多的几天计算机实践学习,我们了解了一些关于c语言的知识,理解巩固了我们c语言的理论知识,着对我们将来到社会工作将会有莫大的帮助。同时它让我知道,只要你努力,任何东西都不会太难

学习C语言已经一年多,对C也算得上半个入门者,期间也写过一些自娱自乐的代码。其实个人认为无论学习什么语言,最重要的是掌握习编程思想,然而C语言一种学习编程思想的基础语言。所以,C语言的重要性不言而喻。

无论用的是什么书,要学好C语言,把书上的每一个例题、习题的代码读懂,这是学C最基本的要求。弄懂每一章的内容是什么?在C语言中有什么用?并尝试修改每一个例题的代码,采用不同的代码来实现题目的要求。

在每一节课上,注意老师讲的内容,有的知识,老师稍微提点,你就能弄懂,但是自己看书,或许你几天也弄不懂。老师更能清晰地让你明白所要求掌握的知识点。在课堂上,尽可能多的在草稿纸上写下你自己的代码,让老师看或是自己上机调试。

无论学习什么知识,笔记是重点,俗话说:好记性不如烂笔头。一个认真学习的人,总是记了很多笔记的,想学好编程,你的笔记本上总有课本上的每一个例题代码的核心部分。以及八大经典的算法举例,递推、递归、穷举、贪心、分治、动规、迭代、分枝。

想学好C语言,交流是必须的,尤其是学习C语言的新手,这里,我向大家推介——百度C语言贴吧,这里有很多的学习者,也有很多高手,在这里你能学到课本以及课堂上学不到的东西。和他人交流也是很重要的。

这是学习好C语言的关重要的环节,无论你编程学得多好,上机实现才是目的,所以,不怕要辛苦,把你的每一段代码都敲进计算机,让计算机来实现,这样有助于你对程序的理解,并试着修改你的代码,让你的代码更精简,效率更高。平时没事的时候,在计算机上多敲代码,一个编程厉害的高手,他的计算机上会有多代码。

想成为编程高手的军规:

1、大学生活丰富多彩,会令你一生都难忘,但难忘有很多种,你可以学了很多东西而难忘,也会因为什么都没学到而难忘!

2、编程不是技术活,而是体力活。

3、C语言是基础,很重要,如果你不学好C语言,那么什么高级语言你都学不好。

4、计算机专业是一个很枯燥的专业,但即来之、则安之,只要你努力学,也会发现其中的乐趣。

5、学习编程的秘诀是:编程,编程,再编程。

推荐第3篇:C语言程序学习心得体会

C语言程序学习心得体会

涉外s13-1-16 何县庄

通过一学期对C语言的学习,我感觉学习C语言是有一定难度却又是非常有趣的科目。这段时间的学习我知道了C语言的基本特点有以下几点:

1. 语言简洁,使用灵活方便。

2. 运算符丰富,表达能力强。

3. 数计类型丰富。

4. 目标程序质量高,具有面向硬件系统的特点。

5. 具有结构化的控制语句和模块化的程序结构。

6. 具有编译预处理功能。

7. 程序设计自由度大,可移植性好。

这段时间学习使我掌握了:

一、我学习了C语言的数据类型、常量与符号常量、变量、C语言的运算符和表达式、赋值运算符和赋值表达式、自增自减运算符以及逗号表达式等。

二、这章介绍了结构化程序的三种基本结构、C语句概述、数据输出包括字符输出函数putchar()和格式输出函数printf()、数据输入包括字符输入函数getchar()和格式输入函数scanf(),还有一些简单的C语程序设计举列等。前几天一直在看C++语法,所以对一些比较实际的例子总感到比较抽象,但是那也是一个必需阶段,可能大家和我的学习方式不一样,但从刚接触程序到现在来看,发现这样学习语言的方法挺不错的。

经过第一阶段对语法的学习,我觉得实例阶段应该是一个过渡阶段吧,通过前一阶段对语法的学习之后,可能有很多概念我们都比较模糊,或者说很多东西太抽象了,这就为我们第二个阶段的学习做好了实例化的准备,可以这样说吧,第一个阶段就我们为我们的学习一样东西而构建的一个类,里面讲了我们应该在这里面要做什么?第二阶,也就是本阶段,我们就应该去把前一段的东西具体化(实例化先前创建的类),那怎么个具体化呢,去练习一些小例子,从网上下载的电子书上有很多这方面的例子的,如果有自己去书店买书的话,里面也应该提供了不少,里面的例子,我是每次都打了一遍,也许有的人不会亲自去用手打一遍,什么copy等,当然这样也行,但我个人认为,对于初学者来说,最好还是自己动力打一遍比较好,毕竟这些东西对我们来说,都比较陌生,如果每个字都自己打完的话,有些代码你不想记住也难了,在这里,我们得弄懂练习的每一个例子,如果能把一些例子稍稍修改,弄懂里面精髓的东西,让自己知道为什么这样做,那么是最好不过的了,我平时练习时,这一步是少不了的,都习惯了,所以也就成了条件反射,想不这样都不行。最后,我们就应该汇一下总,把前面做过的例子里所用的技术理一下,再做一个比较大的例子,尽量把到目前为止所懂的知识全部应用到里面去,只是尽量,当然有些东西是不能集成到一起的,也是是代码之间的排斥性。

这是个人的一点学习心得,希望能更好的运用到学习中去。C语言是一门很有用的、对于我们的就业很实际的语言,学习好C语言是一项必须而实际的任务。我们必须要好好掌握。

推荐第4篇:C语言程序设计学习心得体会

C语言程序设计学习心得体会

通过一学期对C语言的学习,我感觉学习C语言是有一定难度却又是非常有趣的科目。也是很有帮助的,特别是对将要面对的计算机二级考试。

这段时间的学习我知道了C语言的基本特点有以下几点: 1. 语言简洁,使用灵活方便。 2. 运算符丰富,表达能力强。 3. 数计类型丰富。

4. 目标程序质量高,具有面向硬件系统的特点。 5. 具有结构化的控制语句和模块化的程序结构。 6. 具有编译预处理功能。

7. 程序设计自由度大,可移植性好。 这段时间学习使我掌握了:

一、我学习了C语言的数据类型、常量与符号常量、变量、C语言的运算符和表达式、赋值运算符和赋值表达式、自增自减运算符以及逗号表达式等。

二、了解了结构化程序的三种基本结构、C语句概述、数据输出包括字符输出函数putchar()和格式输出函数printf()、数据输入包括字符输入函数getchar()和格式输入函数scanf(),还有一些简单的C语程序设计举列等。

前几天一直在看C++语法,所以对一些比较实际的例子总感到比较抽象,但是那也是一个必需阶段,可能大家和我的学习方式不一样,但从刚接触程序到现在来看,发现这样学习语言的方法挺不错的。 经过第一阶段对语法的学习,我觉得实例阶段应该是一个过渡阶段吧,通过前一阶段对语法的学习之后,可能有很多概念我们都比较模糊,或者说很多东西太抽象了,这就为我们第二个阶段的学习做好了实例化的准备,可以这样说吧,第一个阶段就我们为我们的学习一样东西而构建的一个类,里面讲了我们应该在这里面要做什么?第二阶,也就是本阶段,我们就应该去把前一段的东西具体化(实例化先前创建的类),也就是去练习一些小例 子,从网上下载的电子书上有很多这方面的例子的,如果有自己去书店买书的话,里面也应该提供了不少,里面的例子,我是每次都打了一遍,也许有的人不会亲自去用手打一遍,什么copy等,当然这样也行,但我个人认为,对于初学者来说,最好还是自己动手打一遍比较好,毕竟这些东西对我们来说,都比较陌生,如果每个字都自己打完的话,有些代码你不想记住也难了,在这里,我们得弄懂练习的每一个例子,如果能把一些例子稍稍修改,弄懂里面精髓的东西,让自己知道为什么这样做,那么是最好不过的了,我平时练习时,这一步是少不了的,都习惯了,所以也就成了条件反射,想不这样都不行。最后,我们就应该汇一下总,把前面做过的例子里所用的技术理一下,再做一个比较大的例子,尽量把到目前为止所懂的知识全部应用到里面去,只是尽量,当然有些东西是不能集成到一起的,也是是代码之间的排斥性。

这是我个人的一点学习心得,希望能更好的运用到学习中去。C语言是一门很有用的、对于我们的就业很实际的语言,学习好C语言是一项必须而实际的任务。我们必须要好好掌握。

推荐第5篇:c语言学习

一门新的语言学习(和C没啥关系!真的。);

2.看《Thinking In C++》,不要看《C++变成死相》;

3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看;

4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开发环境,而我们要学的是一门语言;

5.不要放过任何一个看上去很简单的小编程问题——他们往往并不那么简单,或者可以引伸出很多知识点;

6.会用Visual C++,并不说明你会C++;

7.学cla并不难,template、STL、generic programming也不过如此——难的是长期坚持实践和不遗余力的博览群书;

8.如果不是天才的话,想学编程就不要想玩游戏——你以为你做到了,其实你的C++水平并没有和你通关的能力一起变高——其实可以时刻记住:学C++是为了编游戏的;

9.看Visual C++的书,是学不了C++语言的;

10.浮躁的人容易说:XX语言不行了,应该学YY;——是你自己不行了吧!?

11.浮躁的人容易问:我到底该学什么;——别问,学就对了;

12.浮躁的人容易问:XX有钱途吗;——建议你去抢银行;

13.浮躁的人容易说:我要中文版!我英文不行!——不行?学呀!

14.浮躁的人容易问:XX和YY哪个好;——告诉你吧,都好——只要你学就行;

15.浮躁的人分两种:a)只观望而不学的人;b)只学而不坚持的人;

16.把时髦的技术挂在嘴边,还不如把过时的技术记在心里;

17.C++不仅仅是支持面向对象的程序设计语言;

18.学习编程最好的方法之一就是阅读源代码;

19.在任何时刻都不要认为自己手中的书已经足够了;

20.请阅读《The Standard C++ Bible》(中文版:标准C++宝典),掌握C++标准;

21.看得懂的书,请仔细看;看不懂的书,请硬着头皮看;

22.别指望看第一遍书就能记住和掌握什么——请看第二遍、第三遍;

23.请看《Effective C++》和《More Effective C++》以及《Exceptional C++》;

24.不要停留在集成开发环境的摇篮上,要学会控制集成开发环境,还要学会用命令行方式处理程序;

25.和别人一起讨论有意义的C++知识点,而不是争吵XX行不行或者YY与ZZ哪个好;

26.请看《程序设计实践》,并严格的按照其要求去做;

27.不要因为C和C++中有一些语法和关键字看上去相同,就认为它们的意义和作用完全一样;

28.C++绝不是所谓的C的“扩充”——如果C++一开始就起名叫Z语言,你一定不会把C和Z语言联系得那么紧密;

29.请不要认为学过XX语言再改学C++会有什么问题——你只不过又在学一门全新的语言而已;

30.读完了《Inside The C++ Object Model》以后再来认定自己是不是已经学会了C++;

31.学习编程的秘诀是:编程,编程,再编程;

32.请留意下列书籍:《C++面向对象高效编程(C++ Effective Object-Oriented Software Construction)》《面向对象软件构造(Object-Oriented Software Construction)》《设计模式(Design Patterns)》《The Art of Computer Programming》;

33.记住:面向对象技术不只是C++专有的;

34.请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码;

35.把在书中看到的有意义的例子扩充;

36.请重视C++中的异常处理技术,并将其切实的运用到自己的程序中;

37.经常回顾自己以前写过的程序,并尝试重写,把自己学到的新知识运用进去;

38.不要漏掉书中任何一个练习题——请全部做完并记录下解题思路;

39.C++语言和C++的集成开发环境要同时学习和掌握;

40.既然决定了学C++,就请坚持学下去,因为学习程序设计语言的目的是掌握程序设计技术,而程序设计技术是跨语言的;

41.就让C++语言的各种平台和开发环境去激烈的竞争吧,我们要以学习C++语言本身为主;

42.当你写C++程序写到一半却发现自己用的方法很拙劣时,请不要马上停手;请尽快将余下的部分粗略的完成以保证这个设计的完整性,然后分析自己的错误并重新设计和编写(参见43);

43.别心急,设计C++的cla确实不容易;自己程序中的cla和自己的cla设计水平是在不断的编程实践中完善和发展的;

44.决不要因为程序“很小”就不遵循某些你不熟练的规则——好习惯是培养出来的,而不是一次记住的;

45.每学到一个C++难点的时候,尝试着对别人讲解这个知识点并让他理解——你能讲清楚才说明你真的理解了;

46.记录下在和别人交流时发现的自己忽视或不理解的知识点;

47.请不断的对自己写的程序提出更高的要求,哪怕你的程序版本号会变成Version 100.XX;

48.保存好你写过的所有的程序——那是你最好的积累之一;

49.请不要做浮躁的人;

50.请热爱C++!

建议你买本书,书比网上的电子版教程好的多,如计算机届超级权威教授 谭浩强 老先生写的《C语言程序设计(第三版)》,全国发行了700万册,可以说是学C语言的人必看的书,我们大学就用这本书,很适合自学,通俗易懂

建议你学习其它计算机知识时也看他的书,他出的书很多,涵盖面广,每一本都很经典

这里有他的教程word版下载

另外,机械工业出版社的 计算机丛书系列也相当经典,全是翻译国外经典教材,国外计算机发展早,水平比国内高很多,看这些教材事半功倍,推荐(美)Al Kelley Ira Pohl的《C语言教程第4版》

学习程序语言要持之以恒,不浮躁,祝你成功

推荐第6篇:C语言心得体会

在朗沃学习已经差不多一个月了,今天是学C语言的最后一天。在学习C语言的过程中感觉比较轻松,可能是因为以前接触过C语言,再加上只学了C语言的基础吧,也有了一些学习C语言的心得。

学习C语言的起步就是学习它的方法规则,如果把它学习得好在学习后面的时候就比较容易理。比如变量,首先要了解变量的定义方式(格式),其意义是什么(定义变量有什么用);其次就是要我要怎么去运用它(我要用什么型式去应用它)。在C语言的命令行中所有的语句都是有它自己的一定格式和形式出现在我们面前,所以在学习某种语句或命令时你首先要了解的就是它的规则是什么、有什么用、怎么实现等。这些都是语法基础,如果把它们都了解很好了,那么编起程序来就很得心应手。比如说if语句和switch语句,这两种条件语句都是用来执行判断功能的,那什么时侯用if什么时侯用switch,如果很好地了解它们的结构和作用的话那么就能灵活运用:若它的条件分支是多个而且条件的值是一个确定的值时就可以选用switch。反之,在大多数情况下就用if。

掌握了语言法规则,不一定就能编出程序来,其实学习编程就是要学习一种思想,一种思维方法,首先要确定一种算法,如从1加到100,判断润年等,我认为这些算法都是一种思维方法。画流程图就是在构建编写程序思路的过程,当画好一个流程图时编程思想也就出来了,程序也差不多了,再结合掌握的语言的方法规则,在计算机里实现就可以了。任何程序只要有思维,有想法,那么实现程序时就不会觉得无从下手。而要学习这种思维方法就是多做题,多读程序,学习别人好的思维方法,多想想一个程序还可不可以有另外一种方法来实现它。这样久而久之,自然会形成一种自己的思维方法。因此我认为不管学什么语言都是这样。

另外,良好的编程习惯也是学好C语言的重要因素。例如编写程序时用缩进的方式、写注释、程序写到一定的阶段时要做一下测试等。这些工作可以帮我们在调试程序时有很大的帮助。程序代码实现后,错误是难免的,所以也要锻炼自己的调试查错能力,而良好的编程习惯可以使我们在调试时减小工作量和提高调试效率,也有助于形成自己的编程风格。

这就是我这一个月以来学习C语言的心得

C语言是一种编译性的语言,由于出现的时间比较早,所以现在有很多不同的编译环境。在这里我不想推荐一种编译环境,只是希望大家能够找到满足自己要求的。首先我们可能会去找中文的编译环境,比如国内的WIN-TC之类,但是从以后的学习中我认为初学者还是应该从英文的环境开始入手会比较好。因为大多数的编译器都是英文的,如果对英文不习惯,为了将来你也要慢慢的去学习适应。当然不是每个人的英文水平都会那么好,那么我们可以借助于计算机,用一些在线的翻译软件,如金山词霸之类的就很好用。让我们在学习一种计算机语言的同时又可以从中掌握一些常用的英语单词,这对于我们以后学习计算机,无论是不是从事软件开发都会有好处的。

不要想以后的计算机语言会是中文的语句,这一点永远都只会是幻想。我们可以想一下,是打一个IF快一些,还是你打“如果”快一些呢?

学习语言要有目的性。没有目的你会发现自己的学习的过程中很枯燥,会渐渐失去对C语言的学习兴趣。所以我们要有一个远大而又容易实现的目的,我要用C语言来做什么?再把这个最终的目的分成部分,让我们慢慢的一点一点的来完成它,这样在学习C语言的过程中,我们就会始终陶醉在一个又一个成功的喜悦里,让我们的学习越来越有兴趣。有一天,我们会发现:原来学习C语言真的是一件很有意思的事儿,而且学好C语言也不是很难么!

学习C语言要有一定的方法。很多人学习C语言都是自学的,这里我向大家推荐一种方法。在学习的过程中,我们会发现一章一章的看下去会很枯燥,那么我们可以先掌握C语言的基本数据类型和控制结构,然后用自己的想法来实现一种功能,不会的地方可以再去书中找。不要把书当成教材,要把它当成一本字典,一个工具。如果大家还是习惯于看书中的章节循序渐近的话,我们也可以改一下,遇到不会的地方,我们可以跳过去,看下面的章节,直到把书看过一遍后我们再回到以前不懂的地方,你就会发现你已经可以看懂了。再有就是不要看一本书,每个人的思想都不相同,虽然都是C语言书籍的作者,但每个人对C语言的理解和表述都不会一样的,如果你正在看的一本书你看不懂,或是不理解,那么我建议你再去买一本另外作者写的。也就是说不一定别人说的好书就适合我们,书一定要多读多看。

学习C语言只看书也是不够的,我们要一边看书,一边上机做练习,或者在你学习了C语言的基础知识以后就可以找一些别人的程序来看,遇到不明白的函数可以再翻一下书,当然,看别人程序的时候手头有一本库函数大全是最好不过的事儿了。如果查书也理解不了,我们可以把他的程序输入到计算机里,情况好的话能够顺利通过编译,如果不能顺利执行,我们也同样可以学习到一些C语言调试方面的知识。

说了这么多有朋友也许会问,学习C或其它语言对我们有什么好处呢?有一点我可以告诉给大家,学习C语言可以让我们更好的锻炼自己的逻辑思维能力,还可以让你掌握更好的计算机知识,在不断学习的过程中让你真正的自信起来!让我们一起来学习C语言吧!

推荐第7篇:C语言心得体会

C语言学习心得体会

襄樊职业技术学院 计应0802 蒋静

光阴荏苒,当一年的时光白驹过隙般一晃而过,我的C语言学习历程划上了句号。但我深知我所学到的只不过是C语言的皮毛而已。将来我若想有所提高,有所成就,就还必须努力完善自己的C 语言体系,下面我就简谈一下自己的学习体会吧!

开始学习时,我几乎听不懂老师在讲什么,就感觉讲台上一个博学者在给我们讲一些让我们“得道成仙”的话语,可怜的是台下的我们没有一个人晓得他的仙语。总之,课堂上老师讲的是唾惺横飞,而我们是听得昏昏欲睡。

随着时间的推移,随着知识的积累,我对C语言的认识终于有了点眉目。我越听越有一种懂它恨晚的感觉,但是从此我在C语言上的磕磕绊绊也开始了…….

C语言的学习,有许多要迈过去的沟沟坎坎,那我就说一下里面的玄机吧。C语言是写给电脑看的语言,电脑只懂二进制,所以我们就必须掌握二进制与八进制、十进制、十六进制的转换关系。其次,我们必须记住C语言的关键字,且C语言有许多常用字符,它们和ASCII代码一一对应。再次,C语言有许多运算符,它们的结合方向不一样,且有各自的优先级。我们要掌握C语言,那么掌握它们就是基础。C语言是一种高级语言,是所有语言的基础,学好C语言,将对我们今后的语言课程的学习有很大帮助。当我学到数据结构这门课时,我能够隐约地感觉到C语言学到的知识,在其中派上了用场。如数组的学习,给我带来了不少烦恼。但是说起数组来,它贯穿于我们整个C言之中,我们经常要用它来存储数据。编写图形要用它来储存坐标数据,编写音乐要用它来储存音符乐谱,即使学生的成绩也要用到它来储存„„但是,如果我们在利用它的时候,不好好注意,将被弄得眼花缭乱!我们在利用它来处理数据的时候,涉及到的排序,找最大,最小值这些问题。特别是排序,方法挺多,但如果不把握住几种常用的方法,使用数组就变得非常不便。常用的方法中,有冒泡排序,选择排序,希尔排序,快速排序等方法:选择法排序,与冒泡法排序都是利用for循环语句,前者是先寻找出最大最小值的下标,然后再交换,后者则是利用相邻间元素的比较大小,不符合要求顺序的就交换,这样一级一级地向上交换,把最大的或者最小的放到最上面去;对于后两种办法排序,都利用到循环次数不确定的while和do-while语句,前者还利用到for语句,希尔排序利用一一对应比较的办法,后者利用数组中其它元素与中间数进行比较大小,然后实行交换。

以上只是我学习C语言的一此经历,下面我想与大家分享一下我的学习经验、建议:

一、学习C语言呢,首先要调整好自己的心态,不要再想着玩了。只有自己努力学习,才能学有所得,学有所想,学有所用。

二、在学习C语言的时候不要钻牛角尖,不要在一个问题上卡死,当你遇到问题时,要多想想多条途径去解决一个问题。如果实在解决不了了,可以去请教你的任课老师。(学习的时候一定要注意这几点,不会的一定要问明白,不管谁能让他教会你知识就是你的了,要学会让知识为我所用。在看书的时候一定要做好标记,特别是不懂的地方一定要标明是什么意思。)

三、学C语言时,要多想,多写,多练,多动!当一个题目出现的时候,你不能只想到用一种方法去解决它,要多想出几种方法去做、去研究;当你将它完成后,可以将它全部删去,然后再重新写,写个

二、三遍就熟悉了;如果你有多余的时间,你可以按照这道题的模板稍加修改,然后自己去做,做个N遍,此为多练;一般来说,一道题如果你有三种做法将它做出来,那么对于这一类型的题目你就不在话下拉!当然你也可以给自己出题目,多动动脑筋,这样可以提高自己的发散思维和逻辑能力,这是很重要的!!!

四、在上课的时候一定要认真听老师讲课及上课演示的代码,因为有些东西是书上没有的。如果上课不认真听,那么在练习的时候是很困难的(当然天才除外)。

五、在学习语言的时候一定要记住动手,不要只说不做,这样会行成眼高手低,不管什么样的程序都要亲手做过才能说会了。

六、学习时,老师是宝贵的资源,但也别忘了图书管的作用,多跑图书管,多借相关的书看,多看程序、分析程序思想、多做题,从中寻找不会的题,与老师、同学交流,进而不断地提高自己!

最后,再送大家几句话:

1、学习不要死钻牛角尖,当你遇到解不开的问题时,就要换一种方法去想想,说不定会有新的路给你去走,而且很宽敞。主要是要用心去学、并且要找到好的学习方法,肯定有所成功。

2、在学习C语言的路上我们都是公平的,且我们的智力大抵相似,最后能否成功就看我们的学习态度。要想成功,我们就必须努力且要坚持,因为蝴蝶是蛹痛苦脱茧后的羽化,凤凰要在烈火中锻造才能涅磐。

3、想想自己的未来,看看自己的过去。我不想用过多的时间来考虑。过去的一切都已经不可挽回了。未来又充满了无数的变数。我只想把握的就是现在。总结过去的经验,并用以指导现在,我想才能在以后的日子里少些感伤,少些变数,让未来变得更美好。

4、想成功的人找方法,梦想成功的人找失败的借口,我希望我和我的朋友都不是一个找借口的人。

以上所述,旨在抛砖引玉,若有不当,敬请见谅!

2009-07-15

推荐第8篇:C语言程序学习心得体会解析

C语言程序学习心得体会

通过一学期对C语言的学习,我感觉学习C语言是有一定难度却又是非常有趣的科目。也是很有帮助的,特别是对将要面对的计算机二级考试。

这段时间的学习我知道了C语言的基本特点有以下几点: 1.语言简洁,使用灵活方便。

2.运算符丰富,表达能力强。

3.数计类型丰富。

4.目标程序质量高,具有面向硬件系统的特点。

5.具有结构化的控制语句和模块化的程序结构。

6.具有编译预处理功能。

7.程序设计自由度大,可移植性好。

这段时间学习使我掌握了:

一、我学习了C语言的数据类型、常量与符号常量、变量、C语言的运

算符和表达式、赋值运算符和赋值表达式、自增自减运算符以及逗

号表达式等。

二、这章介绍了结构化程序的三种基本结构、C语句概述、数据输出包

括字符输出函数putchar(和格式输出函数printf(、数据输入包

括字符输入函数getchar(和格式输入函数scanf(,还有一些简

单的C语程序设计举列等。

前几天一直在看C++语法,所以对一些比较实际的例子总感到比较抽象,但是那也是一个必需阶段,可能大家和我的学习方式不一样,但从刚接触程序到现在来看,发现这样学习语言的方法挺不错的。

经过第一阶段对语法的学习,我觉得实例阶段应该是一个过渡阶段吧,通过前一阶段对语法的学习之后,可能有很多概念我们都比较模糊,或者说很多东西太抽象了,这就为我们第二个阶段的学习做好了实例化的准备,可以这样说吧,第一个阶段就我们为我们的学习一样东西而构建的一个类,里面讲了我们应该在这里面要做什么?第二阶,也就是本阶段,我们就应该去把前一段的东西具体化(实例化先前创建的类,那怎么个具体化呢,呵呵! 说白了,去练习一些小例

子,从网上下载的电子书上有很多这方面的例子的,如果有自己去书店买书

的话,里面也应该提供了不少,里面的例子,我是每次都打了一遍,也许有的人不会亲自去用手打一遍,什么copy等,当然这样也行,但我个人认为,对于初学者来说,最好还是自己

动力打一遍比较好,毕竟这些东西对我们来说,都比较陌生,如果每个字都自己打完的话,有些代码你不想记住也难了,在这里,我们得弄懂练习的每一个例子,如果能把一些例子稍稍修改,弄懂里面精髓的东西,让自己知道为什么这样做,那么是最好不过的

了,我平时练习时,这一步是少不了的,都习惯了,所以也就成了条件反射,想不这样都不行。最后,我们就应该汇一下总,把前面做过的例子里所用的技术理一下,再做一个比较大的例子,尽量把到目前为止所懂的知识全部应用到里面去,只是尽量,当然有些东西是不能集成到一起的,也是是代码之间的排斥性。

这是个人的一点学习心得,希望能更好的运用到学习中去。C语言是一门很有用的、对于我们的就业很实际的语言,学习好C语言是一项必须而实际的任务。我们必须要好好掌握。

推荐第9篇:c语言学习总结

c语言学习总结

c语言学习总结篇1:

怎么才能学好c语言呢?

1,要学习c语言的基本语言及程序结构,这时谭浩强的那本书就比较经典了。c语言学习心得。当然你不能只看书,要动手动写代码,去上机测试。因为很多时候写程序就是一个测试,你就是再牛的程序员也不能可写出没有bug的程序,所以学会找出程序中的错误很重要。这也是你以后分析他人的程序的先决条件,不可偷懒只看书,这样你是不可能学好一门计算机语言的。

2,分析他人写的程序,网上有很多实例代码,下载下来自己先看一下他们的实例是解决什么问题的,有时候很多经典的模块可以为已所用的。不过,网上下的代码中会存在很多问题,环境问题啊,编程习惯问题了,不过也好,在解决问题的过程中你会学到很多东西的,像我在分析网上下的代码时就遇到了我平时没有遇到的dos函数,masm与c语言的接合等方面的问题,学到了不少东西呢。

3,要是你再想学的深一点儿,那还得学习,,及,再深就要去分析linux内核或是驱动程序了,这因人而异。但不管怎么学,一定要有个方向,有计划,这样才会事半功倍。c语言学习心得。如果你能找到你想学习方面的高手指导,或是几个人一起学的话那就更好了。

4,分析c语言函数的实现方法。这对你很好地使用函数会很有帮助的,再者很多大公司的笔试题就是让你实现c语言的数,比如:中兴的strcpy,阿里巴巴的strcmp,上海贝尔公司宣讲会上一个技术总监说,要是谁能说出printf的实现方法及返回值,当场录用。再者,c语言经过这么多年的考验,仍然很热门,可见其开发是多么经典啊,学习一下c函数实现,比学习任何书都要好。要是再有兴趣的话就分析一下c的头文件,这也是个不错的学习方面。 c语言学习总结篇2:

学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:

1。加深对课堂讲授内容的理解

课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用c语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现

原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。

学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。

通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去\"掩盖\"程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对c语言的理解和程序开发能力。

2。熟悉程序开发环境、学习计算机系统的操作方法

一个c语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓\"环境\"就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。

3。学习上机调试程序

完成程序的编写,决不意味着万事大吉。你认为万无一失的程序,实际上机运行时可能不断出现麻烦。如编译程序检测出一大堆错误。有时程序本身不存在语法错误,也能够顺利运行,但是运行结果显然是错误的。开发环境所提供的编译系统无法发现这种程序逻辑错误,只能靠自己的上机经验分析判断错误所在。程序的调试是一个技巧性很强的工作,对于初学者来说,尽快掌握程序调试方法是非常重要的。有时候一个消耗你几个小时时间的小小错误,调试高手一眼就看出错误所在。

通过这次为数不多的几天计算机实践学习,我们了解了一些关于c语言的知识,理解巩固了我们c语言的理论知识,着对我们将来到社会工作将会有莫大的帮助。同时它让我知道,只要你努力,任何东西都不会太难。

推荐第10篇:C语言学习总结

C语言学习总结

一、学习名称:

09国土班入校第一周“C语言学习”

二、学习背景

鉴于以前的电脑知识了解少和以后学习C++打下基 础,老师组织一次C语言学习。

三、学习的目的

1、增加学生对计算机语言的了解。

2、培养学生的语言素质。

3、为以后学习C++打下基础,更好的学好专业课。

四、学习流程

1、开学第一周每天晚上7:00在系机房学习2、主要有李军利老师讲课

3、讲课内容主要与C语言的入门、语法、语句等方面学习。4、学们自己课上向老师问答,课下学生自己联系总结。

五、学习细则

1、主办方:国土系09级国土班

2、学习对象:国土系09级国土班

3、学习地点:系机房

4、时间:晚上19:00-21:00

六、学习总结

通过这次C语言学习,大家对计算机语言有一定的了

解;知道了什么是C语言和它的一些发展历史、应用范围、功能等方面的知识;我们懂得了什么数组,整形、字符等很多知识,对以后的语言学习起到引导作用。

总结人:2009级国土班学习委员汝付伟2009年9月

第11篇:学习C语言 心得

C语言学习心得

刚开始学C语言的时候,很迷茫,在此之前从没有接触过C语言,有点摸不着头脑。可是在上机过后,我觉得编程是很有趣的一件事。我知道要学好C语言不容易,可是我决定

=完成这件不容易的事。

要学好C语言就要先懂得最基本的语法知识,看课本是必需的。我觉得看不懂也没关系,尽力去理解就好了,在对知识有了一个大致的了解过后,就要上机实践。学习C语言一定要动手,只看不做,眼高手低是不行的。

最开始可以打书上的例题,熟悉程序,慢慢的开始试着编程。在编程时要理清自己的思路,然后再转换成C语言中的语言,这个时候就更要动手了,只有通过上机操作才能验证自己程序的正确性。执行程序,不要害怕错误,其实,我觉得错误是好的,知道了自己所学知识的不足,并根据提示改

正程序中发生的错误,一种成就感油然而生,觉得自己的付出都是值得的。

良好的编程习惯是学好C语言的重要因素,只有勤动手,多动脑才能学好C语言,光说不练是不行的。

在学习的时候,不会的一定要问明白,可以求助于老师,同学,不要自己一个人钻牛角尖,浪费时间又学不到东西。

上课的时候一定要认真听,老师讲的肯定是最重要的,错过了就是一大笔损失,认真听讲才可以提高学习效率。

我觉得在编程之前,要把自己的想法写在纸上,如果是简单一点的程序不需要这样,如果程序比较复杂,就写下来,这样可以让思路更加清晰。

输入程序时一定要认真,不要把“,”与“;”混淆,用

scanf的时候不要忘记“&”,用“switch”要记得“break”,用if,while的时候注意不要加“;”,“{}”“()”一定要配对,不要多也不要少一半,“=”与“==”的区别要清楚,要勤查优先级,要记住一些基本的,例如两个值之间的调换怎么写等等。

在编程时除了要认真谨慎之外,更重要的是掌握基本的知识,例如if语句与switch语句的区别,它们都是条件语句,用来执行判断功能,但是什么时候用if什么时侯用switch应该弄清楚:若条件分支多但是条件的值是一个确定的值时就用switch。反之,在大多数情况下就用if。又如各种循环的应用,及循环之间的嵌套都要能灵活应用。还要注意一些细小的琐碎的知识,如C语言规定的标识符,大小写字母间的ASCII代码值相差32,强制类型转换符,自增自减运算符,符合运算符,逗号运算符等。

学习C语言需要的是坚持下去的毅力,认真对待每次错误的耐心,还有孜孜不倦的努力。拥有一个良好的心态,相信自己,你就会发现学好C语言不再困难!

第12篇:c语言学习调查表

软件二班C语言学习情况调查表

1.你对C语言感兴趣吗?

A 很感兴趣B 比较感兴趣C 一般D 烦恼

2.您觉得这门课的知识对你来说容易掌握吗?

A 很难 B 一般C容易D很容易

3.你认为c语言学习重要吗?

A 很重要, 因为我要学好每一门课

B很重要,因为我对计算机感兴趣而C 语言,而且是学习其它计算机程序设计语言的基础

C 无所谓,因为学习C 语言只是为了应付考试而已

D 不重要,因为 C 语言对我将来没帮助

4.在平常的课上,你是否认真地听老师讲课呢?

A一向很认真B 比较认真,偶尔打瞌睡或做其他事情C 经常打瞌睡或做其他事情

5.上完课后,一般你能够掌握老师的讲课内容吗?

A 经常能够掌握并准确应用B 一般掌握,但不能够准确应用 C 很难掌握 D 根本不理解

6.上课和作业之外,你觉得花多少时间来练习C语言比较合适?

A 不需要B 一个小时以内C 一至两个小时D 两个小时以上

7. 您觉得学习C语言最难的地方是什么?

A语法规则B算法C 都很难D其他

8当你在学习C 语言遇到不懂的问题时,一般都是怎样解决的?

A 问老师、同学或者朋友B 查阅网上的帮助C 看教材或参考书 D 谁都不问,也不看书

E上机调试程序,程序调试完了,问题自然就解决了

9你学习C语言的方式大概是:

A 根据自己性格特点,开创自己的学习方式B 把书上的经验经常性地在计算机上实践

C 积极建立新旧知识的有效联系,使用联想学习或是分类学习

D 只是机械的记忆书本或练习的符号程序E其它

10面对目前学时少、信息量大的问题,你为你自己应该怎样才能学好 C 语言?

A 上课集中精力听讲B 多看参考书、多看别人编写的程序,培养“语感”

C 自己多动手编程,多上机调试程序 D 多问老师问题 E 其它

11您认为老师讲授C语言的方式是

A照本宣科B对重点难点进行详细分析C重点讲解实例

12.您认为什么样的师生关系有利于C语言教学

A 鼓励学生质疑,并给予思路的引导B 讲课有师生间的交流互动

C 老师讲课理论联系实际,多从学生的视角出发

13您认为现在的多媒体教学对C语言学习的影响

A花费精力大,教学效率低B花费精力少,教学效率高

C使用教学媒体有助于知识的理解 D不利于创新思维和创新能力的培养

14 你对自己在学习c语言上的问题(附注在反面)【必填】

15 对老师的建议【必填】16 其他

请大家根据自己情况认真填写,以便我们以后更好的安排工作。谢谢合作!

2011年11月14日星期一

第13篇:c语言学习经验

1.一楼建议的老谭的书,比较适合入门,但是建议不要按照上面的代码样子来写代码。这里有几本书推荐给你。

C程序设计(英文版),C语言之父的杰作,建议看英文版,原汁原味,里面的代码个个都是经典,你可以看着上面的代码,多看多想多写。里面涉及到的英文不难,有一定的英文基础就可以看懂。

看完上面两本,你可以看以下几本书:

C和指针

C陷阱与缺陷

C专家编程

本本都是经典,非常适合提高你的编程能力。

此外,强烈建议,一定要搞清楚指针,切记切记,没搞懂指针,你就白学C了。

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

另外,即使是最经典最权威的书,也没有办法面面俱到,所以手边常备一本《C 语言参考手册》 《 语言参考手册》 是十分必要的。《C 语言参考手册》就是《C Reference Manual》,是 C 语言标准的详细描述,包括绝大多 数 C 标准库函数的细节,算得上是最好的标准 C 语言的工具书。顺便提一句,最新的《C 程序设计语言》 是根据 C89 标准修订的,而《C 语言参考手册》描述的是 C99 标准,二者可能会有些出入,建议按照 C99 标准学习。

还有一本《C 和指针》,写得也是相当地不错,英文名是《Pointers on C》,特别地强调指针的 重要性,算是本书的一个特点吧。不过这本书并不十分适合初学者,如果你曾经学过 C 语言,有那么一些 C 语言的基础但又不是很扎实,那么你可以尝试一下这本书。我相信,只要你理解了指针,C 语言便不再 神秘。

如果你已经啃完了一本 C 语言教材,想要更进一步,那么有两本书你一定要看。首先是《C Traps and 《 Pitfalls》( 》(中译名《C 陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。要注意一点,这本书 》( 是二十多年前写成的, 里面提到的很多 C 语言的缺陷都已被改进, 不过能够了解一些历史也不是什么坏事。 然后你可以挑战一下《Expert C Programming》(中译名《C 专家编程》), 》),书如其名,这本书颇具难度, 《 专家编程》), 一旦你仔细读完并能透彻理解,你便可以放心大胆地在简历上写“精通 C 语言”了。

上面的话是摘自一位资深人员的文章

3.强烈推荐

《C语言入门经典》!!!!!!

谭浩强的书前几章的例子几乎都是数学题,枯燥没意思。

《C语言入门经典》例子简单生活化,而且每个例子分析很细。章节安排合理,章末的例子还特别注重思路的引导,而且分析起来特别有成就感。

个人认为,几本书结合看。因为反复看一本书会很快失去兴趣,交叉着看既可以保持兴趣,又能取长补短

4.第

一、不要盲目的乱买书,所有的书都是千篇1律,但大多都是鸡肋,经典的一本足矣!推荐《C primer plus》

第二、有计划的看完上面推荐的这本书!

像我刚学的时候是 二天看完一章,标记好重要的笔记!第三天把章后的编程题自己敲一遍,第四天把后面的作业全部自己做一遍!到了指针后是三天看完一小节,因为指针在C语言中举足轻重,一定要理解了一小节再看下一小节!一天看不懂看两天,切不可今天看不懂就不看了!可以说没学好指针你就没学好C语言!

第三、当你看完上面的书,能独立做完所有的章作练习题时,可以说你已经对C语言有了个大概的了解了!

这时候你可以买一本《C和指针》好好的仔细研读一遍!有助你加强对指针的了解!!看完了上面的书后,再看看《C陷阱与缺陷》 !

书不求多而求精,市面上的书好多都是误人子弟的!

看完了上面的书,你可以去看一下《C++ primer plus》同样的计划 看完这本书! 再去看数据结构

要再往下的话 再去买一本孙鑫的VC程序设计

„„„„

看完了VC的话别以为自己毕业了。

推荐你去看 汇编 因为你看完了汇编 对你了解内存机制,存储原理有很大的帮助,对你在代码优代,结构安排上有很大的作用!

5.国内的——首推谭浩强的

国外的——K&R的《C程序设计语言》——被誉为C圣经,最新为第二版。

还有DEITEL的《Chow toProgram》,第五版了

还有《c primer plus 》也行,第六版了

6.国内的推荐《C语言参悟之旅》,国外的推荐《C语言入门经典》

7.我C语言入门谭浩强,很强。C语言你必须学好的几样东西,数组,指针,结构体。其他的都无所谓了。

8.推荐C Primer Plus,老外写的书都很好。这是我第二喜欢的C语言书,第一的就是谭浩强的„„

第14篇:C语言学习感想

线

论文报告纸 C语言学习感想 一C语言学习经历学习C语言已经大半年了,回想起这段学C语言的日子,经历了先苦后甜的过程。 早在上学期就已经听说过C语言的挂科率,高达50%,同学们谈C色变。这种感觉在第一节课的时候终于得到了证实,老师首先讲授了学习C语言的技巧,记得最清楚的就是上课一定要记笔记,上课认真听,上机认真做练习。接着老师给我们大体介绍了C语言的发展历程以及在目前大学教育里的地位的扶摇直上。C语言最初是为开发UNIX操作系统而设计的。C语言是介于汇编语言和高级语言的语言,C语言面向过程,高级语言面向对象,C语言较于高级语言的一个优点就是能够直接对地址进行操作。最后老师对我们讲解了计算机中的进制问题,那叫一个头疼,老师以为我们在上学期大体学过,就匆匆讲了一下,老师的快语速加上我较差的基本功,我彻底的晕了,不过幸好的是我那时并没有放弃,反而全身心的把精力放在了记笔记上。这个小小的措施使得我有机会在课后仔细的复习和研究老师上课的内容,最终弄懂弄通。 在第二节课上前面部分老师主要讲了C语言的算法,这部分我在高中时接触过,所以大部分都听懂了,有不理解的照例做了笔记,课后再看几遍也就会了。到了后半部分老师讲了数据类型及基本运算,这部分开始还能听的懂,但随着大量的新概念的输入,脑子开始迷糊了,我有开始充分发挥我的强记能力,几乎把老师说出的每个我听不懂的字都记录下来,所以现在看我那一章的书密密麻麻的全是字。但这种方法确实帮了我不少忙。但自那节课后,我意识到了这种听课方式的弊端,这样囫囵吞枣的记笔记,就浪费了大把大把的上课时间,我开始尝试慢慢的强迫自己接受老师的讲课内容,开始确实接受不进去,甚至还想打瞌睡,但这种强迫式的学习开始慢慢的发挥最用,我开始能够接受大量的新定义和逻辑算法,这令我无比兴奋,我喜欢这这种听课很顺的感觉。 接下来的课,由于前面的基础打的好,所以听起课来没什么困难,至少直到指针这一节是 这样的。为了更好的学习C语言,我还买了谭浩强的《C语言试题汇编》,做了大量的训练,渐渐的喜欢上了C语言,看着在电脑上运行自己编写的小程序,无比兴奋(编的小程序仅仅处于自己的爱好)。现在在短学期学习C语言的结构体,指针和链表,我很遗憾的是真的如老师所言,我们在短学期根本没心思好好学,不过为了应付下学期的二级考试,我还是准备在暑假好好再学一下。二 C语言学习技巧(笔者自己的看法,不必锱铢必较) 1.一定要记笔记 2.课后一定要复习,可以向老师拷PPT 3.买一本C语言练习册,自己有空就做做,大学里有的就是时间 4.多多尝试自己编写一些小程序,最好是自己感兴趣的 5.上机好好做题三 学习C语言的重要性(大家都是这样说的) 1C语言是Combined Language(组合语言)的中英混合简称。是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范

围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。

2作为新世纪的大学生,应当站在时代发展的前列,掌握现代科学知识,调整自己的知识结构和能力结构,以适应社会发展的要求。新世纪需要具有丰富的现代科学知识,能够独立解决面临的任务,充满活力,有创新意识的新型人才。尤其是掌握计算机的基本技能和语言。

共3页第1页

线

论文报告纸四 C语言的特点1.C是中级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。2.C是结构式语言。结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。3.C语言功能齐全。具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。另外C语言也具有强大的图形功能,支持多种显示器和驱动器。而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。4.C语言适用范围大。适合于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。C语言对编写需要硬件进行操作的场合,明显优于其它解释型高级语言,有一些大型应用软件也是用C语言编写的。C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。五 C语言的优点 简洁紧凑、灵活方便C语言一共只有32个关键字,9种控制语句,程序书写形式自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。 运算符丰富C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。 数据结构丰富

C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。

线

论文报告纸

第15篇:C语言学习总结

C语言学习总结

学了一个学期的C语言,我只有一个感觉,那就是一个字:难。不过,我觉得对C语言已经有了一个初步的认识。能够做到利用C语言编织出一些非常简单的程序,和读懂大部分的程序代码,明白程序要表达的意思。

下面是对C语言中我理解的知识的总结:

1、一些基本的函数和基本数据类型的应用。其中,基本数据类型分为整

型、浮点型、字符型、枚举类型。基本函数包括输入输出函数。

2、把运算符的优先顺序排列清楚,要分清楚哪个先运算,哪个后运算。

3、在编程之前要考虑好程序的算法,写出流程图,这样才能更加快速的、

有效的编程。

4、要分清楚各个变量的生存期和作用域,不能发生混淆,以致发生错误。

5、数组和指针是C语言的经典之处,可以通用,并且互相转换,具有非

常强大的功能,但是使用不当的话,会造成程序出错,打乱原有程序的

规律,使可读性明显变差。

6、结构体也是常用的一种数据类型,它的功能也比较强大,相对于指针

而言,结构体掌握起来比较容易理解和使用。

7、对于文件的操作是非常关键的,把输入的数据保存起来,下次还能够

使用,这才是关键问题。所以对文件操作是否成功,使程序是否编制成

功的重要因素。

C语言虽然是一门很基础的语言,但是对我来说学习起来是有些困难的。在学习C语言期间,做了很多实验,这是学好C语言必不可少的一步。因为不管你理论知识掌握的如何熟练,不上机实际操作的话,是没有任何效果的,许多问题都是在实际上机操作中显现出来的,在书本上是体现不出来的。书本上是永远不会出现你自己的思想成果的,正是应了那句话“实践是检验真理的唯一标准。”所以,在以后的学习中,实践是必不可少的!

第16篇:怎样学习C语言

一 ,怎样学习C语言

很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言?我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言。经过这些年的开发,我深深的体会到C语言对于一个程序设计人员多么的重要,如果不懂C语言,你想写底层程序这几乎听起来很可笑,不懂C语言,你想写出优秀高效的程庌輌这简直就是天方夜谭。为什么C语言如此重要呢?

第一:C语言语法结构很简洁精妙,写出的程序也很高效,很便于描述算法,大多数的程序员愿意使用C语言去描述算法本身,所以,如果你想在程序设计方面有所建树,就必须去学它。

第二:C语言能够让你深入系统底层,你知道的操作系统,哪一个不是C语言写的?所有的windows,Unix,Linux,Mac,os/2,没有一个里外的,如果你不懂C语言,怎么可能深入到这些操作系统当中去呢?更不要说你去写它们的内核程序了。

第三:很多新型的语言都是衍生自C语言,C++,Java,C#,J#,perl...哪个不是呢?掌握了C语言,可以说你就掌握了很多门语言,经过简单的学习,你就可以用这些新型的语言去开发了,这个再一次验证了C语言是程序设计的重要基础。还有啊,多说一点:即使现在招聘程序员,考试都是考C语言,你想加入it行业,那么就一定要掌握好C语言。

那么究竟怎样学习C语言呢?

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

这里介绍几个学习C语言必备的东东:

一个开发环境,例如turbo C 2.0,这个曾经占据了DOS时代开发程序的大半个江山。但是现在windows时代,用turbo C有感觉不方面,编辑程序起来很吃力,并且拖放,更没有函数变量自动感应功能,查询参考资料也不方便。建议使用Visual C++,这个东西虽然比较大块头,但是一旦安装好了,用起来很方便。

一本学习教程,现在C语言教材多如牛毛,但推荐大家使用《C语言程序设计》谭浩强主编 第二版 清华大学出版社,此书编写的很适合初学者,并且内容也很精到。

除此以外,现在有很多辅助学习的软件,毕竟现在是Window时代了,学习软件多如牛毛,不象我们当初学习,只有读书做题这么老套。我向大家推荐一个“集成学习环境(C语言)”,里边的知识点总结和例程讲解都非常好,还有题库测试环境,据说有好几千题,甚至还有一个windows下的trubo C,初学者甚至不用装其它的编译器,就可以练习编程了,非常适合初学者。还有一个“C语言学习系统”软件,不过感觉只是一个题库系统,如果你觉得题做的不够,不妨也可以试试。

2:葵花宝典

学习计算机语言最好的方法是什么?答曰:读程序。

没错,读程序是学习C语言入门最快,也是最好的方法。如同我,现在学习新的J#,C#等其他语言,不再是抱着书本逐行啃,而是学习它们的例程。当然,对于没有学过任何计算机语言的初学者,最好还是先阅读教程,学习完每一章,都要认真体会这一章的所有概念,然后不放过这一章中提到的所有例程,然后仔细研读程序,直到每一行都理解了,然后找几个编程题目,最好是和例程类似的或一样的,自己试图写出这段已经读懂的程序,不要以为例程你已经读懂了,你就可以写出和它一样的程序,绝对不一定,不相信你就试一试吧,如果写不出来,也不要着急,回过头来再继续研究例程,想想自己为什么写不出来,然后再去写这段程序,反反复复,直到你手到擒来为止,祝贺你,你快入门了。

3:登峰造极

写程序的最高境界其实就是掌握各种解决问题的手段(数据结构)和解决问题的方法(算法)。

是不是写出底层程序就是程序设计高手呢?非也,写底层程序,无非是掌握了硬件的结构,况且硬件和硬件还不一样,要给一个芯片写驱动程序,无非就是掌握这块芯片的各种寄存器及其组合,然后写值读值,仅此而已。这不过是熟悉一些io函数罢了。那么怎样才算精通程序设计呢?怎样才能精通程序设计呢?举个例子:你面前有10个人,找出一个叫“张三”的人,你该怎么办?第一种方法:直接对这10个人问:“谁叫张三”。第2种方法:你挨个去问“你是不是张三?”,直到问到的这个人就是张三。第三种方法:你去挨个问一个人“你认不认识张三,指给我看”。不要小看这个问题,你说当然会选第一种方法,没错恭喜你答对了,因为这个方法最快,效率最高,但是在程序设计中找到解决问题的最优方法和你用的手段却是考验一个程序员程序设计水平的重要标志,而且是不容易达到的。刚才这个问题类似于数据结构和算法中的:Map数据结构,穷举查找和折半查找。所以掌握好数据结构和一些常用算法,是登峰造极的必然之路。最后给大家推荐严尉敏的《数据结构》清华大学出版社,希望每一个想成为程序设计高手的人研读此书。

二,语言学习方法

谈谈偶的学习方法,抛砖引玉!

学习不论讲不讲方法,最终都能学会。但是别人1个月学会了,而你却100年才学会,这不就晚了么?:)所以说,学习还是要讲究方法的。学习方法正确,事半功倍;学习方法不正确,事倍而功半。

什么才是学习C语言的捷径?我的答案是看书。书中所写,是前人数十年经验所写,看十本书,就相当于汲取了前人数十年的功力,那么你的内功也会迅速上升1甲子。:)书当然要看好书,只有好书才营养丰富。假如你花了1天时间看了一本破书,而该书介绍的知识虽然对于你来说是全新的知识,但是由于书中组织不当、或者深度不够,使你获取的营养很少,还不如自己研究一天来的快,这种书就不值当看了。学习C语言要看那些好书?我认为首先要把基础书给看扎实了,比如《C语言之四书五经》中介绍的4本。(虽然这些书很多已经绝版了,但我相信电子版也是很有益处。况且,如果你真的想看,我相信你一定有办法搞的到。)这些书你会在很短的时间内看完(比如一两个月),这取决于你的基础和悟性。之后要看那些书呢?我不妨再列几本。Bjarne Stroustrup的《C++程序设计语言》(The C++ Programming Language)一定要看,这本书里面对于C的一些基础概念的定义,比我见过的其他任何C语言书都要全,都要仔细;Bjarne Stroustrup的《C++语言的设计与演化》(The Design and Evolution of C++)和David R.Hanson 的《C语言接口与实现 创建可重用软件的技术》(C Interfaces and Implaementations Techniques for Creating Reusable Software)一定要看,这两本书讲述了如何用C来实现异常处理、实现类型的封装和扩展等一些大的项目中经常用到的高级技术。其他的书,操作系统的要看,编译原理的要看,算法的要看,模式的也要看。读书破万卷,coding如有神。总而言之,就如《传》中云:“生而知之者,上也;学而知之者,次也;困而学之又其次也。”我们不能总是因困而学之,而要做到兵马未动,粮草先行。

看书是学习的导向,书中能一一介绍清楚概念,但书却不能把应用的细节一一介绍给你,因为应用总是招数繁复,变化多端。因此我们要想熟悉招数,懂得书中所讲怎么使用,还要多读源码。Linus给别人解答问题的时候,常说Read the ****ing source code;候捷也在其文中提到“源码之前,了无秘密。”这就是大师的箴言呀。源码就像是动画、就像是幻灯片,把书中的招式一一演练给你看。可以说高手的经验大都是源自代码。源码和书一样,也是要看好的,不要看差的。在此,我推荐看Linux kernel source code 和 Linux tcp/ip source code。这两套代码都是开源的,垂手可得。此外,还可以配合着Andrew S.Tanenbaum的《操作系统的设计与实现》(Operating Systems:Design and Implementation)、毛德操 胡希明的《Linux内核 源代码情景分析》、Jonathan Corbet,Aleandro Rubini,Greg Kroah-Hartman合著的《Linux设备驱动程序》(Linux Device Driver,3e)、W.Richard Stevens《TCP/IP详解(3部)》 (TCP/IP Illustracted )、W.Richard Stevens《UNIX环境高级编程》(Advanced Programming in the UNIX Environment,新版增加了Linux kernel的内容)等书来看,方便的很当然程序不是看出来的,是写出来的。我高中的时候每天坚持写6个小时程序,《数据结构》和排列组合、图论方面的习题反复做了N遍。到现在虽然已经时隔五六年,很多内容早已淡忘掉,但却培养了我很强的编码能力和调试能力,直到现在还对我的工作有很大的帮助。

学习忌贪多、忌浮躁、忌急功近利、忌目中无人。把学习计划放的长一些,培养一个好的学习方法,一步一步慢慢走,终能成为高手

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

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

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

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

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

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

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

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

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

最近,老有的网友提问如何学习C语言,因此从网上搜索了一些文章,希望对大家有所帮助 & g- e& h8 G: V; q& R# J; V) p, s4 Q1 M\" l M

谈及C语言,我想凡是学过它的朋友都有这样一种感觉,那就是“让我欢喜让我忧。”欢喜的是,C语言功能非常强大、应用广泛,一旦掌握了后,你就可以理直气壮地对他人说“我是电脑高手!”,而且以后若是再自学其他语言就显得轻而易举了。忧虑的是,C语言犹如“少林武功”一般博大精深,太难学了。其实就笔者认为C语言并非是“difficult(困难)”的,只要你能理清思路,掌握它的精髓,那么自学C语言是一件非常容易且又其乐无穷的事。今天本人就与大家一起谈谈如何学习C语言或者说学习C语言应从哪几方面着手。 / E, r) N\" ~) [ z6 e/ d\' s- f* H4 @7 N! F1 N c 了解一些基本知识& t.m8 J6 A: w

.U5 K; S.G G\" G, ` 一.C语言的背景 5 I% \\: h0 q; {# s% h 7 ^+ L$ [& ]& T2 X\' a/ } 就个人感触,无论学习哪门语言首先应该了解一下自己所学语言的背景,也可以说它的发展史。

/ z# M\" @) p.N6 }8 g& L/ v8 x- R/ {; C9 h+ P

C语言属于高级程序语言的一种,它的前身是“ALGOL”。其创始人是布朗·W·卡尼汉和丹尼斯·M·利奇。C语言问世时是带有很大的局限性,因为它只能用于UNIX系统上。然而随着科学技术的进步,计算机工业的发展,C语言逐渐脱离UNIX。1987年美国标准化协会制定了C语言的国际标准,简称“ANSI C”,从此以后它便成为一种广泛使用的程序语言。C语言的优点很多,主要的有如下四点: / x+ S x% E6 S; J $ `.n3 J! ^\" }1 |# N% I 1.兼备高级语言与低级语言的优点,属于一种中间语言。 , u\' W+ D& _8 O9 ^\" |$ D8 a$ k 5 l* a; B: p! K0 N) `/ { 2.它是一种结构化程序设计语言,非常适合结构化程序设计。/ ]\" n8 k8 J\" Y2 T) v! I0 n! {, ~

* w- t9 M1 W0 a.r 3.有较丰富的数据类型、运算符以及函数供以选用。+ i3 u1 m( K: n0 i8 L- b ( t7 ]0 C6 N$ ?0 j1 e

4.直接与内存打交道,使修改、编辑其他程序与文档变得轻松,简单。9 V3 R+ K# w3 t/ I1 [: v$ n

7 x\' |( s$ L& T% F$ w 二.二大语系二种不同的学习方法7 ~# M V$ X\" M3 b2 s/ r: A .?3 c0 q0 ]) A# O 笔者学习过很多程序语言,例如:C,C++(C语言的扩展),QBASIC,VB(BASIC的可视化),JAVASCRIPT,JSCRIPT ,VBSCRIPT,JAVA,ASP,FOXPRO,PERL等等,就本人实践所得,其实高级程序语言分为两大语系。一路是以C为主的程序语言,例如:JAVASCRIPT,JAVA等,这类语言在函数的调用,程序语句的书写,循环的控制都极为相似。另一路是以BASIC为首的程序语言,例如:FOXPRO,VBSCRIPT等,此类语言同样具有相似的函数调用,程序语句书写以及循环控制,但与C语系是不同的。因此若是您以前是从QBASIC起家的,那么在学习C语言前最好是先洗洗脑,千万不要把学习BASIC的方法以及思路用在C身上。

! j\' P4 y/ E2 L/ Q, t% F.r6 [- U9 G1 h& c

讲到这里,我想大家对C语言一定有了感性认识吧!下面让我们再升华一下,全方位亲密接触它。学习C语言必须从以下四点入手,也就是说,只要你能掌握这四点的内容,那么基本上就大功告成了。- ]9 j% W: l, J! G5 Qj3 c\" h7 a) i% { 1 K- `+ b% d: W M7 }& s 1.二维浮点数数组的输入0 p! w3 y( G- T# x; V- }5 @ \" z6 \\; V! _1 Y3 h0 ?& W

二维浮点数数组的输入(即:通过键盘给二维浮点数数组赋值)在很多专业书中都没有详细讲过这个问题。在给二维浮点数数组赋值时一定要先声明一个变量,接着把数值赋予这个变量,最后把变量数值赋予二维浮点数数组赋值。实例如下: 0 Q* q( r8 V0 G) ?\" t& a* Y 3 C6 N- `5 R._; [( w5 ~% P# include \"stdio.h\"7 S6 U: C\' T u0 G! g$ V) v main()# }% z3 ]7 G\' r2 u7 E# }5 R8 J { % D9 H6 @3 }7 l- d: U# ? float a[2][3],x ;0 M) w0 V0 o: |$ f) ^ int i,j;\' a: R7 m/ }% ~9 C for(i=0;i

for(j=0;j

{scanf(\"%f\",&x); \' }7 O4 e4 _9 j.U+ d

a[j]=x;} X: y.@7 `# s\" R7 C

}2 `6 K- m7 C4 R! f3 ^4 c1 D 不能写成:! @4 K* O* _/ t\' X% ^

2 s$ u+ b J% X\" I1 h\' W) x6 o# include \"stdio.h\" * \\% c\' Q# H7 {4 |\" z% cmain()3 n6 w- d\" C.x1 u& y* q: C& L4 } {1 f.j2 E4 A* O float a[2][3] ;* `! q\" t; R ^1 N+ z, y7 H int i,j;\' I\" [( t$ {.I5 F for(i=0;i

for(j=0;j

scanf(\"%f\",&a[j]);._( e8 {$ |( o } \" H.`, }) U% q/ v: k 9 V8 }5 l& |) @* E b

同样道理,在结构性浮点数组变量中也一定要按照这种格式输入。实例如下: / h( E\' j0 _.\\+ q& m2 L\' N) l& q: N\" w # include \"stdio.h\" 5 c.D2 R- g\" q q- _\" Q struct student9 `+ Y/ R% G* G {float b[3];1 N+ w\' a1 b9 G6 y$ S

int x; \' g; e6 K7 S/ l- y% i6 z }a[2]; 2 ?4 V; }8 A6 E4 h& G% g5 z main()9 P, B/ x1 d5 [3 G/ U1 [ { { 9 ~9 r5 c: E# S9 z$ F float x ;$ ~ n.I! Z0 N; o2 `1 t# z

int i,j; 0 ^* G5 w7 h) `; y.} for(i=0;i

for(j=0;j

{scanf(\"%f\",&x);: y7 y+ E) S# J j\" w4 ]$ ~+ B

a.b[j]=x;} 5 x+ X; } R( f9 v3 p5 j

} 4 X.J3 Q; c\" _.| T: s$ p* I

& E* q: Y3 I/ m- V, \\! x1 K 2.注意输出格式中“%”后的字符 4 Q; \\1 y9 }) L- x6 x4 }.Z5 L- W1 b- ~5 o( y2 p2 k

C语言的输出说复杂不复杂,因为常用的都很简单。可说不复杂也未必,记得曾在一次等级考前辅导我们C语言的教授讲道:“如果C语言要考得很难的话,根本不用考什么指针,只要专考输出格式,我想百分之九十九的学生都不及格。”当时我们无不认同。从这则事例中可以看出C语言的输出格式之复杂程度。因此大家在学习它时千万要学会辨别输出格式中“%”后的字符,每个字符都有其意义,也都有其作用。 8 P) D E% Z.L# J6 `# o : k* _* V( v+ `\' H7 G7 Y\" ~ 二.优先级 8 |% z4 q1 r: |: I) x4 B* Z# Y # E% L# e\' f: s; \\ 说道优先级,有很多朋友都不是很了解或说很模糊。为此笔者想先通过一个例子让各位有个概念。什么叫优先级?比方说,我们在公交车终点站排座队时总会遇到70岁以上的老人不需要排队就能上车的情景,这就是优先级的涵义。C程序在运行时也象排队坐车一样,首先照顾那些优先级高的运算符,若是优先级相同,那么就象遇到两位(或两位以上)70岁以上的老人那样,让他们依次上车。但是C语言中的优先级的运算并不是千篇1律的,只能说是在大多数情况下,有些运算符的优先级有其自己的特点,因此这点大家要注意。例如条件表达式:条件?结果1:结果2,这种表达式很多朋友都知道,它的作用与IF„ELSE„条件判断语句很雷同,它运算时的优先级就不是按照C语言的规则来完成的。所以说对于优先级各位编程爱好者一定灵活掌握,不要死记硬背。3 b5 f.q! ^2 B: C4 E/ K

.u* O# D1 _9 t 三.指针

/ E; f4 a\' I% S6 l! l- @( h\' U+ A! V( ]7 ]

就个人认为,C语言中的指针是最有特色的,当然也是最难学的。指针说穿了,其实是变量的一种表现形式,只不过这种变量记载的不是数值而是地址。就象一个人可以用姓名来表示自己,也可以用身份证号码来表示自己一样。笔者涉足编程已经有三年多了,在这期间曾经收到过很多网友的电子邮件询问学习指针的方法。就本人感触,学习指针最好是先学些计算机硬件工作的原理,例如:直接寻址,间接寻址等,只有了解了这些内容以后,你再学指针就比较容易理会,毕竟C语言是一门介于机器语言与高级语言中间的语言,没有一些硬件工作知识是很难领悟它的真谛的。然而事事并非绝对,如果你没有这些知识也不要紧,只要清楚知道以下笔者总结的二点再加上多练习便可: 6 |& t! K- }7 [ }4 a5 a\" p& A+ Q( |* N

1.指针是地址变量:它的值有两种:其一是地址,其二是内容。不同的表达方式可以取不同的值,这有点象一个家庭地址在不同的场合标识的人物也不同。例如:父母亲在他们的单位所登记的家庭地址就代表他们自己,而你在学校中登记的同样的家庭地址就代表你自己。% U5 J! Z1 _# T A; R: s

8 W% }2 U w1 ]( r& w6 A.o 2.指针是可以运算的,它的运算法则与变量是一致的。.A5 I\' a w/ R+ p._.J& @4 N.B

\' _- U\' A/ h# s.d) f( ^ k: v 另外,在编写一个程序时,除非万不得已,一般不要使用指针变量。因为指针是比较复杂的,用不好就“当机”。所以笔者建议各位对于指针只要能看懂就行,当然如果你是准备参加考试的就另当别论了。 : N3 L, B5 }8 b/ ]% [ l9 O: B/ f2 q, K+ n; x$ ~9 d\" Z

& a\' N\' Q# K) t0 z# x+ [! M四.函数$ m7 L1 a4 l8 _, i\' k

! [8 A.s: \\; G1 h 虽说很多程序语言都有函数这一内容,但笔者觉得C语言的函数是最有魅力的。如果你能完全掌握C语言的函数,那么学习C++就不成问题了(C++是一门建立在C语言上,但又不同于C语言的高级程序语言,它增添了很多函数。)。学习函数的方法是比较简单的,只有两个字“牢记”,即:牢记函数的功能,牢记函数的用途以及如何输入输出。有些朋友认为,程序语言中的函数没有多大用处,其实这并不正确,函数从本质上讲是一段通用程序,用它可以帮助我们节约很多编程的时间,一个聪明的编程者在编写程序前往往总是先找自己所编写的程序中有多少是可以用函数来代替的。笔者曾经作过一个比较字符串的实验,用C语言中的strcmp()函数只要一句话,而自己编写的话30句话都摆不平,可想而知函数是多么实用呀! , e\' O7 d, C1 E5 ^6 y! G 3 ]0 l9 g\' ~2 n1 B( V 写到这里笔者该告一段落了,下面送一个本人自己用C 语言编写的注册表比较程序给诸位。此段程序的注释请看“/*„*/”后的文字,程序运行时(在DOS模式下)输入的方式如下:compare xx1.reg xxx2.reg xxx3.txt,注意字段与字段之间是有空格的。(compare是程序名)

, c/ z3 N/ n0 S5 ] }2 H: g; R! l! w, s2 L0 Q6 J

程序代码:

\" s: \\: C, N.X2 }+ ? .l! ^5 u% ], {8 r( \\0 C5 o # include \"stdio.h\" /*定义头文件或说包含文件*/W; `- u$ C\' `* n3 @# g

{ printf(\"The file don`t open!\");! A; f! k\' [- S

exit(0); }\" C8 V: Y* j! m.A( M$ [9 c

if((fp2=fopen(argv[2],\"r\"))==NULL) /*打开第二的注册表备份文件,如果不存在则跳出程序并显示

“The file don`t open!”*/ 3 Z0 m, G1 [\' p* u7 E( m f

{ printf(\"The file don`t open!\"); ! g N1 M\" ?\" i6 A+ J

exit(0);} 5 w1 b- s& W5 L E

if((fp3=fopen(argv[3],\"w\"))==NULL) /*建立新的文本文件,用于存放比较结果。*/ # A% N) a2 K8 h& A8 S

{printf(\"The file don`t open!\"); c6 b R! ~; v2 f3 e- B

exit(0);}9 Z# Z5 C( T7 T! B6 G

rewind(fp1); /*规定文件指针fp1指向第一个注册表文件头部*/ r* ~% M8 f: z/ E2 v

rewind(fp2); /*规定文件指针fp2指向第二个注册表文件头部*/\" d\" _1 N4 E$ J8 t\' ?8 a

while(!feof(fp1)||!feof(fp2)) /*开始比较*/ 3 t\' J5 E/ }0 X |- c* d

{ a=fgetc(fp1); /*读取第一个注册表文件内容并赋予给字符变量a*/ 4 V* b! W0 `3 \\( t+ W.J5 Q

b=fgetc(fp2); /*读取第二个注册表文件内容并赋予给字符变量b*/ 6 B9 B5 w5 `; w8 n

if(a!=b) fputc(b,fp3); % l: F.N3 }4 c

/*字符变量a与b不相同的话,那么把不同之处写入新建的文本文件中*/8 t2 d3 {\" K: \\.?: A+ V5 O

if(feof(fp1)) fputc(b,fp3); 2 h4 T, J1 p1 _5 x\" @0 b

/*如果第一个注册表文件已经读完,第二个文件还有未读取部分,那么把第二个文件的剩余部分全部写入新建文件中*/& o3 D$ S$ k ?6 K

if(feof(fp2)) fputc(a,fp3);} /*如果第二个注册表文件已经读完,第一个文件还有未读取部分,那么把第一个文件的剩余部分全部写入新建文件中*/ 8 y8 Z; c$ h* Y+ ]) m

fclose(fp1); /*关闭第一个注册表文件*/ 4 z& z* ~* o0 g2 d* q.Y1 ]

fclose(fp2); /*关闭第二个注册表文件*/6 F$ p v6 g.o% W- j# |

fclose(fp3); /*关闭新建文件*/ ) w6 s; F0 E/ a6 B2 K& O4 K% @}- 什么得有多

令你不

耐烦恼了..(不好意思,这是我个人认为的)所以我今天晚上就会写这篇文章的,希望能

给初学

者们一个我学了c语言之后的心得体会,也别象我朋友那样要放弃,买了那本书,无论多

厚.都要

啃下去,我是一个曾经被别人说过我是不该学c语言的那块料的,当然..我不是因为这

句话去生 气,把怒火化为当是自己的鼓励,时时刻刻记住你为什么要学习它?你为什么不学习其它

的?这

样,你就会知道一个程序员的生活是多么的无聊了.那你看到这里,你还想什么呢?想学

就去该学

的,在这里我推荐你们买书的时候记得买老潭(潭浩强 ------ 清华大学教授牛淫)

的书,买本学

习本,花不了多少钱,我记得是30多块,不过我第一次买的时候买错了,买了一本入门后

的高级程

序员学习的,所以我在这里推荐一下,希望大家别象我这么傻..5555,还有,买多少书,

一定要看完

,别只买了就不看.还有一些天天黑站的人,他们以为这样是在提高自己的技术证明是没

有差,觉得

很神气,其实不是的,你学到这些入侵网站的,学习ddos,学习远程控制,盗QQ,刷四钻,

对你将来有

什么好处的呢?假如你认为你可以把这些传授给自己的儿子学的话,那你可以学吧,世界

第一黑客

——凯文.米特尼克被公认为世界第一黑客,你们想一下,年仅15岁的米特尼克闯入了

“北美空中

防务指挥系统”的主机内,和另外一些朋友翻遍了美国指向前苏联及其盟国的所有核

弹头的数据

资料,然后又悄无声息地溜了出来,Kevin的黑客生涯到其后来入狱时差不多就有15

年之久。 他

的作案时间之长、作案次数之多、破坏力之大,他的技术之精、经历之传奇,都让全

世界为之震

惊,也使电脑警察们汗颜„„有什么用么?你说一下他的头脑如果不入狱的话这15年里

可以赚到

多少钱?可以学到什么东西?还是你根本就想进去看看里面是什么样的?还是你也想学一

下\"越狱\"?

我觉得,有机会去了解一下什么是windows的核心技术,什么是linux的核心技术才好,

不学的话你

永远不知道它是什么来的,学了的话你起码会成熟很多,只要你知道你曾经是会玩嗅探,

是会入侵,知

道有这么一回事就可以了,不需要去证明什么技术.

总结.

选定一门你想学的语言就啃定它,别放弃,

永远也不要觉得自己懂一点就算是程序员了,

你写出的程序就可以知道你是不是程序员了...

第17篇:c语言学习总结

(1)两个if并列的时候,if函数是有先后顺序的。

如 iMax = a;

if (b >iMax)

{

iMax = b;

}

if (c >iMax)

{

iMax = c;

}

printf(\"三个数的最大值是:%d\\n\",iMax);

(2)

printf(\"请输入机票价格:\");

scanf(\"%f\",&fTicketPrice);

(3)%5.2f的意思是以长度为5,小数点后面2位的形式输出。

(4) 闰年判断 ((iYear % 400 == 0)||(iYear % 4 == 0 && iYear % 100 != 0))

第18篇:C语言函数学习

函数

一:学习目的

1:正确理解函数在C语言程序设计中的作用和地位。 2:熟悉函数的定义、原型声明和调用的方法。 3:熟悉数组名做函数参数的用法

二:学习准备

1:有一个一维数组score,内放10个学生成绩,求平均成绩。

#include void main() { float average(float array[10]);

float score[10],aver; int i;

printf(\"input 10 scores:\\n\");

for(i=0;i

scanf(\"%f\",&score[i]);

printf(\"\\n\");

aver=average(score);

printf(\"%5.2f\\n\",aver); }

float average(float array[10]) { int i;

float aver,sum=array[0];

for(i=1;i

sum=sum+array[i];

aver=sum/10;

return(aver); } 2:有两个班级,分别有35名和30名学生,调用一个average函数,分别求这两个班的学生的平均成绩。

#include void main() { float average(float array[ ],int n);

float score1[5]={98.5,97,91.5,60,55};

float score2[10]={6 5,89.5,99,69.5,

77,89.5,76.5,54,60,99.5};

printf(“%6.2f\\n”,average(score1,5));

printf(“%6.2f\\n”,average(score2,10)); } float average(float array[ ],int n)

{ int i;

float aver,sum=array[0];

for(i=1;i

sum=sum+array[i];

aver=sum/n;

return(aver); }

三:实验内容: 1:选择题

(1)以下函数调用语句中含有_ _B_______个实参。

fun ((exp1,exp2),(exp3,exp4,exp5)); A.1 B.2 C.4 D.5 (2)以下说法正确的是(

C )。

(3)以下程序有语法性错误,有关错误原因的正确说法是( C

)。

Main() {int G=5,k; void prt_char(); ……

k=prt_char(G); ……}

(4)C语言允许函数值类型缺省定义,此时该函数值隐含的类型是( B

)。

(5)若用数组名作为函数调用的实参,传递给形参的是( A

)。

(6)若使用一维数组名作函数参数,则以下正确的说法是( C

)。

2:编程题:

1、编写函数fun,它的功能是输出一个200以内能被3整除且个位数为6的所有整数,返回这些数的个数。#include void fun() {

int i,a=0; printf(\"这些数分别为:\"); for(i=6;i

if (i%3==0) a++; if (i%3!=0) continue; } printf(\"%d \",i); printf(\"\\n\"); printf(\"这些数的个数为%d个\\n\",a); } void main() { }

2、已有变量定义和函数调用语句:int a=1,b=-5,c; c=fun(a,b);fun函数的作用是计算两个数之差的绝对值,并将计算好的值返回调用函数,请编写程序。 #include int fun(int a,int b) { int z; z=a-b; fun();

if (z

int main() { int a=1,b=-5,c; c=fun(a,b); printf(\"%d\\n\",c); }

3、写一个函数,要求把从主函数传递过来的一个字符串中的大写字母、小写字母、数字和其它字符进行统计,并把结果显示输出。

#include #include void fun(char e[],int n)

{ int a=0,b=0,c=0,d=0; int i; for(i=0;i

if(e[i]>\'A\'&&e[i]\'a\'&&e[i]\'0\'&&e[i]

printf(\"大写字母有%d个\\n小写字母有%d个\\n数字有%d个\\n其它字符有%d个\\n\",a,b,c,d);

} void main() { char e[1024]; int n; printf(\"请输入一串字符\\n\"); gets(e); n=strlen(e); fun(e,n); }

4、输入一个字符串,然后在一个函数中把这个字符串里的字长符头尾互换:如输入字符串chinese,要输出:esenihc。

#include #include void fun(char ch[],int len) {

int i; printf(\"倒序后输出的字符为\\n\"); for(i=len-1;i>=0;i--) {

printf(\"%c\",ch[i]);

}

printf(\"\\n\"); }

void main() { char ch[1024]; int len; printf(\"请输入一串字符:\\n\"); gets(ch); len=strlen(ch); fun(ch,len); }

第19篇:c语言学习忠告

给 c语言初学者 的十点忠诫

一、一定要养成一个规范标准的代码排版格式,好的排版会让帮助你的人事半功倍。

二、一定要培养自己查找错误的能力,要记住别人只帮你一时。

三、一定要养成写注释的习惯,特别是你的代码要给别人看时。

四、遇到问题,一定不要立刻问别人,其实很多问题都是自己不小心所致,回头看看书你可能会明白原来这也很简单。

五、多看看头文件中的内容,它能告诉你标准地调用库函数的方法。

六、书上的程序其实都是比较经典的,何不在上机运行一下这些程序,看看你对程序的理解力是怎么样的。

七、优秀的程序员不只对书本上的知识了解很透澈,而且对更深层次的知识有着强烈地吸引力。

八、一定要跟上世界的脚步,闭门造车会导致你失败的很重要的原因。

九、一定要认定一个方向,不要什么语言都想学,没必要,你也没有这个精力。

十、一定要培养好自己的阅读代码的能力,必竟现在软件项目不是一个人能完成的。

第20篇:C语言学习总结

C语言学习总结

第一章入门

1、UNIX操作系统,C编译器和几乎所有的UNIX应用程序都使用C

语言编写的。

2、在C语言中,所有变量都必须先声明后使用。声明通常放在函数起始处,在任何可执行语句之前。声明用于说明变量的属性,它有一

个类型名和一个变量表组成。

3、printf函数并不是C语言本身的一部分,仅仅是标准库函数中的

一个函数。

4、EOF定义在头文件中,是一个整型数。与任何实际字符

都不同。

5、函数最好按照ANSI C中定义的方式声明。

6、在C语言中,所有的函数参数都是“通过值”传递的。被调用函数不能直接修改主调函数中变量的值,而只能修改其私有的临时副本的

值。

7、要想让函数能够修改主调函数中的变量,需要用指针或者数组作

为参数。

8、函数中的每个局部变量只在函数被调用时存在,在函数执行完毕

退出时消失。

9、外部变量必须定义在所有函数之外,且只能定义一次,定义后编

译程序将为它分配存储单元。

10、外部变量在数据段分配。重复定义其实是重复分配,所以会出现

错误。

11、所有在目标代码中的地址都是相对地址,直到链接时重定位。

12、“定义”表示创建变量或分配存储单元,而“声明”指的是说明变量的性质,但并不分配存储单元。

13、外部变量的使用会降低程序的通用性,应尽量减少使用。

14、变量名(标识符)都是给人看的,最后都变成内存地址。

15、变量名,变量类型都是编译时的概念,而不是运行时的概念。

第二章 类型、运算符与表达式

1、关于变量名:局部变量一般使用较短的变量名,外部变量使用较

长的名字来表达用途。

2、short int一般写为short,通常为16位,long int一般写为long,通常为32位。int可以是16位或32位。

3、char可以有signed和unsigned加以限定,不加限定的char符号取决于具体机器,但是可打印字符总是正值。

4、无符号常量以字母u或U结尾。后缀ul或UL表明是unsigned long

类型。

5、带前缀O的整型常量表示它为八进制形式;前缀为0x或0X,则

表示它是十六进制形式。

6、常量表达式在编译时求值。

7、某些字符可以用转义字符序列表示。例如,\'\\ooo\'和\'\\xhh\'。

8、字符串常量也叫做字符串字面值,是由双引号括起来的0个或多

个字符组成的字符序列。

9、(类型名)表达式这种方法经常用来转换指针。

10、自增和自减运算只能作用于变量。

11、赋值运算符有很多优点:简洁、高效,与人们的思维习惯接近。

12、三元运算符条件表达式可以写出很简洁的代码。

13、运算符的优先级:多用括号。

14、按位与运算符&经常用于屏蔽某些二进制位;按位或运算符|常

用于将某些二进制位置为1。

第三章控制流

1、if语句要注意配对。

2、switch语句的最后一个分支(即default分支)的后面也应该加上

一个break语句。

3、for语句的各组成部分可以是任何表达式,所以for语句并不限于

通过算术级数进行循环控制。

4、do while语句至少执行一次。

5、应尽量少用或不用goto语句。

第四章函数与程序结构

1、C语言程序一般有许多小的函数组成,而不是由少量较大的函数

组成。

2、最简单的函数可以是dummy(){},它可以在程序开发期间用于保留

位置。

3、如果两个函数必须共享某些数据,而这两个函数互不调用对方,

则用外部变量。

4、函数的参数实际是局部变量。

5、外部变量的初始化只能出现在其定义中。

6、名字的作用域指的是程序中可以使用该名字的部分。

7、对于在函数开头声明的自动变量来说,其作用域是声明该变量名

的函数。

8、不同函数中声明的具有相同名字的各个局部变量之间没有任何关

系。

9、如果要在外部变量的定义之前使用该变量,或者外部变量的定义与变量的使用不在同一个源文件中,则必须在相应的变量声明中强制

性地使用关键字extern。

10、外部变量的初始化只能出现在其定义中。

11、对于某些中等规模的程序,最好只用一个头文件存放程序中各部分共享的对象。较大的程序需要更多的头文件,我们需要精心地组织

它们。

12、关于static (1)static既可用于声明外部变量,也可用于声明内部变量。

(2)static既可用于声明变量,也可用于声明函数。

(3)通常情况下,函数名字是全局可访问的,对整个程序的各个部分而言都可见。但是,如果把函数声明为static类型,则该函数除了对该函数声明所在的文件之外,其他文件都无法访问。

(4)用static也可以限定外部变量的作用域为其所在的源文件。这与限定函数其实是一样的。因为函数可以看作是外部变量。 (5)static类型的内部变量同自动变量一样,是某个特定函数的局部变量,只能在该函数中使用,但它一直占用存储空间,而且在编

译时分配内存。

13、在一个好的程序设计风格中,应该尽量避免出现变量名隐藏外部

作用域中相同名字的情况。

14、在不进行显示初始化的情况下,外部变量和静态变量都将被初始化为0,而自动变量和寄存器变量的初值则没有定义。

15、对于外部变量和静态变量来说,初始化表达式必须是常量表达式,且只初始化一次(程序开始执行前进行初始化)。

16、对于自动变量和寄存器变量,则在每次进入函数或程序块时都将

被初始化。

17、数组的初始化可以在声明的后面紧跟一个初始化表达式列表。当省略数组的长度时,初始化表达式的个数就被当作是数组的长度。

18、如果数组的初始化表达式的个数比数组的元素数少,则对外部变量、静态变量和自动变量来说,没有初始化表达式的元素将被初始化

为0。

19、续行可以在待续行的末尾处加上一个反斜杠符\\。

20、宏替换中,参数名以#作为前缀则结果将被扩展为由实际参数替

换该参数的带引号的字符串。

21、预处理器运算符##为宏扩展提供了一种连接实际参数的手段。如果替换文本中的参数与##相邻,则该参数将被实际参数替换,##与前后的空白符将被删除,并对替换后的结果重新扫描。

第五章指针与数组

1、ANSI C使用类型void *代替char *作为通用指针的类型。

2、指针只与字长有关。

3、每个指针都必须指向某种特定的数据类型。

4、void类型的指针可以存放指向任何类型的指针,但是它不能间接

引用其自身。

5、指针pa+1就意味着pa所指向的对象的下一个对象。相应地,pa+i指向pa所指向的对象之后的第i个对象。

6、数组名不是变量,指针则是变量。因此指针可以作自增和赋值运

算,但是数组名不可以。

7、类似于p[-1]、p[-2]这样的表达式在语法上都是合法的,它们分别

引用位于p[0]之前的两个元素。

8、一般情况下,同其他类型的变量一样,指针也可以被初始化。通常,对指针有意义的初始化值只能是0或者是表示地址的表达式,对后者来说,表达式所代表的地址必须是在此前已定义的具有适当类型

的数据的地址。

9、C语言保证0永远不是有效的数据地址。

10、指针没有合理合法的初值,通常出现断错误。

11、字符串长度、拷贝和比较的函数:

int strlen(char *s)

{

char *p = s;

while(*p != \'\\0\')

p++;

return p*t;

} 第六章 结构

1、结构可以拷贝、赋值、传递给函数,函数也可以返回结构类型的

返回值。

2、如果结构声明后面不带变量表,则不需要为它分配存储空间,它仅仅描述了一个结构的模板或轮廓。

3、结构的合法操作只有几种:作为一个整体复制和赋值,通过&运

算符取地址,访问其成员。

4、在所有运算符中,下面四个运算符的优先级最高:结构运算符\".\"和\"->\",用于函数调用的\"()\"以及用于下标的\"[]\"。

5、sizeof是编译时的一元运算符,它用来计算任意对象的长度。

6、条件编译语句#if不能使用sizeof,应为预处理器不对类型名进行分析。但预处理器并不计算#define语句中的表达式,因此在#define

中使用sizeof是合法的。

7、结构有对齐问题,主要是为了提高访问效率。

8、typedef可以使表达更简洁,可以使程序参数化,还可以为程序提

供更好的说明性。

9、联合实际上就是一个结构,它的所有成员相对于基地址的偏移量都为0,此结构的容量要大到足够容纳最“宽”的成员,其对齐方式要

适合联合中所有类型的成员。

10、对联合的操作与对结构允许的操作相同;作为一个整体单元进行赋值、复制、取地址及访问其中一个成员。

11、联合只能用其第一个成员类型的值进行初始化。

12、位字段与具体的实现有关,而且与大小端有关,因此具有不可移

植性。

学习c语言心得体会
《学习c语言心得体会.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
相关专题
点击下载本文文档