高职C语言程序设计教学改革研究

2014-04-25 01:07丁辉
计算机教育 2014年3期
关键词:C语言程序设计高职教学改革

丁辉

摘要:c语言程序设计课程是高职计算机类专业的核心基础课,对后续课程的学习有着举足轻重的作用,但随着其教学难度越来越大,对其进行教学改革势在必行。文章从教学内容、教学方法、教师和学生等因素进行全面的分析与研究,并提出改革策略,说明应用效果。

关键词:高职;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)改革教学方法,全面提高教学效果。

在解决了教学目标、教师改革的主动性问题之后,现在要解决的就是具体教学方法问题。教学方法得当,将会收到事半功倍的效果。前面已经分析,高职学生对于逻辑性强的知识学习较为困难,更擅长动手操作和形象思维知识的学习,另外他们好胜心强,但缺少毅力,因此只有选择了正确的教学方法和教学模式才能收到理想的效果。任务教学法、项目教学法是改革的主要教学方法,这些方法强调学生学习的主体性,教师教学的主导性,结合理论实践一体化的教学模式,充分发挥学生学习的优势,能有效地调动学生学习的主动性和积极性。在采用较为有效的教学方法的同时,配合教学考核方法的改革,将过程性考核融入任务与项目教学中,对学生在学习过程中表现的能力和知识水平的提高,及时给予肯定与鼓励。教学中还要注意,改变学生的学习意识,引导学生建立主动学习的意识,变中学时期的被动学习为主动学习,变被动地学习知识为主动地对学习知识的方法的学习和技能的训练,教师要灵活运用多种教学方法,真正做到授人以渔。只有这样,才能真正发挥教与学的双主作用,真正提高教学效果,使该课程真正受到学生的欢迎。endprint

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程序设计大赛,以赛促教、促学,形成良好的学习氛围。

4 结语

高职院校c语言程序设计课程的教学改革,不是一撮而就的工作,需要经过长期的实践与总结,才能收到较为理想的效果。在改革过程中,我们必须认真研究教学目标、教学对象及教学方法,尤其是教学对象。近年来,高校录取率不断提高,学生的个体差异越来越大,使教学的难度也越来越大,因此教学改革将是一项长期探索的工程。

(见习编辑:刘丽丽;编辑:孙怡铭)endprint

猜你喜欢
C语言程序设计高职教学改革
高职数学教学和创新设计的渗透
wolframalpha在高职数学教学中的应用研究
以“学生为中心”的《C语言程序设计》教学设计探究
基于翻转课堂的《C语言程序设计》课程教学系统的实现与研究
浅谈《C语言程序设计》课程的教学改革
《C语言程序设计》课程的教学改革与实践
基于人才培养的技工学校德育实效性研究
现代信息技术在高职数学教学改革中的应用研究
以职业技能竞赛为导向的高职单片机实践教学改革研究
微课时代高等数学教学改革的实践与探索