韦 燕
摘要:文章主要针对高职高专院校中《C语言程序设计》传统教学模式中出现的听得懂、编不出的现象,分析问题存在的原因,从课程目标定位、教学内容和教学方法方面探索了《C语言程序设计》课程的教学。提出了在《C语言程序设计》课程的教学中依据培养学生的目标合理调整教学内容,以激发学生的学习兴趣为目的合理改革传统的教学方法,创新引进当今流行的教学方法。
关键词:C语言程序设计;案例教学;任务驱动
《C语言程序设计》是大专计算机专业一门重要的主干专业课, 同时也是“数据结构”、“面向对象程序设计语言C++”等课程的先修课,但是丰富的功能带来的繁多数据类型和复杂语法结构, 要求教师有良好的教学水平, 要求学生有敏捷的思维和灵活的逻辑设计能力而成为一门难教又难学的课程。
1C语言程序设计教学当前面临的问题
目前,许多学校将C语言程序设计教学的讲述重点放在一些学生不感兴趣的语法规则上面,没有充分发挥实验训练优势,造成学生编程能力差,学生逐渐丧失学习兴趣,使得教学质量不高。通过我对高职计算机相关专业学生的观察和调查得知,学完C语言后能熟练掌握、灵活运用的学生为10%左右,基本掌握的学生为35%左右,大部分学生只能是应付考试,甚至还有5%的学生采取放弃的态度。为了改善C语言的教学状况,使学生能真正掌握这门课程的知识,有必要依据学生的层次及所选的专业对《C语言程序设计》课程目标、教学内容、教学方法等方面作一些探索。
2C语言程序设计教学改革的建议
2.1明确课程目标
语言课程一般是为应用性教学而设置的,因此,强调实践性是计算机语言课程教学中特别要注意的问题。通过学习,学生应能正确理解语言的基本概念、语法、语义并得到充分的程序设计训练。对于计算机语言课程的教授不应仅仅是传授知识,应该以培训能力为主。过分强调该语言的系统性和完整性可能会转移学生对课程重点的注意力。C语言的内容繁多,在有限的课时内不可能也不必要面面俱到,所以必须突出重点,突出实用性,关键在于教会学生正确运用C语言编写程序,一些细节、具体规则和进一步的知识可以让学生在今后的应用中查阅有关书籍。教师应始终坚持以应用为中心,以算法为基础,以培养学生的实践能力为核心,突出技术实用性和再学习能力的培养。高职学生高职教育着重培养具有实际工作能力的技术型和应用型人才。因此,高职学生对知识的理解力相对要强一点。除了每堂课的容量要增加外,教师还需要有意识地留一些知识点给学生自学,以培养他们自主学习的能力。其次,教学内容也应有所增删,尽量使教学内容多和实际的程序设计相联系。对于一些经典例题要讲清所采取的解决方法,如“小猴吃桃”问题,必须讲清递归方法及递归问题中回推和递推的两个阶段,并且还要讲清如何设计结束递归过程的条件。具体来说,一般高职学生要能掌握:程序的三种基本结构、数组、函数、指针、结构体、文件等内容。当然,对于计算机专业的高职学生还必须掌握更深层的知识内容,并且要求学生参加国家二级C语言程序设计等级考试。
2.2改革教学方法
传统的《C语言程序设计》课程的教学是以课堂为中心的满堂灌,其中上机一般占30%左右。《C语言程序设计》的授课一般以Turbo C为主,Turbo C的调试环境很不直观,使学生不容易理解。因此,尽管C语言有实用价值,但生涩的教学内容,不易引起学生的学习注意,如果不讲究教学方法,则难以达到课程的预期目标。为了改变这一状况,教师必须利用现有资源重新整合教学内容,改进单一、乏味的教学方法,力求显现在学生面前的知识有趣而生活化,以提高学生的学习兴趣及学以致用的能力。
2.2.1采用多媒体辅助教学。
教育心理学研究表明:人获取的外界信息中,83%来自视觉,11%来自听觉,5%来自嗅觉,15%来自触觉,1%来自味觉。很明显增加视觉、听觉信息量是多获取信息可取的方法,而多媒体辅助教学恰恰在视觉、听觉效果方面有独特的优势。如在复习选择结构时,可以借助Flash动画制作一个模拟“打火机的点火效果”,其中火苗的出现与否即让按钮实现点火的功能,就可以利用Turbo C程序设计中的if条件语句来实现。所以从教育心理学角度看,运用多媒体辅助教学对提高课堂实际效果肯定大有裨益。
2.2.2运用案例教学法,激发学生的学习兴趣。
所谓案例是指那些在日常生活中较能典型地反映教学内容的事例。一般的课堂举例并不等同于案例教学。教师在准备案例的过程中,首先要确定哪些是要学生掌握的知识点,然后再精选能够说明、反映这些知识点的案例。在案例的设计中要不拘一格,巧妙使用可视化的程序设计语言或Flash动画设计软件。整个教学过程中应该由整体到具体,先对程序有个初步的印象,再简单介绍该例子中用到的语句,让学生对该语言的学习有一个大概的了解,避免学生对学习语言望而生畏。同时要把“解题思路、方法和步骤”当作授课的重点,从而让学生明白如何分析、解决实际问题,逐渐培养学生进行程序设计的正确思维模式。不要拘泥于C语言的语句格式,而要注重案例的生动、形象,能否真正激发学生的学习兴趣。只有激发了学生的学习兴趣,学生才会自觉、主动地记忆C语言的语句格式。如在讲授选择结构中的多路选择结构时,利用程序设计语言设计一个红绿灯自动变化(红灯:2秒;绿灯:3秒;黄灯:1秒)的案例,使学生掌握多路选择结构,更主要的是使学生了解多路选择结构的用途。实践表明,在案例教学的过程中,学生兴趣高,教学容量大,知识点的前后联系紧密,学生对通过案例教学的方式传授的知识点印象深,能灵活运用。
2.2.3基于问题的教学。
提出问题,以学生独立完成为主,教师只提供必要的辅导,培养学生探索问题和解决问题的能力,更有利于创新能力的培养。
2.2.4应用“任务驱动”教学方式,提高学生分析问题和解决问题的能力。
在《C语言程序设计》的教学中,当传授完一个知识点或知识结构时,为了使学生能灵活运用,经常会采用再现式教学。如何将再现式教学转变为以解决问题、完成任务为主的探究式教学呢?答案是采用“任务驱动”式教学方法。所谓"任务驱动",就是学生通过完成教师布置的任务,建构真正属于自己的知识与技能。其中的任务既蕴含了学生应该掌握的知识与技能,也蕴含了学生应该获得的能力训练。学生完成任务的过程,是一个不断提出问题、解决问题的过程。
2.2.5注重实验。
可以让学生在上机实验之前写好作业的程序,然后到实验的时候带到机房,所有的学生通过网络将抽出的作业拷贝到自己的计算机上,教师选择一台距离适中的计算机装上投影仪,随机抽取一个学生的作业,先让学生自己先调试该程序(大概4分钟),然后由教师在自己的计算机上边调试边讲解,学生边看投影屏幕听教师的讲解边操作计算机; 一个程序调试完了, 可以随机地抽出下一个同学的程序按同样方法讲解调试,一节课下来, 大约可以完整地调试3到4个程序,在这些程序中基本上能覆盖到学生在编程中常出现的错误。这样,每一个学生都能亲自动手调试程序,由于学生亲自动手调试,那么教师对编译器提示的讲解就会使学生能记住且熟悉之。学生对程序调试的整体水平提高了,教学效果较好,教师感觉也不是很累。
2.3改革课程考核方式
平时上机练习时给学生留一些编程习题,每次根据学生编写情况进行测评并占据期末总成绩30%期末前,给学生留一个综合实训题考核学生综合解决问题的能力,要求同学们在一周内完成,占据期末总成绩30%。期末进行理论考试,占期末总成绩的40%。此外要通过展示学生的作品,激发学生的学习欲望。计算机软件课程具有多样性、复杂性和求异性特点,我们要针对每个学生任务完成的情况,让同学们展示自己的劳动成果,及时肯定学生的成绩,这样会有利于激发学生们的学习热情,保持浓厚的学习爱好,对学生的后续学习将产生强大的动力和自信心,也可以对每次任务的完成情况进行积分制度,算入期末成绩中,以激发学生们的学习动机。
3结束语
对任何一个事物的认识 ,往往不是一蹴而就的,需要经过多次反复操练,才能逐步加深巩固与提高。在C语言程序设计的教学过程中应以程序设计和实验为主,通过课程的教学方式的改变激发学生学习该课程的兴趣,使学生不但掌握高级编程语言的基础知识、编程技术和基本算法更重要的是掌握程序设计的思想和方法,并能灵活应用高级语言进行程序设计,解决实际问题,从而适应社会发展对人才的需求。
参考文献:
[1]谭浩强.C程序设计[M].北京:清华大学出版社,2003.
[2]方加娟,李红霞.多媒体辅助教学在C语言教学中的应用.计量与建材技术,2005,32(2):47-48.
[3]董卫红.《C语言程序设计》的教学改革与实践[J].常州轻工职业技术学院学报,2007,1 .
[4]王庆延,王勇,黄雷鸣.《C语言程序设计》精品课程建设的研究[J].江西蓝天学院学报,2007,2.
[5]杜瑞庆,郑铮.《C程序设计》中选择法排序教学方法探讨[J].现代企业教育,2006,17.
[6]刘涛,严轶群.C语言程序设计课程教学改革的研究与实践[J].电脑知识与技术(学术交流),2006,36.
[7]孙锋.《C语言程序设计》教学的几点体会[J].计算机与信息技术,2006,7.
[8]胡科.“C程序设计”实验教学与实践[J].计算机与信息技术,2006,12.
[9]柴造坡.高职计算机网络技术实践教学改革探索[J].黑龙江生态工程职业学院学报,2008,2.
[10]田慧君.高校计算机网络课程实践教学体系建设与研究[J].当代教育论坛(学科教育研究),2008,1.