任务驱动在《C语言程序设计》教学中的应用

摘 要:《C语言程序设计》是一门应用性很强的课程,重点是培养学生解决实际问题的能力.传统的C语言教学过于注重语句、语法等细节的内容教学,不能适应现代学生创新能力的培养.结合《C语言程序设计》课程教学,采用“任务驱动”教学方式,以更好地激发学生的求知和创新意识,培养学生分析问题、解决问题的能力和实际动手能力.

关 键 词 :C语言;教学方法;任务驱动;应用实践

中图分类号:G712 文献标识码:B 文章编号:1002-7661(2013)19-004-01

目前,《C语言程序设计》已经成为各类高校计算机专业程序的入门语言.现在很多新型的语言都衍生自C语言,它包括了程序设计的基本概念和基本思想.通过对 C语言课程的学习,促进了学生学习程序设计的兴趣,培养了学生分析问题及解决问题的逻辑能力,为后续课程及其它程序设计语言的学习和应用打下了坚实的基础.

以往教学中几乎都是教师把所有问题的具体步骤都详细地讲授给学生,学生被动地接受知识,没有机会去思考、探索问题的解决方法和步骤,造成学生独立思考问题、编写程序的能力差.慢慢地,学生逐渐丧失学习兴趣,使得教学质量无法提高.为了更好地促进对C语言的学习,我在教学过程中采用了“任务驱动”结合“分组探究”的教学方式,充分发挥学生在课堂上的主体作用,挖掘学生的特长和潜能,培养学生的学习积极性、主动性,以及团队精神、分工合作等精神.

一、两种教学方法的比较

传统的教学模式通常是“三步曲”,即:提出概念→解释概念→举例说明.应用这种模式教学主要是以教为主,过于注重语句、语法等细节的讲解,对学生独立分析问题、解决问题的能力训练不够,导致很多学生上课时能听懂,而下课却不能独立编写程序的现象.而任务驱动法则采用“四重奏”,即:提出任务→分析任务→完成任务→任务评价.课堂教学中,教师根据课程要求提出相关的“任务”,以完成一个个具体的“任务”为线索,把教学内容及知识点巧妙地容入在每个“任务”之中,学生自主或在教师的指导下提出解决问题的思路和方法,然后进行具体的操作,教师引导学生边学边做完成相应的“任务”.这样,学生就能在完成任务的过程中掌握相关的知识点,学习起来不会感觉枯燥,并且能提高各方面的能力.

二、任务驱动法在《C语言程序设计》实际教学中的应用

1.设计任务

在C语言教学中,我们应根据课程的具体要求精心设计一个或多个“任务”,可以将这些任务设计成一个任务书的形式发给学生课堂完成.任务书中内容要使我们所要学习的新知识点都隐含在这些“任务”之中.提出的“任务”难易要适当,从学生实际出发,充分考虑学生现有的知识基础,认知能力等特点,遵循由浅入深,循序渐进的原则.

例如:在讲解数据统计时,可以设置三个任务,第一个任务是计算一组数的和,第二个任务是计算这组数的平均值,最后一个任务是找出这组数中的最大值和最小值.这几个任务由易到难,第一个任务是在学生学会求累加和的基础之上完成,第二个任务是在第一个任务基础之上完成,最后一个任务由教师引导学生如何一步一步通过两两比较找出其值.这样设计任务学生如果能够解决第一个问题,其它问题举一反三就容易求解了.


2.分析任务

“任务”的展示千万不能泛泛而谈、含糊不清,应落到具体的某一点上.为了让学生尽快进入任务驱动情境,教师对如何完成这一任务可结合实际应用作一些启发性的提问,以及从某些方面可以作些变化来展示任务,让《C语言程序设计》课程的讲授更加直观、形象,学生对知识的掌握就能起到事半功倍的效果.学生在没有任何心理准备的情况下遇到任务往往有一个时间差,对任务的理解也有一个过程.因此对学生进行必要的暗示才能在有限的时间内使学生完成任务而少走弯路.在分析解决问题的过程中教师要起到引导作用,引导学生如何利用所学知识,发挥个人潜能去分析并寻找解决问题的方法,使学生在任务驱动教法下积极主动、创造性地完成学习.

例如:教师在讲解数据统计问题时,通过多媒体向学生展示设计好的三个任务,并逐一进行分解.在完成第一个任务时,老师要引导学生计算一组数的和实际就是我们学过的累加和问题,比如我们学过求解1+2+等+ 100的累加和.并对学生进行启发性提问:这个任务中累加的每一项的值是怎么得到的?有规律吗?在分析每一个任务时充分调动学生的好奇心和求知欲,任务中隐含着已学过的知识和新的知识,通过这样的方法来引导学生,学生就能由已学过的知识完成这个任务.总的来说在分析任务时,老师可以通过提出问题来引导学生分析任务.

