地方高职院校《《C语言程序设计》》教学改革探讨
2021-01-04单美玲
摘要:《C语言程序设计》是一种通用性计算机程序设计语言,是高等职业院校理工类专业的基础必修课程之一。本文针对现阶段《C语言程序设计》课程存在的问题,结合地方高职院校学生基础薄弱的特点,从课程定位、教育理念教学方法及考核方式等多个方面进行教学方法改革,探索激发学生学习兴趣、提高学生解决实际问题能力的有效手段,提升人才培养质量。
关键词:地方高职院校 教学改革 教学方法 考核方式
Discussion on the Teaching Reform of <C Language Programming> in Local Higher Vocational Colleges
SHAN Meiling
(Jilin Engineering Vocational College, Siping, Jilin Province, 136000 China)
Abstract: <C Language Programming> is a universal computer programming language,which is one of the basic compulsory courses for science and engineering majors in higher vocational colleges. Aiming at the current problems in the <C Language Programming> course, this paper combines the characteristics of the weak foundation of students in local vocational colleges, and reforms teaching methods from various aspects such as curriculum positioning, educational concepts, teaching methods and assessment methods, and explores to stimulate students to learn Interest, effective means to improve students’ ability to solve practical problems, and improve the quality of talent training.
Key Words: Local vocational colleges; Teaching reform; Teaching method; Assessment method
在2019年9月的第45届世界技能大赛上,习近平总书记强调,在当今的中国,“技术工人队伍是支撑中国制造、中国创造的重要基础,对推动经济高质量发展具有重要作用 ”[1]。现发展阶段,我国不同省市的各种职业院校培养出来的学生,是构成技术技能人才的中坚力量。職业教育是当今社会必不可少的教育体系之一[2]。加快发展职业教育,培养造就技能人才,对于我国来讲具有非常重要的意义。在高职高专类院校中,《C语言程序设计》课程是计算机类、通信电子类及其他相关专业的必修课程。然而,由于高职学生基础较薄弱、学习自觉性不高,因此高职院校的教师如何提高本门课程的教学质量、增强学生处理生活中实际问题的能力是个值得探讨的问题。
1. 教学现状分析
《C语言程序设计》是一种通用性计算机程序设计语言,是高等职业院校中电子、通信、计算机科学等专业的基础必修课程之一。目前,高职院校中《C语言程序设计》课程在实践教学中存在一些问题,影响了课程教学效果。
1.1课程定位不清晰
不同专业,对学生的培养目标不同,对课程教学内容的侧重点也就应该不同。实践教学过程中教师往往只是依照教材内容去讲授,忽视教学内容与后续专业课程的衔接。
1.2学习兴趣不大
C语言是一种结构化程序语言,需要学生具有一定的逻辑思维能力,此外本门课程具有多种数据类型,函数、指针、变量作用域、数组、地址传递等概念,知识点繁杂,认知负荷大。传统的教学模式单调,使学生接受起来有一定难度,学生逐渐丧失了对学习C语言的兴趣,挫伤了学生学习的积极性。
1.3过于注重理论知识学习
就目前而言,大部分高职院校《C语言程序设计》课程中更注重的是陈述性知识的传授,这是一种侧重理论知识的教学方法,然而这并不能提高学生的逻辑思维与编程能力。
1.4教学方法不恰当
《C语言程序设计》课程中传统的教学方法更偏于理论,在课堂教学中为了加深学生对于程序语法的认知,课堂中所举的例子都是些经典案例,与学生在实际生活中碰到的问题脱节,缺乏实用性。
2. 教学改革探讨
2.1清晰课程定位
由于高职高专类院校的目标是培养技术技能型人才和高素质劳动者,因此每个专业的特点十分鲜明。作为授课教师,应制定与专业特点相匹配的授课内容。例如非计算机专业中的医护专业,该专业多数学生学习《C语言程序设计》这门课程的目的是通过计算机等级考试,之后能够用到该课程知识的概率非常低,所以教师应该将授课的核心内容放在基础理论知识上,从而帮助学生达到考级的目的。只有明确课程的定位,对课程的内容有一个深度认识,才能根据课程的内容制定好相关的教学内容,从而才能高效地完成课堂教学,从而实现预期的教学效果。对于计算机相关专业类的学生而言,教学过程应聚焦于编程思想的建立以及在后续课程中C语言的灵活应用。教师应该将教学重难点置于如何去培养本专业学生的逻辑思维能力、社会实践能力以及动手创新能力。针对高职学生的特点,教学过程中尽可能多地使用实际生活中的例子,通过案例教学作为驱动,适当地减少陈述性知识的讲解,避免枯燥无味的“尴尬课堂”。在教学内容方面也应该适当的精简,比如在《计算机基础》中就已学习过的进制转换与补码可以删减掉数据的格式化输出和输入这节课程上的讲解,教师就可以将教学重难点放在%d、 %f 、 %c这3种格式控制符上,其他格式控制符如%md、 %di、 %ld等就提供一定的时间让学生以小组为单位进行自学。
2.2更新教育理念,激发学生兴趣
高职院校的学生基础薄弱,“兴趣是最好的老师”在高职类院校中表现得更为突出。如何培养学生学习C语言的兴趣,是教师在教学过程中要面对的一个难点[3]。每个学生都具有自己的主观意识,学生对教师传授的知识要经过自己考量后做出判断,而不是被动地全盘接受。这就要求任课教师在尊重学生独立性的前提下,本着因势利导、循序渐进的原则讲授知识,而不是让学生盲目地接受自己的个人意识。实践发现学生不喜欢沉闷枯燥的课堂,传统的填鸭式教育是不能够带动课堂氛围,无法激发学生的学习兴趣、实现课程的教学目标的。对此,教师可以采用“先例后引”的教学方法,把将要讲授的知识变成一个实际生活中有待探究的问题抛向学生,激发学生寻求问题答案的好奇心;然后向学生展示如何使用C语言来解决这个问题,使学生直接体验到学习C语言的优势;最后再给出相似问题,引导学生自己动手解决,让学生深深地体会到成就感。 “授之以鱼不如授之以渔”,也表明了教师要尊重学生的主观能动性,以及激发学生的创造性与积极性的重要性。
2.3秉承“工学交替”原则
高职院校主要培养的是高素质、高技能型应用人才,所以应把重心放在实际应用上。在《C语言程序设计》课程的教学过程中,遵循从实际到理论,从理论中总结,边做边学,边学边做,把抽象的理论知识融入到实践当中,通过提炼与总结,对所学到的知识加以理解。本门课程的体检是提高学生的职业岗位能力,对此可以采用基于“工学交替”的新型教学模式[4]。
工学一体,前者为在实际生活中真实出现的环节,后者为在课堂中学习知识的环节,将这两种方式有效地结合起来,可以在第一时间将课堂上学到的理论知识与实践能力相结合,从而提高学生对于理论知识和实践能力的掌握水平。也可以把在实践中碰到的“疑难杂症”带回课堂进行深入学习。课本的知识要与现实中的社会以及生活衔接起来,一旦衔接起来, 知识就会被激活,知识的魅力和价值就会在社会和生活中体现出来,学生的学习兴趣也会随之被激发,在学习的过程中让知识点在学与做的过程中得到吸收,从而可以提高学生追求知识的动力,让学生从主动吸收知识。
2.4综合利用多种教学方法
通俗来说,教学方法是为了完成教学任务而被选择、被创造、被采用的办法。这其中包括教师授课的方法和引导学生学习的方法,让学生掌握知识、获得全面发展的方法。
要想获得一个有效的教学方法,就要从多方面结合考虑,要做到综合性、灵活性、创新性的有效结合。其中,综合性指的是根据不同的教育任务和教学内容,要选择与之匹配的教学方法,不能一概而论,不能长期使用单一的教学方式;灵活性指的是要在教学中根据不同的教学内容,一切从实际出发,根据不同的教学内容调整教学方式,让学生更好地从中吸收、理解知识,不能过于死板,让知识变得生硬;创新性指的是要从实践性出发,让理论和实践相互结合,让教学方式更赋有实际意义,在现有的教学方法上提供新的可能性,创新教学方式,引导学生进行自主学习。
2.4.1启发式教学法
在此种教学方法中,教师可以采用问答方式、讲练方式突出学生的学习主体地位,引导学生在清楚问题的前提下去进行独立思考,去解决问题。从古至今,有很多的教育学家不断用这种启发式教学引导学生,这更加说明教师的作用在于引导、激励、启发,而不是给予学生一个现成的知识,让学生跟着走,应培养学生多思、多悟、多想的学习习惯,培养学生独立解决问题的能力,将知识的创造性用于实践当中。在讲解程序时,教师不要直接给出程序,而是引导学生从分析问题开始,让学生独立探索,克服问题,解决问题。比如在C语言运算符与表达式这一小节中,教师提出个任务:已知变量i=1,求解C语言表达式++i、i++的值分别是多少?那么在这个任务中,教师可以引导学生回忆之前学过的自增运算符“++”的含义,然后去区分此运算符作为前缀、作为后缀时的不同含义。
2.4.2案例式教学法
将项目和案例教学融入教學设计中能够培养学生的实际应用能力。将具有典型性、规律性、代表性和示范性的范例融入到与之匹配的教学内容中,通过“课程细化、教师引导、案例展现、知识链接、实验实训、问题总结、归纳整理”等一系列教学组织方式,借助学生的好奇心,引导学生深入浅出地掌握所学知识点,增强灵活应用能力。比如教师提出任务:从键盘输入一个年份值,如果是闰年就输出“闰年”,否则就输出“平年”。在这里教师可以带领学生一起回顾如何判断闰年。通常判断某年为闰年有以下两种情况:(1)该年的年号能被4整除但不能被100整除;(2)该年的年号能被400整除。根据实际情况可以得知,只要满足上述两种情况的任何一种都是闰年。接着教师可以引导学生整理完成任务所需的步骤:(1)定义变量year;(2)输入一个整数存储到year中;(3)如果判断闰年表达式为真就执行:print(“闰年”),否则就执行:print(“平年”)。
2.4.3实践式教学法
为了帮助学生巩固学习的理论知识点,教师在讲授理论教学内容之后可适当地引入实验、课程设计等实践教学。实践教学还能够拉近师生之间的关系,促进与教师互动的积极性。除了传统的课堂实验外,任课教师还可以在班级范围内组织学生进行C语言设计比赛等课外学习实践活动,更多地创造理论与实践相结合的实践教学过程,为高职院校学生可以进行自主学习打下良好的基础。
3. 考核方式优化
教学评价[5]应基于学生的进步和动态发展,在遵从“以人为本”的大前提下,利用高职院校学生的独立性和自主性,培养学生的长远和谐发展观念,要求教师必须要以长远的眼光去对待学生,利用客观的发展规律,加强学生对教学内容的评价,优化课程质量。针对《C语言程序设计》课程,要以能力考核为重点,全面采用面向过程的评价,不能以传统的考核方式,按照期末试卷的成绩来判定一名学生的成绩好坏,而是要从不同方面分层次的以不同的角度去综合评价每一个学生,平时成绩、综合设计实验、上机考试和期末考试这4个方面缺一不可,分别按照总成绩的10%、20%、40%和 30%划分,通过采用过程化考核评价[6]的方式,可以更加全面、准确地对学生进行评价。
4. 结语
如何把人口红利转变为人才红利、如何由制造大国转变为制造强国,是值得大家一起去探讨的问题。在当下国家以及全球的大环境下,职业教育必将大有可为,也必将大有作。本文从《C语言程序设计》课程的现状入手,针对现如今高职学生的本质属性,从不同的角度,多个方面如课程定位、教育理念及教学方法等进行改革与实践。实践证明,在教学过程中,要清晰课程的定位,更新教师的教育理念,将学生放在发展的主体位置,合理安排不同专业的教学内容,选用“工学交替”的实践环节,综合使用多样化的教学方法,灵活运用考核方式,培养学生理解问题、分析问题的能力,提高学生自主编程能力,在就业压力陡增的当下增加就业能力。同时,也要借助高职学校这个平台,育人为本,关心每个学生,促进每名学生提高服务于国家、服务于人民的社会责任感。
参考文献
[1] 新华社.习近平对我国选手在世界技能大赛取得佳绩作出重要指示[J].中国电力教育, 2019 (9): 6.
[2] 徐国庆.确立职业教育的类型属性是现代职业教育体系建设的根本需要[J],华东师范大学学报:教育科学版,2020,38(1):1-11.
[3] 王必晴,王福成.大学生线上学习兴趣调查研究——以《《C语言程序设计》》课程为例[J].铜陵学院学报,2021,20(1):120-123.
[4]黄晓玲.职业教育课程开发的企业责任研究[D].天津大学,2019.
[5]林民山.基于HTML5的高职院校互联网+课堂教学平台的设计与实现[D].华侨大学,2017.
[6]黄丽薇,王迷迷,陆清茹.基于过程化考核的课程评价体系研究[J].信息系统工程,2021(3):129-130.
作者简介:单美玲(1994—),女,硕士,助教,研究方向为计算机应用。