蔡莉莎 吴恒玉 曾维鹏
摘要:C语言是编程语言的基础,该文以电子相关专业的实用角度出发,从课程的教学目标、设计思路、教学内容、教学的组织与实施、考核方式等方面对C语言程序设计课程进行教学改革。通过实践结果证明,该改革措施效果良好,有利于学生能力的提高。
关键词:C语言程序设计;教学改革;教学内容;教学设计;教学方法
中图中类号:G712 文献标识码:A 文章编号:1009-3044(2014)21-5040-02
《C语言程序设计》在计算机控制、数控技术、电子技术等相关行业中都作为应用系统开发设计语言。根据本系电子信息工程技术专业的人才培养方案,本专业的学生毕业后可以从事单片机开发助理工程师、单片机销售助理工程师等岗位。希望通过该课程的学习培养高职高专信息类学生的逻辑思维能力,为后续与编程语言相关的课程做好铺垫。为社会输送能力强,具有创新性的嵌入式应用型人才。
1 本课程的教学目标与设计思路
1.1教学目标
本课程的教学目的是:希望能通过课程的学习,使学生具备计算机程序设计的基础知识及方法,掌握C语言的语法规则,了解算法的基本知识。能够使用掌握的语法规则描述算法思想,并具备排除程序错误,调试并成功运行的能力。在实践教学过程中应注重学生分析问题能力的培养,能用编程思想来解决专业领域的实际问题,最终形成清晰的逻辑意识[1]。
1.2设计思路
按照“以能力为本位,以职业实践为主线,以项目为载体的项目课程为主体的模块化专业课程体系”的总体设计要求,该课程以学会C语言程序设计语言,形成程序代码阅读理解与代码编写的基本技能为基本目标,培养学生良好的编程风格与清晰的逻辑思路。教学设计的整体思路是以项目为主线,任务为中心,重整教学内容。不再沿袭理论与实践相分离的教学模式,通过在完成项目的过程中,教师引导,学生练习的方式,让学生总结学习重点最终使学生从被动接受知识变成主动掌握知识。
2 教学内容
2.1教学内容与学时安排
通过“学生成绩管理系统”这个项目以理论知识够用即可的原则对教材重新整合,将该项目分解为8个子项目,由单项技能向综合技能的提升。课程共80学时,理论与实践各占一半。通过8个具体任务的子项目分别介绍基本涵盖了C语言程序设计的知识点及技能的内容。学生通过这些子项目了解C语言各知识点在实际任务中的应用,掌握设计开发一个项目的工作流程及方法。整合后的教学内容打破教材章节界限,按“制作项目”的需要灵活安排教学内容[2]。本课程教学模块的分配如表1所示。
2.2教学重难点
教学重点是理解C语言的基本概念,掌握三种基本程序设计结构(顺序、选择和循环)掌握数组的概念及使用方法,掌握函数的定义及参数的传递,理解指针的概念。很多时候虽然学生对概念掌握非常熟悉但在实际编程过程中,会遇到很多问题,比如if语句在嵌套过程中多分支情况,多重循环时程序重复执行的次数,函数在嵌套调用与递归调用时能否顺利返回等问题,这也是教师在教学过程中需要突破的难点。
2.3 突破重难点的方法
教师在引导学生学习过程中如何突破重难点呢?将语法知识融入到项目中,只需掌握最常用最基本的语法知识,摒弃不常用的方法,使学生通过项目开发理解并掌握基本的语法知识,突出理论知识在具体项目中的使用方法。围绕一个具体主线项目如“学生成绩管理系统”进行难点讲解,以实际应用作为突破口,使学生能理解循环嵌套在实际中的应用,提高学习兴趣,提高感性认识,培养应用思维。将理论和实践有机结合起来,形成以培养学生动手能力为主线的一体化教学模式,使学生在“做中学、学中做”[3]。
3 教学的组织与实施
3.1 教学组织形式
本课程的采取教、学、做一体化的教学模式,所有的课程都在实验室完成,理论知识与项目开发相结合,教师引导学生思考完成项目的思路,在学生将思路实体化的过程中,教师讲解相关知识点,鼓励学生尝试将C语言的知识转换成具体程序实现任务要求,做到真正的理论与实践相结合。
3.2 教学设计
在教学过程中主要以案例导入→知识点学习→课堂讨论→动手实践→项目考核的教学模式来开展课堂教学。教师在课前通过案例与学生分析项目具体要求,学生讨论实现该任务的具体思路。让学生自己提出要实现该任务可能遇到的问题,教师通过整理学生的问题,抛出与本次任务可能有关的知识点以及技能点。师生共同构建课程的理论知识,并将理论知识融入项目中。在教学过程中可以让学生分享编程思想,鼓励学生创新,教师可以适当提出开发性问题,激发学生的创新潜能。根据学生掌握程度考虑结合简单的单片机知识并参考现实生活中常见的小项目例如交通灯的设计与制作,通过该项目是设计使学生了解如何通过程序控制硬件电路,不但使学生对单片机有感性认识,而且进一步提高程序设计能力。
3.3 教学方法
1) 工学结合
作为子项目知识点的扩展将实际问题或企业实际开发项目引入课堂教学(如电子时钟、抢答器、交通灯、学生成绩管理系统等项目),进行适当简化处理,作为教学和实验实训项目。
2) 根据课程和内容采取了灵活多样的教学方法。
在教学过程中,采取了以工作过程为导向的学习过程,综合运用基于工作过程的项目教学法、任务驱动法、案例导入法、分组讨论法等教学方法开展教学。整个课程教学方法灵活运用,根据内容需要选择教学方法,各种教学方法交错使用,互相融合[5]。
4 考核方式
本课程的考核方式采取过程考核与期末上机考核相结合的方式。其中过程考核包括平时出勤(5%)、作业(5%)、课堂表现(5%)、实验实训考核(35%);其中上机考核(50%)[5]。实践考核根据6个子任务考核学生对知识点的掌握情况,每个学生一台电脑,独立完成考核内容,在规定时间内根据学生的程序编写、调试、运行等情况对学生考核进行评价。
5 教学效果
课程改革后,学生的学习积极性有极大的提高,学习效果也较为显著,近几年来我院参加省级或国家级的比赛战绩显赫。获得国家级奖项2项,省级比赛一等奖6项,二等奖11项,三等奖10项。学生评教过程中,本课程教学团队主讲教师一直受到学生好评,好评率为90%以上。
参考文献:
[1] 杨晶,李成楠. 浅谈高职院校C语言教学课程教学的探索和思考[J].中国科教创新导刊,2012(5):79.
[2] 周雅静.C语言程序设计实用教程[M].北京:清华大学出版社,2009.
[3] 王洪敏.高职院校C语言课程教学改革的实践[J].辽宁高职学报,2007,9(1):37.
[4] 陈一飞.关于C语言教学改革的探讨[J].中国电力教育,2012(35):63-64.
[5] 吴恒玉,蔡莉莎.数字电子技术课程教学改革的探索与实践[J].辽宁高职学报,2013,15(4):35-37.