诸吟佳
摘 要:随着计算机行业的迅猛发展,计算机专业学生的学习不能局限于某些常用软件。因此,C语言程序设计的学习就显得尤为重要。本文以职业技校C语言教学过程中存在的问题为切入点,从培养学生兴趣、合理设置教学目标、调整教学方式、改革考核方式,优化评价机制等几个方面进行分析与探究。
关键词:C语言程序 教学方法 职业技校学生
时代的飞速发展促使我国科技力量不断同步提升。计算机技术的普及及向其他学科的快速渗透让计算机知识的重要性日益凸显。职业技校的计算机专业学生将来想要有很好的就业渠道和就业选择,就必须对计算机工作原理有正确的理解,同时需具备熟练操作和使用的能力。
C语言程序设计作为计算机专业课程中的基础内容,可以说是一名计算机从业者的必备基本技能,属于进行计算机软件开发所用的入门语言,为后续的其他计算机专业课程的学习打下坚实基础,将计算机解决实际问题由可能变成了现实。
经过该课程的多年教学,笔者发现虽然C语言属于概念简单、类型丰富、表达能力强的短小精悍型计算机程序设计语言,但因为它的灵活性和多样性,学生掌握的情况皆不太理想,当然这和学生自身情况也有密不可分的关系。如何将这门基础课程讲好,让学生在学习的过程中主动提高自学能力和应用能力,让枯燥的理论知识变得实用好理解,下面就谈谈笔者的一些感悟与探究。
一、实际教学中存在的问题
1.学生的计算机水平参差不齐
职业技校学生的招生范围比较广泛,对于计算机的掌握水平也是参差不齐,有的学生甚至都没有接触过计算机。此外,部分学生的数学功底薄弱,逻辑分析能力不强,在学习的过程中又缺乏积极性和主动性。这给后续的教学带来了很大的困难。
巨大的水平差异使得在教学过程中,有点基础的学生满足于一知半解,掌握了书本上的基本概念或是常见例题就自我满足,学习的内容不踏实稳固,独立解题时就会错误百出;而基础较差的学生跟不上普通教学进度,日积月累问题增多,丧失了学习的信心,失去了学习热情。
2.教师的课堂教学方式单一
课堂教学是目前主要的教学手段,通过增加了多媒体演示等方式来帮助学生更快更好地掌握C语言的实际应用,但若仅仅依靠课堂例题的讲解和示范操作,忽视基础语法等知识点的重要性,同样会出现很多问题。对于很多刚刚接触编程语言的学生来讲,最大的问题就是觉得入门难,上课按照老师的讲解依样画葫芦可以听懂学会,但是课后一旦遇到新的程序就又不理解程序的实际功能了,如果要用程序来实际解决问题就更加有难度,根本不知道如何下手也没有具体的思路,从而产生了畏惧感。
如若过重地强调语法细节,大量在课堂讲解基础理论知识,甚至以计算机考级真题和模拟题作为讲解和练习的重点,又会使得课程的实用性大大降低,学生也会感觉到枯燥无味,丧失学习兴趣。长此以往,学生们仅仅注重了语法的学习,没有真正领悟程序语言设计的基本思想和方法,更不可能独立编写出有实用价值的程序。
3.上机实践的局限性
作为一门计算机课程,C语言课程的学习必不可少的就是学生上机操作训练。该过程既需要学生掌握概念,又需要动手操作,还需要调试运行出结果。但目前学生在实际上机时,往往对布置的任务敷衍了事,有的甚至直接抄袭其他学生的程序。同时,上机操作的指导老师往往只有一位,而学生编写程序的方法却不会相同,于是出现的问题既有共性的也有个性的。这样就导致不能及时解答每位学生的问题,使部分学生的程序不能继续调试,白白浪费课堂上宝贵的上机实践时间。
二、问题解决方案探究
1.激发和培养学生的学习兴趣
任何学科的学习与学生的学习兴趣是息息相关的,C语言的学习也不例外。针对目前职业技校学生没有过多接触过计算机语言,其他基础知识比较欠缺,本课程的理论知识枯燥深奥的特点,不仅仅要采取多媒体演示的方案进行教学,还要穿插一些既具有趣味性又具有实用性的程序进行讲解展示,例如“猴子吃桃”“鸡兔同笼”“水仙花数”等问题,吸引学生的注意力,通过简单模仿和后期深入练习,体验到编程后的成就感,促使学生激发起自身学习的动力。
2.合理设置教学目标,调整教学方式
教师在课前要对学生进行充分的熟悉和了解,针对学生的实际情况和教学大纲的要求,合理设置教学目标,调整教学方式。
在实际教学中笔者发现,学生对于基本的概念理解记忆往往没有在实际应用中发现问题后强调概念的重要性效果好。于是在平时的课堂教学中,笔者往往弱化基本格式的死记硬背,强化各种形式的实际应用,选择性地挑选例题讲解,将原本晦涩难懂的语法知识通过例题引出,让学生更快地掌握程序编写的实际应用,培养解题的正确思维模式,让教学效果变得既有广度又有深度。
学生在实际解题操作时,特别是遇到条件语句、循环语句和数组这部分有难度的内容时,容易产生畏难情绪。这就要求教师合理设置教学目标,设置一些难度适宜的分解目标,深入浅出,缩小问题台阶,让学生有能力逐步解决问题,激发学生自己动脑筋想方法,从而达到掌握教学重难点的要求。要知道学校中编程语言的学习只是一个基础,学好C语言是程序设计的一个良好开端,切忌设计好高骛远的目标,让学生永远失去了继续主动学习的热情。
教学过程中,不光采用多媒体演示的方法,还可以采用其他多种手段促进学生对内容理解。例如在讲解交换两个数的位置的教学过程中,笔者引入了现场模拟,课堂上携带了一杯可乐、一杯雪碧和一个空杯,让同学现场表演,要交换就必须将其中一种饮料腾入到另一个空杯中,即需要增加的另一个变量,这样另一种饮料才能换到前面的饮料杯中,然后腾出来的饮料倒入另一个饮料的杯子,从而实现了交换操作。在教学中引入了现场模拟,使学生更容易对这些抽象的内容加深理解,更重要的是碰到类似的问题他们会触类旁通,从而慢慢培养出编程的兴趣。
3.教学形式多样,注重团队精神
由于职业院校学生的基础薄弱,学习自制力较差,上课易走神分心,甚至有的会开小差,利用上机实践的机会玩电脑游戏,大大影响了课堂的教学效果。学生的学习能力也有高低,要完成相同的学习任务就会出现时间和掌握程度上的差异。
在实际教学中,笔者会根据各个学生不同的情况进行分组,让每组学生的综合水平基本持平,将能力较强的学生设为组长,通过任务布置和团队分工的合理安排,让每个学生都在课堂上积极行动起来,并且在相互讨论和分析优劣利弊中取长补短,起到了提优补差的效果,培养了学生的团队协作能力,这在今后计算机编程的工作中也是十分重要的能力。
4.改革考核方式,优化评价机制
C语言的学习内容和其他课程有些异同,不能片面强调考试试卷答题的正确率。在平时教学中,笔者以考核为手段,重在激励和鼓舞学生将知识内容掌握牢固。平时的每次上机实践都是一次考核,配套的实验报告中必须要包含流程图、调试过程和问题分析,在规定时间内完成后根据质量评分,计入最后的学期成绩评分,这样使每位学生对每次上机实践课程都非常重视,最大限度地激励学生的学习潜能。
C语言的教学重点是培养学生分析问题与解决问题的能力,而这种能力的培养是与学生的刻苦学习分不开的。如何通过这门课的教学来提高职业技校学生分析问题、解决问题的能力和编程的能力,让其具备更强的就业能力,还需要进行不断的探讨和实践。笔者会在今后的教学过程中细心观察,不断地去探索研究,不断丰富教学经验,找到一条能获得理想教学效果的途径,为中职教育事业贡献一份力量。
(作者单位:无锡宏源技师学院)