摘 要:C语言是一门结构化程序设计语言,对于学生来说,C语言程序设计的思维方式和概念都是全新的,学生接受起来很困难。如何解决这个问题,并找出一条即具有构造性的又具有创造力活动的教学方法呢?固教学方法越来越被广大计算机教师所关注。笔者总结了最近几年C语言程序设计教学经验,与大家进行探讨。
关键词:C语言;人才培养;教学方法;实践
引言
当今计算机已广泛应用于社会生活的各个领域,并向普及化方向发展。对80、90后的大学生而言,除了掌握一般的计算机操作技能以外还必须具有一定的实际应用编程能力。C语言是一种通用性计算机程序设计语言。它兼有汇编语言和高级语言的双重优点,运用它既能编写操作系统软件,又能开发各个领域的应用软件。C语言的实用性使之成为编程的首选语言。学好并掌握C语言不光能够提高学生自身的计算机编程能力,而且为将来学生的顺利就业打下基础。然而有很多学习过C语言甚至是计算机专业毕业的大学生连最基本的程序都不会编写,针对这种现象教学之余笔者做了深入的调查和分析,发现在当今的C语言教学中还存在一些问题,有待我们研究和探讨。
1.C语言教学中存在的问题
1.1人才培养目标定位不准确
有的高职高专型学校太注重理论教学环节,忽视实践教学环节。教师过分强调学习语法等理论知识,忽视培养学生实际应用的能力。受学科型教学思维的影响,由教师主导的教学过程呈现出以语法为主线的教学模式,编程变成了语法学习的示例或验证。这样学生理论课听不懂,实践课练习编程屡屡受挫,学习C语言的积极性和主动性受到严重打击。
1.2教师教学过程中采用的教学方法不适当
有的教师在上C语言的第一堂课就采用单调死板、照本宣科的牧师讲法。先讲概念,然后举例去验证理论的正确性,而实际问题一点也得不到解决,使学生陷入不断被灌入理论和不断的尝试和验证中,使学生失去学习C语言的兴趣。
1.3实训课和实践课没有被充分重视起来
笔者多年教学发现C语言上机课安排的较少,在相对理论课较少的C语言上机课堂上,还有很多学生迟到、旷课,或者上机时打游戏,做小动作。笔者去过不同的学校听不同的
老师上课,笔者发现在有的老师的上机课上有将近一半的学生请事假。久而久之,C语言的上机课实际上是名存实亡。学生得不到很好的上机练习机会,编程能力也得不到提高。
2.解决问题的方法
2.1准确定位人才培养目标
学校应面向市场,准确把握市场对计算机编程人员的需求,从而制定合适的人才培养计划,依据计划由学校的资深教师编制教学大纲并选定教材。C语言是面向过程的编程语言,即不生动有趣又不直观可见,让初学者望而生畏。高职高专型学校和本科学校相比生源质量相对较差,学生的起点低,一些普招上来的学生没有学习过计算机文化基础,甚至有些学生根本没有接触过计算机,根据笔者多年的C语言教学经验,C语言的第一次实训课上,往往有很多学生不会开机,也不会关机。所以高职高专型学校应把人才培养目标定位在培养技能应用型人才上,培养学生实际动手能力和软件开发能力。
2.2把一些先进直观的教学方法应用到C语言教学中
(一)采用启发式教学,激发学生学习的自主性
针对C语言概念多,语法规则较繁的现状,采用启发式教学可以将难理解、难记忆的概念和规则变成一系列具体直观的问题呈现在课堂教学中,这样就能把学生的注意力集中起来,把学生的学习积极性调动起来,达到师生互动的效果。这种启发式、讨论式、交流式的教法,不仅改变原来的灌输式教学,而且增强了学生自主学习的能力。
(二) 采用任务驱动教学法
传统C语言教学总是从基本数据类型讲起,再接着讲C语言的各种数据类型及概念,基本上是这样一个过程:设计算法—书写程序—调试程序,显得即抽象又复杂,这种方式对学生来说比较枯燥,也较难理解和掌握。在教学中,可先给出一个任务,然后再给出源程序和运行结果,学生对此任务有了初步认识并对其产生了强烈的好奇心,学生的求知欲被充分调动起来,然后教师再具体讲解程序中用到的语句和概念,从而让学生明白如何分析并解决问题,逐步培养学生进行程序设计的正确思维模式,以后再大量的做这样的练习题,强化训练,使学生对类似知识点达到举一反三,融会贯通。
(三) “框架法”和“求异法”相结合
“框架法”可培养学生的全局思维和算法的整体设计能力。具体体现在两方面:一是在学生有了一点编程基础后要利用伪代码或流程图,从算法设计的角度讲解编程思路,而不应拘泥于语法细节,不分主次、逐条语句的讲解代码。通过此框架,可使初学者把着眼点放在函数的设计框架上,体现参数设计、返回值设计等关键问题,而无需细讲函数体的实现细节。
“求异法”:一个固定的问题有多种解决方法。多角度、多侧面去寻求解决问题的办法,则可激发学生主动去思考,提高学习兴趣。在C语言中一个问题有多种解法的情况有很多,有意识地引导新思路,鼓励新方法,以培养学生在编程中的求异思维,而不是死记硬背,墨守成规。
(四)采用现代化教学手段—多媒体
现在大多数学校的教师都在多媒体教室上课,但是仅仅是使用PPT教学,没有做到真正意义上的多媒体教学。
笔者建议采用多媒体教学技术,把枯燥的内容形象化,使声、形、图、文融为一体。例如在讲冒泡排序时可以采用flash动画技术把排序的过程动态的演示一遍,也可以在平时的上机训练时让学生编写简单的小游戏程序,这样在娱乐中让学生觉得学习C语言更有兴趣了。在实训室实训时教师可以采用广播教学的方式互动教学,逐个学生、逐一问题、逐步突破。
3、结束语
C语言程序设计的教学要讲究方法,通过灵活采用多种教学方式和教学手段,提高学生的学习兴趣和学习积极性。通过这门课的学习,不仅要使学生掌握语言的基本规则,而且要切实培养学生分析问题,解决问题的能力,培养学生的创新精神,团队意识,为学生提供更好的展示才华的舞台。
参考文献 :
[1] 张庆岚.提高《C 程序设计》课程教学质量的探讨[J].福建电脑,2009年第1期.