3.完成任务

在完成任务时,要充分体现学生的主体地位.在此之前可以将学生按照成绩的优差情况平均6到7个同学分为一个小组,并安排一个成绩好的有领导能力的同学担任小组长,课堂上就以小组为单位坐在一起共同完成任务.在完成一个任务时,组长可以按任务的量平均分配给每一个成员或是几个成员,分工协作共同探讨一个或多个问题,并寻找解决办法.此时,老师巡堂指导,观察学生的探讨情况,对不知从何下手的小组进行提示或举例,对完成较好的小组进行表扬鼓励.

例如:完成统计一组数的和这个任务时,引导学生完成这个任务从三个方面来考虑:(1)三种程序结构应该选择哪一种?(2)每一个数的值是从哪里来的,如果是从键盘上输入的,输入到什么时候结束,共输入了多少个数?(3)累加和变量的初值应该赋值为多少?组长带着成员分析这三个问题,并在草稿本上写下最基本的几个步骤.写一个程序首先要定义所需的变量,然后对变量赋值或输入值,再对数据进行累加,最后输出结果.当思路理清后,学生均可运用现有知识来完成.老师巡堂指导,检查学生完成情况,并检查学生相关的语句、语法.当任务完成时,学生就会从中获得成就感,激发了学生的求知欲,调动了学生学习的主动性,创新能力也不断提高.

一个任务的解决可能会同时解决下一个任务,例如下一个任务是求这一组数的平均值,从数学角度来看,平均值等于累加和/个数,既然累加和以及个数都知道了,平均值也就很容易计算出来了.也就是说任务与任务之间可能存在某种联系.

三、教学实施中应注意的问题

《C语言程序设计》是一门实践性很强的课程,既要掌握概念,又要动手编程、上机调试并运行程序.采用任务驱动教学方式,更应注重实践环节,通过相关实验,帮助学生加深对任务的理解.通过实验,进行回顾与分析,找出成功与不足,老师应作出适当提示、分析和点评,并作出最后的归纳与总结.只有在实践中才能真正学会如何编写和调试程序,体会到“优化”程序的好处;只有通过上机实践才能更好地掌握理论.

在实际教学中,老师应认真分析教材,把握教学的重点、难点,根据学生认知水平设计“任务”,“任务”的难易程度要

适当,知识应有连贯性.不顾教学的实际情况,盲目追求所谓的“高水平”,只会使学生望而却步,无从下手;而过于简单、陈旧的“任务”,探究的深度和余地不足,“驱动力”不强,学生可能会缺乏学习的热情.任务完成后要求老师及时总结,对于完成较出色的学生及时表扬,不能挫伤学生学习的积极性.总之,“任务驱动”教学应体现“以任务为主线、教师为主导、学生为主体”的基本特性,目的在于使学生在解决任务的同时学到课程相关知识和技能,培养学生的自主学习能力和解决实际问题的能力,提升学生的创新能力.

“任务驱动”教学方式在当前程序设计教学中确实是一种行之有效的教学方法,实践表明在《C语言程序设计》课程中使用“任务驱动”法,教学效果明显好于“传统教学法”.教师与学生围绕“任务”积极互动,学生在一个个典型的程序设计“任务”驱动下,共同协作学习活动,教师引导、帮助学生由简到繁,由易到难,循序渐进地完成一系列“任务”,能让学生思维活跃起来,进而乐于学习,主动学习,创造性地学习.

类似论文

《C语言程序设计》教学方法

摘 要 :本文指出了C语言的特点;说明了教学C语言针对不同专业采取因材施教的方法;阐明了抓住主要矛盾,解决关键问题。
更新日期:2024-1-7 浏览量:7809 点赞量:3171

高职《C语言程序设计》教学的

摘 要:高职学生由于基础知识相对薄弱,学习新知识的能力较弱,计算机程序设计所用的各种语言对高职学生来说基本是陌生&。
更新日期:2024-1-28 浏览量:21679 点赞量:6058

《C语言程序设计》教学方法

摘 要:本文指出了C语言的特点;说明了教学C语言针对不同专业采取因材施教的方法;阐明了抓住。
更新日期:2024-2-11 浏览量:31487 点赞量:7933

《C语言程序设计》教学改革

【摘 要】从C语言在教学体系中的地位及其特点出发,分析了传统教学方法的不足,对该课程的教学。
更新日期:2024-12-8 浏览量:21301 点赞量:5869