应用型本科院校自动化专业C语言课程教学探讨
2016-05-28欧美英葛浩谷胜伟程辉
欧美英+葛浩+谷胜伟+程辉
摘 要: 自动化专业在实施C语言课程教学的过程中,应当有别于计算机专业及其他理工科专业。根据目前自动化专业学生在学习C语言课程过程中存在的问题,从教学大纲、师资培育、教学方法、案例设计等方面阐述了在教学过程中所总结出来的教学改革和实践。
关键词: C语言课程 自动化专业 教学改革与实践
C语言课程为专业基础课,是自动化专业开设的第一门计算机语言类课程。基于此,自动化专业的C语言课程讲授应区别于其他工科专业,要更注重编程应用能力的培养[1]。如何开展针对自动化专业的C语言课程教学改革是值得思考和探究的问题。
1.教学现状分析
目前在大部分应用型本科院校中,C语言课程均由计算机专业的教师授课。非专业教师对自动化专业的人才培养体系了解较少,不可避免地采用计算机专业的教学思路教学,无法体现自动化专业对C语言课程的特殊需求,也很难与后继课程相结合。
从专业培养要求看,自动化专业无后续的数据结构、算法分析等课程,且课程中缺少如自动控制等专业案例,因此针对本专业的计算思维难以培养,导致常用算法没有得到充分的讲解和练习,学生在解决应用型题目及后续的学习中无法找到合适的方法进行问题的计算机描述与实现。
从学生学习方面看,C语言课程作为公共课在开设的过程中存在的主要问题有:上课能听懂,但课后就忘了;程序能看懂,但自己编程时不知如何下手;感觉与专业无关,不愿意学;上机调试出现一大堆错误,不知道如何改错[2][3]。
2.教学思考和改革
根据上述分析,笔者在传统教学的基础上针对C语言课程教学做了如下的教学思考和改革。
2.1编制针对性大纲,培育师资。
制定大纲时要注重与后续课程如单片机应用技术、计算机控制技术、嵌入式系统等课程的衔接,培养学生编写控制程序的能力。
在师资培养上,C语言课程教师要对自动化专业人才培养体系有较深入的理解,准确把握C语言在后续课程中的应用形式,将后续使用的案例融入课程教学过程中,将C语言课程的“知识孤岛”与相应课程“知识孤岛”连接起来,使该课程切实起到基础课的作用。
2.2培养计算思维。
计算思维就是运用计算科学的基础概念进行问题求解、系统设计等一系列思维活动,是学生运用计算科学解决实际问题的思维过程和能力体现[4],它是问题的“机器化、自动化”。
自动化专业学习C语言课程的主要作用是:为后续课程中学到的各种控制器编写控制软件,而控制软件编写过程中的算法设计即是计算思维应用过程[5]。部分学生在编程时采用数学公式模式或者自然语言模式,说明学生的计算思维还未培养出来,因此该课程教学中首要注重学生计算思维的培养。计算思维的培养具体体现为在数据类型及控制结构基础上的算法设计,并按照语法编制程序,因此算法设计是计算思维培养的关键。在C语言课程中主要是让学生学习和理解已有的经典算法。为了使算法“通俗易懂,深入人心”,笔者在算法讲解上主要采用类比或者实例的方法。如求一个数组中的最大值及其下标,则可以类比在教室中一排学生中找到个子最高的。在讲解时则假设最左边的学生个子最高,记下他的身高和位置,然后和他旁边的学生进行比较,看谁高。如果旁边同学高,则丢弃原来的记录结果,记录下旁边同学的身高和位置,反之则继续和下一位学生比较,以此类推,直到最后一个学生。通过教学方法的改变,学生在编写程序时自然就会使用临时变量、比较语句、循环语句等知识点,同时也让学生清晰理解算法的原理及操作过程,收到较好的学习效果。
2.3增加专业案例,提高学习兴趣。
我校自动化专业的C语言课程在第二学期开设,此时学生仍保持较高的学习热情。但教学发现,学生在课程初始积极性很高,随着课程的开展部分学生积极性逐渐被磨灭,因此如何让学生不掉队,保持学习积极性很重要。
C语言课程将直接为单片机应用技术、嵌入式系统、计算机控制技术等课程提供支持,故在C语言课程中的专业案例可联系上述课程进行设计,下表所示为C语言课程与单片机应用技术课程相关的部分实验。通过专业案例一方面让学生练习C语言课程中的知识点,另一方面以具体问题为例让学生感觉学有所用,有助于提升学习兴趣。
3.结语
针对自动化专业的对C语言课程的需求,在分析现状的基础上,从教学大纲、师资培育、教学方法、案例设计等多方面进行教学改革和尝试,努力把C语言从应试课程转变为一种实践工具,并已取得部分成果。例如,在2014级自动化专业省考(二级C语言)的126名学生中优秀率为23.0%,不合格率为5.5%,而全校理工科学生平均优秀率为11.5%,不合格率为21.7%。通过课程的教学改革较好地支持专业后续的课程开展和专业素质的培养。
参考文献:
[1]陈丽敏,齐红伟.自动化专业C语言教学改革与实践—基于“工程应用型”人才培养模式[J].当代教育理论与实践,2014,12(12):41-42.
[2]俞庆英,陈传明,许建东.高校公共课C程序设计的专业化教学新模式[J].计算机教育,2014,4(7):101-104.
[3]姚分喜,张百海.自动化专业计算机类课程综合实验系统设计[J].实验室研究与探索,2013,11(11):276-278.
[4]蒋宗礼.计算思维之我见[J].中国大学教学,2013(9):5-10.
[5]郑征.自动专业“C程序设计”教学思考[J].电子电气教学学报,2013,12(6):15-17.