- A+
c语言学习心得范文第1篇
关键词:学生 C语言 兴趣 课堂教学
中图分类号:G642.0 文献标识码:C DOI:10.3969/j.issn.1672-8181.2013.15.119
C语言是计算机专业的一门基础型编程语言,具有功能丰富、表达能力强、可移植性好、目标程序质量高的特征。所以,计算机专业的学生一定要学好C语言。然而,根据笔者多年来的教学实践经验看来,学生对C语言的学习热情不是很高。如何培养学生学习C语言的兴趣,将学生的被动学习转变为主动学习,是计算机教师必须考虑的重要课题。
1 C语言教学中存在的问题
近些年来,C语言已经成为国内广泛应用的计算机教学语言。C语言课程是计算机专业的核心课程,但是,由于种种原因所限,C语言的教学效果并不十分理想。究其原因,主要有以下几点:
第一,学生的学习目的不够明确。很多学生认为学习C语言没有多大用处,所以提不起学习的积极性和主动性。
第二,教材内容安排得不够合理。目前,很多学校选用的C语言教材缺乏应用性和趣味性,导致不少学生认为C语言没有意思,枯燥乏味,因而兴致缺缺。上课不认真听讲,作业也是相互抄袭。
第三,教学方法陈旧、落后。如今的C语言课堂教学中,教师仍旧占据绝对性的控制地位,学生担当配角。教师没有采用启发式教学,也没有采取先进的多媒体技术。另外,由于教师不了解学生的真正需求,不了解学生课前预习的情况,所以学生的学习热情难以调动。
第四,实践教学环节没有得到重视。C语言是一门实践性很强的计算机语言,但目前的实践教学环节没有得到重视,或者学生不了解实践环节的要求,他们不知道上机实验的目的,想干什么就干什么。再加上部分教师的责任心不够,所以导致学生在课程结束后也掌握不了基本的实践操作。
2 如何培养学生学习C语言的兴趣
要让学生学好C语言,一定要提高学生的学习兴趣。因为兴趣是最好的老师。所谓兴趣,就是一个人力求掌握某种知识,认识某种事物,并经常参与该种活动的心理倾向。学习兴趣可以激发学生产生学好C语言的动力。我国古代教育家孔子也曾经说过:“知之者不如好之者,好之者不如乐之者。”计算机教师一定要培养学生学习C语言的兴趣。关键可以从以下几点入手。
2.1 让学生明确学习目的
兴趣可分为直接兴趣和间接兴趣。也许学生在一开始对C语言没有直接兴趣,但是当他们一旦知道C语言将会对自己的未来起到何种帮助,他们就会在心理上产生一种间接兴趣。教师在上第一节课时,就要向学生介绍C语言的历史,在计算机语言中的地位,在系统软件设计方面的应用等,让学生意识到C语言的重要作用,提升他们心理上的认知感。教师还可以拿出C语言程度让学生看看,比如“图书管理系统”、“五子棋游戏”等,让学生意识到C语言并不仅仅是枯燥乏味的文本和数字,从而对这门课产生浓厚的兴趣。
2.2 在教学过程中适时导入有趣的教学案例
在讲授每一节课之前,教师都必须清楚、明白这节课的目标和要求,通过丰富多彩的教学案例或者形象生动的操作,诱发学生的求知欲;也可以根据教学内容向学生讲清楚这部分知识在程序设计中的作用与意义,从而引起学生对这部分知识的兴趣。比如在讲授《函数的递归调用》时,因为大多数学生对游戏很感兴趣,所以教师可以从游戏入手,介绍汉诺塔的传说:在古印度的一个寺庙里,有一个跟循环有关的游戏,当游戏结束时,就意味着世界末日的到来。讲到这里时,学生必定会有兴趣。借着这样的氛围,教师可以慢慢引入函数递归调用的知识,让学生掌握这部分内容。
2.3 凸显学生的主体作用
在课堂教学中,教师只有充分尊重学生的主体性,凸显他们在教学中的地位,学生的学习主观能动性才有可能被调动起来。教师要激发学生的思维,不要让学生一味接受教师的灌输,而是要让他们感受克服困难所带来的那种喜悦,这也是保持学生学习兴趣的重要手段。尤其在上机操作过程中,当学生遇到困难时,教师不要直接去解答,不要直接给出答案,而是要根据问题情境给学生一定的小提示,然后让学生去不断“试错”,只有这样,学生才能在学习C语言的过程中获得新体验。
另外,教师还要正确评价学生的成绩,给学生积极的鼓励和表扬。对于学习成绩较差的学生,不要一味指责,而要发现学生的成绩为什么差,然后对症下药,帮助他们进步,这样才能激发学生的上进心。久而久之,学生的学习兴趣就会越来越浓。
2.4 加强实践环节
C语言是一门实践性非常强的课程,所以学生不仅要掌握C语言的基本语法、规则,还要自己亲手上机编程、调试和运行,这样才能检测出掌握理论知识的程度,所以教师每讲完一个例子或者几个例子之后,都应该让学生自主去上机调试,感受C语言的魅力,学生也会在上机过程中感受到成功的乐趣,对学好C语言更有信心。当然,除了教师讲过的例子,教师也要精选一些习题让学生自主操作,培养学生的动手能力和创新能力,为日后的学习奠定基础。
上述提出的一些改革方法,是笔者多年来的教学体会。当然,教无定法,不一定限制某种教学方法改进课堂教学,关键能收到良好的教学效果,学生的学习兴趣也会得到极大提高。教师要不断探索新途径,力求教好C语言,为学生的后续学习奠定扎实的基础!
参考文献:
[1]武.案例教学法在《C语言程序设计》课程教学中的应用[J].现代阅读(教育版),2011,(7).
[2]李俊.C语言程序设计教学的探讨[J].牡丹江大学学报,2011,(6).
[3]屠新兵.C语言中常见数字趣味矩阵的编程方法[J].现代阅读(教育版),2011,(14).
[4]刘敏.浅谈C语言中的垃圾回收[J].数字技术与应用,2011,(8).
c语言学习心得范文第2篇
关键词:C语言;计算机
一、首先要学好数学这门基础课
IT 界有一句比较实在的话“数学是计算机之母”。在 C 语言的学习过程中,一般有大量的算法和数据结构需要去了解,由此可见数学在计算机学习中的重要地位,同理,在 C 语言的学习过程中,数学思想的应用会让人有豁然开朗之感,一些简单的运算问题的解决其实就是在数学领域的,编写程序是为了让计算机可以代替人操作运算过程,从而减少人力。
二.、明确学习C语言的目的
我们的学习目的不是只为了学习C语言,而是为了能够掌握程序设计的方法,具有程序设计的基本理念,为以后的计算机应用打下基础。在学习中很多学生认为这门课程既难学、又看不到任何成果, 不如 Java 等语言很快就能编写出有漂亮图形界面的程序。 但C 语言有助于对计算机编程底层原理的理解,对调整知识结构和能力结构,提高自己的综合素质都有很大帮助。
三、语言入门
刚开始接触计算机知识,处于一个计算机技术的启蒙阶段.在这个启蒙阶段,最重要的就是入门。当大家都满怀信心的去学习那些被各大高校都当作计算机入门教材的C 语言的时候,发现太多的“不明白”,因此《C语言程序设计》入门课是至关重要的。因为学生都是初次接触C语言,C 语言对他们来说是神秘的,首先在学习之前要充分了解相关领域的知识,明确学习目的及学习重要性,激发学生的学习好奇心和欲望。
四、了解C语言的发展历史,使自己对C语言产生一种似曾相识的感觉
C语言是国际上广泛流行的计算机语言,既可以用来写系统软件,也可以用来写应用软件,特别对操作系统和系统实用程序以及需要对硬件进行操作的场合,C语言明显地占优势。比如网络编程语言PHP的绝大部分内容与C语言相同,如果学过C语言,那么再学PHP就会非常轻松。
五、把好实践关,重视每次上机试验
C语言是一门实践性很强的课程,既要掌握概念,又要动手编程、上机调试运行。养成上机前分析题目,决定算法与数据结构,并编出程序源代码的好习惯,这样在上机时,就会有的放矢,上机时输入程序并完成语法检查,再运行程序,检查运行结果,同时详细记录下在程序调试过程中所遇到的问题及解决办法。编程千万不可遇难而退,这个时候是决定你水平提高的关键,一定要坚持到底。坚持就能成功。上机过程中主要精力放在调式程序上。实习结束后随堂完成实验报告,逐步积累调试程序的经验。培养自己良好的编程习惯。明确一点“C 语言不是看会的,也不是听会的,而是亲自动手实践练会的”。
六、强调问题学习,培养自己的创造性思维
目前许多学生普遍缺乏问题意识,则学习就失去了快速前进的动力。每次学习都要带着问题去学,直到把问题解决了,知识也就掌握了。科学并非始于观察,而是始于科学问题,正是问题激发人们去观察、去思考,从而启动了科学探索的创造机制激活了科学家的创新思路。
七、牢牢把握住C语言的知识要点
C语言内容十分丰富,各知识点具有非常大的连贯性,常常是牵一发而动全身,这往往使得学生在入门阶段容易产生畏难情绪。眼高手低是每一个刚学 C 语言的人都会出现的一种情况。由于 C 语言灵活、强大,初学者要全面地掌握它非常吃力,因此在学习 C 语言的过程中,一定要熟练掌握 C 语言的流程控制语句、数组、函数、指针等基础知识。可以把学习的重点放在函数的设计框架、参数设计、返回值设计等关键问题上。
八、学习过程中引入软件工程的基本思想
为使自己有良好的编程思维,培养自己在程序设计中从软件工程角度去系统分析问题的良好习惯。
总之,计算机语言是各高校普遍设置的一门计算机课程,也是培养大学生计算机能力的一门基础课程,是各专业学生进行计算机编程以及从事计算机研究的基础类课程,意义十分重大。计算机语言的种类很多,各种语言的区别只是语法规则和具体的实现方式不同,好多方面都是相通的,所以对于计算机语言的学习关键在于精而不在于多。C语言是计算机程序设计中一种广泛使用的基本语言工具,学习 C语言是学生形成编程思维,是为将来进行计算机软件开发设计打下基础的重要过程。
【参考文献】
[1]李少华.《C语言程序设计》教学中的几点体会,长江大学学报(社会科学版).2010,(10).
c语言学习心得范文第3篇
关键词:高职;c语言程序设计;教学改革
0 引言
c语言程序设计课程是高职计算机类专业的核心基础课,也是电类相关专业的专业基础课,对后续课程的学习起着举足轻重的作用。学好c语言程序设计课程也会增强学生的学习自信,但是该课程传统的教学效果不尽如人意,学生第一次上课时会满怀信心,可随着c语言各种数据类型、语法规则的不断呈现,以及c语言本身的灵活、语法限制不严等特点,使多数学生逐渐失去学习的信心,最终的结果是大家一致反映c语言难学,学不会,只有一个办法:放弃。对于高职院校来说,c语言程序设计的教学已到了非改不可的地步。因此,如何改便值得我们研究与探讨。笔者从教与学两方面分析问题,探讨解决问题的办法,并进行相关实践,取得了一定的改革成效。
1 问题分析
我们从教与学两方面进行分析,主要有以下几个问题:
(1)教学内容不能满足学生后继课程学习的需要。长久以来,该课程的教学多数选择谭浩强教授主编的《c语言程序设计》作为教材。该教材理论体系完备,但是遵循该教材体系所开展的教学,不太符合高职学生的认知特征,并且教材的重点是对c语言本身的语法规则进行讲解,而对于程序设计方法、程序设计思想没有特别重视。另外,c语言的教学考核标准也是参考全国二级C语言考试大纲。全国二级C语言考试同样是较多地强调了c语言本身的语法规则。即便二级考试中有机考,但由于受阅卷等限制,并不能全面考核学生的编程能力、程序调试能力。因此,这样的教学内容不能满足高职学生后续课程学习的需要,不能起到专业基础课程的实际作用。
(2)教师缺乏改革思路。目前高职院校的教师可分为三类:一类是老教师,从内心不太乐意进行教学改革,对改革有畏难情绪,认为延续传统的教学比较轻松方便,而对于课程的教学效果不好,更多从学生身上找原因;第二类是从学校毕业直接走上讲台的新教师,没有太多的教学经验,主要把自己在大学里学到的知识、教师的教学方法沿用到自己的教学中,还没有来得及思考改革的问题;第三类教师是学校教学的中坚力量,意识到需要改革,甚至也做过尝试,但是,缺乏清晰的改革思路,对存在的问题及教学目标分析不透彻,改革不易收到理想的效果。
(3)不能针对学生的学习特点开展教学。我国延续了30多年的高考选拔方式仍然以笔试为主。根据多元智力理论,我们可以知道,这样的选拔方式使进入高职院校的学生的动觉智力、空间智力、人际交往智力较强,数理智力、语言智力相对较弱,再加上高职学生普遍自尊心、进取心较强,往往是不甘落后,但是学习较情绪化,对感兴趣的东西、实践性环节的学习积极性较高,而对枯燥的理论知识学习兴趣不浓,甚至是有些抵触。而c语言语法规则需要强化记忆与理解,教学过程中,多数采用理论讲解加上机实践的教学方式,较少地从激发学生优势智力的方面开展教学。这样随着教学的难度增加,往往会令学生逐步失去学习的信心。
2 解决办法
1)准确定位教学目标。
高职院校的总体教学目标是让学生在获取专业文凭的同时掌握一项或多项专业技能,为更好地实现就业做好准备,因此每门课程的教学既有理论目标也有技能目标。c语言程序设计课程的教学目标应该定位为:通过本课程的学习,学生要建立起结构化程序设计的思想,养成良好的程序设计风格和严肃认真的工作作风,掌握c语言基本语法规则和结构化程序设计方法,逐步积累常用算法和程序设计的技巧,并能初步运用c语言编程解决常见的简单应用问题,为后续的数据结构、Java编程、嵌入式应用编程等课程打下良好的基础。c语言程序设计是一门核心基础课,其教学主要是为后续的课程服务,因此我们的教学重点应该是教会学生如何运用C语言编写应用程序,而不应该放在相对枯燥的C语言语法规则的学习上,注意把握“为用而学”的原则,使学生学了就会用,并且能做到越用越熟越精,而不是使学生越学越没有兴趣,越学越没有信心。因此准确定位课程的教学目标,将决定后续教学方法选择和所达到的教学效果。
2)强化教师教学改革意识。
意识决定行动,教师有了教学改革的意识,才会努力想办法改革教学,发现问题并进行分析,寻找解决的途径。教师教学改革意识的强化,可通过参加校内外的培训、参观、讲座、各类有关改革的会议等,多渠道多途径让教师接触了解一些教学改革的思路、方法,在思想上对教学改革有所认识,并能结合自己所授课程目前的教学状况进行分析,逐步认识到c语言程序设计课程必须进行教学改革。同时改革是一个系统工程,教师还必须从教学目标、教学内容、教学方法等多方面进行改革。学校作为改革的倡导者,也需要出台一些教改政策,鼓励教师进行教学改革,以提高教学效果。
3)改革教学方法,全面提高教学效果。
在解决了教学目标、教师改革的主动性问题之后,现在要解决的就是具体教学方法问题。教学方法得当,将会收到事半功倍的效果。前面已经分析,高职学生对于逻辑性强的知识学习较为困难,更擅长动手操作和形象思维知识的学习,另外他们好胜心强,但缺少毅力,因此只有选择了正确的教学方法和教学模式才能收到理想的效果。任务教学法、项目教学法是改革的主要教学方法,这些方法强调学生学习的主体性,教师教学的主导性,结合理论实践一体化的教学模式,充分发挥学生学习的优势,能有效地调动学生学习的主动性和积极性。在采用较为有效的教学方法的同时,配合教学考核方法的改革,将过程性考核融入任务与项目教学中,对学生在学习过程中表现的能力和知识水平的提高,及时给予肯定与鼓励。教学中还要注意,改变学生的学习意识,引导学生建立主动学习的意识,变中学时期的被动学习为主动学习,变被动地学习知识为主动地对学习知识的方法的学习和技能的训练,教师要灵活运用多种教学方法,真正做到授人以渔。只有这样,才能真正发挥教与学的双主作用,真正提高教学效果,使该课程真正受到学生的欢迎。
3 实践效果
关于C语言程序设计课程,在2006年我们曾经有院级立项教改课题,确定的教学改革目标是提高全国二级c考试通过率。经过第一轮的教改实践后,虽然全国二级c考试通过率有所提高,但是对于后续课程学习的支撑效果并不理想。学生通过了全国二级C考试,可仍然不会应用c语言编写相关的应用程序,程序编写能力不能满足后续课程的教学需要。经过再思考,并对高职教学改革的理论进行再研究与分析,我们提出了解决c语言程序设计教学改革办法,并开展了教学改革的系列工作,收到了较好的效果。
1)精选教学内容,编写教学讲义,出版教材。
根据确定的教学目标,重点培养学生规范的程序编写能力,对于c语言相对复杂的语法规则及技巧性表达方式,则进行简化,以满足编程需要为原则。在这样的原则上,精心选择教学内容,将教学方法的改革融入教学内容中,形成了由9个任务和3个项目组成的教学内容(如表1所示),并最终出版了教材。整个教学内容的编排思路是:先引导学生认识c语言及集成调试环境,然后是强调编程的规范性,第3个任务是教会学生学习c语言程序设计的方法,从第4个任务开始,由易到难逐步展开教学内容,最后通过3个完整的项目,同样由简单到复杂、循序渐进地讲解如何使用c语言编写应用系统。教材内容的呈现方式上,坚持以程序设计思想、方法以及运用c语言编程解决问题为主线,把讲授语言的概念转变到讲授语言的运用上,把抽象的概念用实例进行展示并通过实践进行体验。为了保证知识的完整性、系统性,设置了拓展阅读栏目,对c语言复杂的语法规则、程序测试的概念、快速排序算法、自我学习与团队学习等知识进行讲解。
2)充分考虑学生的特点,灵活运用各种教学方法与手段。
本课程的教学内容中已经融入了任务驱动教学法和项目教学法,充分考虑高职学生学习的特点,我们给学生提供了自主学习的机会,而不是被动地接受知识。当然,由于学生的层次差异,以及自我管理能力的不同,同时也为了进一步强化知识和技能,每次任务和项目进行过程考核外,还会灵活地采用传统的教学及考核方法。例如,开始入门的时候要求学生抄写一些典型程序,以理解程序编写的思路;中间的时候,对于常用的算法,要求学生理解的基础上加强记忆,因此默写如冒泡排序等典型算法也是一种考核方法,这些方法的综合运用,收到了较好的教学效果。
教学中,还要考虑各种教学手段的运用,例如,常用的多媒体课件能够将难于理解的抽象概念及过程,解释得更加形象生动。其实,在我们身边还有更好的可以用来解释抽象过程的资源,那就是学生。例如,冒泡排序算法,这是教学的一个难点,除了用多媒体课件进行演示外,可以请学生把这个过程进行更加生动有趣的演示,增强算法讲解的趣味性,使学生在活动的过程中,掌握冒泡排序算法,加深理解与记忆。
3)集体备课,发挥教师的创新精神。
头脑风暴法越来越得到人们的认可。通过教师课前集体头脑风暴,共同讨论教法、教学难点,鼓励年轻教师多听有经验教师的课,并且课后及时总结,进行优势互补,发挥教师的创新精神,把c语言程序设计课程的教学改革真正落到实处。例如,通过头脑风暴,我们提出了程序设计的三部曲,即输入数据、输出结果、中间处理过程。过去我们的学生拿到编程题,往往无从下手,通过三部曲,结合高中数学的解题过程,将三部曲的输入数据对应到数学题的已知条件,输出结果对应到数学题的结论,中间处理过程对应到数学题的证明或解题过程。经过这样的关系对应后,学生明白了程序设计其实就是将数学的解题过程,用计算机的语言表达出来,最后让计算机来进行计算。学生一下子觉得程序设计并不神秘,只不过是把数学家已经解决的问题用计算机语言描述而已,这样使学生有种亲切感,再通过由易到难循序渐进的教学过程,逐步建立起学生学习的信心。
4)建立立体教学环境,拓展学生的学习时空。
随着信息技术和现代教育技术的发展,网络、手机、电脑的便捷使用,我们建立了课程网站,将课堂讲义、课件、习题解答指南、应用项目开发案例、自我测试题等上传到网上,并且实现网络答疑,网上提交作业,开展网络讨论,拓展了学生学习的时空,使学生任何时刻只要有网络,即可进行学习交流。另外学校还定期开放机房,安排专人进行现场辅导答疑,给学生提供了一个立体的教学环境。同时还鼓励学生参加蓝桥杯、IATA程序设计大赛,以赛促教、促学,形成良好的学习氛围。
c语言学习心得范文第4篇
关键词:C语言;教学;主动学习;建构主义
作者简介:俞卫华(1979-),女,河南洛阳人,河南科技大学电子信息工程学院,讲师;薛冰冰(1975-),女,河南洛阳人,河南科技大学电子信息工程学院,讲师。(河南 洛阳 471003)
基金项目:本文系河南科技大学教学改革项目(项目编号:2009Y-019)的研究成果。
中图分类号:G642.0?????文献标识码:A?????文章编号:1007-0079(2012)34-0068-02
高级语言程序设计课程不仅是高校计算机专业学生的专业基础课程,也是其他专业开设的重要公共基础课程。作为普遍认可的程序设计工具,C语言功能丰富、灵活高效,既具有高级语言的优势,又具有低级语言的特点,是一种面向过程的结构化程序设计语言,[1]对没有程序设计经验的学生了解程序设计思想、学习程序设计方法尤为适用。由于程序设计课程涉及的思维方式与学生以往所接触到的课程有很大不同,加之在学习过程中机械式的被动接受,很多学生感到独立完成程序设计比较困难,遇到问题无从入手,畏惧心理逐渐影响学习主观能动性的发挥,容易产生懈怠和抵触。
针对上述问题合理组织教学,引导学生养成结构化程序设计思想,激发学生学习的主观能动性是课程教学的关键。本文以激发学生学习的主观能动性为基本出发点,结合建构主义学习理论,将正确发挥主观能动性贯穿课程教学始终,探讨C语言程序设计课程的教学组织,培养学生主动高效学习的能力。
一、建构主义理论指导教学
建构主义学习理论是认知心理学的一个重要分支,吸收了皮亚杰认知发展理论的基本概念。[2]建构主义提倡在教师指导下的、以学生为中心的学习,强调学生的认知主体作用,学生是知识意义的主动建构者而不是外界刺激的被动接受者;也不忽视教师的指导作用,教师是意义建构的帮助者、促进者而不是知识的传授者与灌输者。[3]
学生是独立的个体,每个学生都有自己的思想意愿、性格和行为特点。在教师开展教学之前,学生已经形成了各自的特征和活动规律。这一特点是不依教师的意志为转移的客观存在,学生建构知识意义的过程也因此存在差异。教师作为教学活动的组织者、指导者、意义建构的帮助者,应灵活制订教学目标,有针对性地合理组织教学,发掘学生主动学习的潜能,更好地辅助学生完成建构。C语言程序设计课程多开设在新生入学的第二学期,课程学习效果直接影响学生对后续相关知识学习的兴趣及信心。为帮助学生培养学习兴趣,学会使用C程序解决问题,下面以建构主义为指导,探讨C语言程序设计课程中如何围绕引导学生主动学习开展教学。
二、以培养主动学习能力为主线组织教学
主动学习把学习建立在主体性、能动性的基础上,使学习成为学生自身的愿望,成为愉悦的体验。培养学生主动学习的能力,要努力为学生构建主动学习的环境,把学生吸引到课程学习中,使主动学习成为一种习惯。具体到C语言教学中,重点是激发学生对程序设计的兴趣,让学生习惯使用C语言描述自己的想法,乐于用程序设计解决问题。
1.根据不同学生的特点积极引导
初识C语言,很多学生感觉知识点多而杂,不易理解,遇到问题时找不到解决的入口。教师应根据不同学生的表现,有针对性地积极引导。
(1)部分学生本身有主动学习的意愿,但不当方法影响了学习效果和学习积极性。如学生对C语言的运算符、数据类型等语法细节逐一进行详尽学习,但动手写程序时仍然感觉吃力。针对此情况,教学中应引导学生将学习重点从语法细则转移到问题的算法及程序结构上来,先构思算法再搭建程序,在程序的编写和调试中完善语法学习。
(2)习惯了被动接受式学习的学生,如果没有教师布置的任务就会感到迷惑,不知道要做什么,没有明确的目标和计划。教师应明确教学目标,让学生明白C语言编写的程序可以做什么,并通过具体实例让学生看到自己能够设计出的C程序的运行结果,增加学习兴趣,同时提供多种学习途径鼓励他们主动学习。
(3)对于部分有编程基础的学生,可通过多种方式培养其主动学习的能力。例如引导其完成有一定难度的任务,参加程序设计比赛,组织兴趣小组参与软件开发,帮助其他同学完成学习目标等。这些活动有助于提高解决问题的能力,使学习变得愉快,也培养了实践创新和团队协作能力。
2.结合发现式教学激发学习兴趣
兴趣是主动学习的力量源泉,提高学生主动学习能力的前提是激发他们的学习兴趣。在第一堂课中就要让学生认识到课程的重要性,告诉学生C语言程序设计课程不仅仅是学习C语言语法知识,更重要的是学习程序设计的思想和方法,提高逻辑思维能力。学生在思想上重视课程,就更容易在以后的学习中逐渐培养起学习兴趣。向学生介绍C语言的典型应用,如底层驱动程序的编写、游戏开发等,让学生了解到C语言的强大功能和应用。
教学中采用发现式方法引导学生主动思考、发现问题、探究问题的解决方法。例如,在讲解循环结构程序设计时,以输出5行5列星阵为例,最初的程序可以给出5个printf函数,每个printf函数输出5个星号,学生很容易发现重复繁琐的问题,并考虑使用循环结构简化重复内容,写出语句“for(i=1;i
在课程教学中,使用生动有趣的实例,如鸡兔同笼问题、运费计算问题、扑克牌洗牌发牌问题等同样是兴趣激发的有效方式。当学生对所学知识产生浓厚兴趣时,学习不再是被迫无奈完成的任务,而是充满乐趣和挑战的活动,他们会更加积极主动地学习,获得成功体验,在发现、探究和成功中建构自己的认知体系。
3.融合自然语言学习的规律
人们使用C语言设计程序与计算机进行交流,这种方式同人们使用自然语言讲话与人交流有相似之处。在C语言程序设计课程中,可以引导学生将自己学习自然语言的方法、体会融入到C语言学习中,发现学习语言的规律和乐趣。
学生学习C语言同婴幼儿学习说话相似。[4]婴幼儿学说话时并不理解语法规则,只是简单地重复、模仿大人的话语,待入学后才学习语法规则。学生在初学C语言时也可不必细究语法,通过阅读、模仿他人的程序了解C语言,在能够编写一些简单程序后再关注语法细则,完善自己的程序。
在学习外语时,学生有了基本的词汇、语法知识和写作能力后,需要通过大量的阅读和练习扩充词汇,掌握各种修辞和写作技巧,才能获得较好的交流效果。类似地,学生在能够编写简单C程序的基础上,也要进行大量的程序阅读和练习,学习经典的算法,掌握程序设计的方法和技巧,才能更好地让计算机完成指定任务。作为传统的程序设计语言,C语言与其他计算机语言有许多相通之处,掌握了C语言会使其他计算机语言的学习得心应手。
4.实验教学中强化主动学习能力的培养
实验教学是C语言程序设计课程必不可少的重要环节。学生通过上机实验对所获得的课程知识进行验证和强化,获得宝贵的认知体验。实验教学为学生提供主动学习的环境,让学生体会自主完成任务的成就感,丰富知识获取的方法。但实际教学中存在学生不清楚实验目的、课前没有实验准备、上机时依赖实验教材、机械照搬等问题。由于不理解所调试的程序,遇到问题不能积极寻找解决方法,在有限的课堂时间内不能完成实验任务,草草应付。提高实验教学效果仍然要以学生为中心组织教学。
(1)明确实验目的,引导学生做好课前准备。实验教学是在理论知识学习的基础上进行的。课前要让学生知道对哪些知识进行验证和训练,带着任务上机;教师将实验中可能遇到的问题提前进行讲解、提示,让学生在上机前动笔完成算法描述等设计工作。有了明确的目标,学生在上机时更加积极主动,愿意为了目标克服困难、解决问题。
(2)合理安排时间,有针对性地分配实验任务。实验环节是C程序设计课程的重点,但时间有限,要求教师以学生自主上机为主,问题解答为辅,尽量在课前完成引导工作,缩短课堂集体指导时间。在任务分配上,为所有学生分配能力范围内容易完成的任务,树立程序设计的信心。在此基础上,对程序设计能力较强的学生增加实验难度,鼓励他们积极思考,完成较为复杂的任务。
(3)多种方式相结合,强化主动学习能力的培养。教师在解答问题时可采用启发式解答方法,引导学生通过积极思考逐步解决问题,而不是有问必答;建设教学网站,利用网络平台增加互动,及时反馈学习效果,让学生对学习有掌控感,充满热情和信心;成立学习小组,学生相互借鉴各自在程序编写调试过程中的经验,共同讨论问题解决方案,培养团队协作精神的同时充分调动学生的学习主动性,增强解决问题的能力。
三、结束语
培养学生主动学习的能力不仅有助于学生的在校学习,同时也为其以后的工作学习打下基础,学生受益无穷。C语言程序设计教学中,让学生体会C语言的魅力,积极主动地学习,是提高教学效果的关键。学与教相互作用,学生主动学习的积极状态也必然会为教师教学注入活力,促使教师不断更新教学观念,在实践中探索提高C语言程序设计课程教学质量的方法。
参考文献:
[1]谭浩强.C程序设计[M] 第四版.北京:清华大学出版社,2010.
[2]冯维.现代教育心理学[M].重庆:西南师范大学出版社,2005.
[3]李芒,徐晓东,朱京曦.学与教的理论[M].北京:高等教育出版社,
c语言学习心得范文第5篇
关键词: 高职院校C++语言课程 传统教学法 任务驱动教学法 项目教学法
1.引言
C++语言课程是高职院校计算机相关专业的一门必修专业基础课,也是实践性和应用性非常强的一门计算机语言课程。因此,它是学生最怕学、教师最难教的一门课程。但由于C++语言的功能强大,兼并C语言的所有特征,并扩充了面向对象编程部分,因此受到了许多软件开发公司的欢迎。在主要培养学生的实际操作动手能力,以就业为导向高职院校的计算机相关专业,C++语言课程的开设是十分必要的。怎样能让学生在有限的课堂时间,尽可能地掌握这门课程的基础和精华,是每一个教师值得思考和探索的问题。下面我谈谈多年来带这门课的教学方法,供大家借鉴。
2.教学方法概述
所谓教学方法是指教师和学生为了实现共同的教学目标,完成共同的教学任务,在教学过程中运用的方式与手段的总称。由于时代的不同、社会背景、文化氛围的不同、研究者研究问题的角度和侧面的差异,使得中外不同时期的教学理论研究者对“教学方法”概念的界说自然不尽相同。人类需要进步,进步少不了教育教学,因此教学方法将是伴随人类进步的一个永远的话题。
3.C++语言教学特点分析
3.1C++语言的优点
C++程序设计语言简洁、紧凑,功能丰富,表达能力强,使用灵活方便,目标程序效率高,可移植性好,适合编写各种软件,尤其是系统软件。同时C++程序设计采用了面向对象程序设计思想,集成了许多新的思想与方法,把握了程序设计的发展潮流与方向,更有利于方便、灵活、高效地处理、解决实际问题。所以,C++程序设计语言已在众多领域得到广泛应用,成为本科和高职院校计算机专业的专业基础课程。
3.2C++语言课程教学目标
高职院校C++程序设计语言课程的教学目标:通过该课程的学习,使学生掌握程序设计语言的一些基本概念和语法规则,掌握程序设计的一般方法,掌握过程化程序设计与面向对象程序设计思想及方法,为培养学生的软件开发能力打好基础。
3.3C++语言课程教学重点与难点
C++语言功能丰富、设计灵活,具有繁多的数据类型和复杂、灵活多变的语法结构。C++语言的教学重点包括C++基本数据类型、语法结构、程序结构、传统结构化程序设计、数组,指针,类和对象、继承和派生类、多态性和虚函数、面向对象编程思想及异常处理等内容。教学难点主要包括许多抽象的概念,比如数组、指针、继承、多态性,函数模板,类模板等内容。因此,在C++语言的教学过程中要做到抓住重点着重讲解,对于难点内容,不做过多要求,灵活处理。
4.C++语言教学方法探讨
4.1采用传统教学法
所谓传统教学法是一种以知识为本位的教学,这种教学重在强化知识,只关注知识的接受,学生成了盛装知识的容器,教师不关心学生的接受效果。在C++课程的教学过程中,无论是职业院校还是本科院校,过去都采用传统教学法。本来C++语言课程是一门实践和应用课程,容易激发学生学习的兴趣。但由于采用传统教学法,结果使得学生学起来很吃力,也没有兴趣,最后产生害怕甚至放弃的想法。因此,C++语言课程采用传统教学法确实不合时宜,不仅老师授课觉得乏味,学生听课也更加枯燥。
4.2采用任务驱动教学法
所谓“任务驱动”就是在学习信息技术的过程中,学生在教师的帮助下,紧紧围绕一个共同的任务活动中心,在强烈的问题动机的驱动下,通过对学习资源的积极主动应用,进行自主探索和互动协作的学习,并在完成既定任务的同时,引导学生产生一种学习实践活动。
在C++语言教学过程中运用任务驱动教学方法,就是把教学内容分解成许多小的任务,在完成这些小的任务过程中学习和掌握C++语言的教学内容。这种教学法中,教学主导者由传统教学中的老师变成了教师和学生一起参与,教师帮助学生,在一些问题的驱动下,来完成这些给定的任务。这种教学法能有效调动学生学习的积极性,使学生在学习过程中通过完成任务而获得成就感,从而激发他们进一步学习的欲望。当然这种教学法也使学生掌握知识的能力大大提升。
4.3采用项目教学法
项目教学方法是一种以项目为核心的教与学的方法。项目通常包含某个特定主题的深入学习,在老师的配合下,由一组学生共同工作、研究、寻找问题的解决方案。在项目教学中,学习过程成为一个人人参与的创造实践活动,注重的不是最终的结果,而是完成项目的过程。学生在项目实践过程中,理解和把握课程要求的知识和技能,体验创新的艰辛与乐趣,掌握分析问题和解决问题的思想和方法。
在C++语言教学过程中,采用项目教学法,就是把教学内容的知识融合在一个项目里面,再把这个项目分成多个小项目,在老师的指导下,分成多个小组,每个小组成员进行分工合作来完成项目。这种教学方法给了学生更多的自由空间,让学生具有创新能力,同时也调动了学生学习的积极性,使学生既学得快又学得好,知识的掌握也比较牢固。
4.4几种教学方法的比较
我在职业院校带C++语言课程已有几年,分别对上述几种教学法都进行过尝试和实验。下面把使用这几种教学法学生对C++语言同一知识点掌握情况的抽样调查情况做一个比较。比较情况如下表1所示。
表1 几种教学法学生掌握知识情况对照表
通过上表中几种教学法的比较不难看出,在C++语言教学过程中,采用传统教学法学生能掌握知识点的通过率低于其他两种教学法。采用任务驱动教学法,学生掌握的知识点的通过率高于传统教学法,低于项目教学法。采用项目教学法,学生掌握的知识通过率最高。因此,C++语言课程教学方法的选择与学生掌握课程知识的效果有着直接联系。尤其是对于高职院校,学生基础较差,对书本知识掌握较困难,他们都喜欢在实践操作中来掌握课程知识,课程教学法的选择几乎决定了他们对这门课程知识的掌握程度。
5.结语
本文以C++语言课程教学为载体,分析了C++语言课程采用几种教学法教学的优点及缺点,主要探讨了学生对课程知识的掌握情况、学生学习兴趣的培养及学生动手能力和综合素质能力等方面。以期本文能给教学工作者及相关人士以借鉴和思考。
参考文献:
[1]景雪琴.C++语言程序设计课程教学探讨[J].高等教育研究学报,2005(02).
[2]刘晓妍,胡彦玲.基于C++的面向对象程序设计教学改革与研究[J].电脑知识与技术,2007(03).
[3]龚静,李英杰.高职程序设计语言课程实验教学探讨[J].湖南环境生物职业技术学院学报,2010(01).