计算机协作学习法在C语言课程教学中应用
摘 要:笔者在C语言程序设计实际教学过程中采用计算机协作学习教学模式,从以教师为中心的单向教✎学模式转变成了以学生为中心的多向教学模式,有效的激发了学生的主观能动性和学习积极性,培养学生的协作学习能力,把枯燥的程序代码变得生动而有趣,从而大大提高了程序设计课堂的教学效果。
关键词:高职;计算机协作学习;教学模式;C语言课程
中图分类号:G6℃42
随着社会的进步和高职教育的发展,针对高职学生的教育教学模式正在不断探索和创新,如何提高学生学习的主观能动性,从“要我学”的学习状态向“我要学”进行转变,提高高职学生的学习热情和兴趣。基于《C语言程序设计》的实际教学过程,本课程组立足高职学生的基础,结合高职的办学方针,采用计算机协作学习教学模式,提高学生的学习兴趣,重点培养学生对算法思想的理解,提高学生的编程技能。
1 计算机协作学习教学模式概述
协作学习教学模式是指采用协作学习组织形式促进学生对知识的理解与掌握的过程,通常由4个基本要素组成,即协作小组、成员、辅导教师和计算机协作学习环境。
图1
2 计算机协作学习教学模式在C 程序设计课程中的设计与实施
《C程序设计》是高职院校计算机专业学生及全国计算机等级考试必修的专业基础课,它为其它专业课程提供结构化程序设计的知识和思想。通过本课程的学习,学生应该掌握C程序设计的基本原理、技巧、方法和开发环境,培养优良的编程风格,掌握结构化程序设计方法和思想,为后续相关课程学习,以及用计算机程序解决实际问题打下坚实的基础。由于地域和教学环境的差别,学生入学计算机知识水平参差不齐,学生的求知欲和对知识的要求不同。传统的以教师为中心的教学模式,无法满足不同学生的学习要求,课堂中的案例与学生的专业、生活联系不够紧密,无法引起大多数学生的学习兴趣,主动学习意识差,造成了教学的困扰。本课题就是希望将计算机协作学习法引入《C程序设计》课程教学中,并针对上述问题及解决方法做出一些探索性的研究。
2.1 确定研究对象
2.2 研究方案
图2
2.3 教学实践
教学实践过程主要是通过教学案例的形式来展现的。下面主要从三个方面对教学案例的过程进行描述:(l)教学准备;
(2)教学实施;
(3)过程观察与反思。
案例:学生选课查询平台
(1)教学准备
1)分析学习者
经过近一个学期的计算机基础课程的学习,学生对Windows XP、文字处理软件Word 200
3、电子表格软件Excel 200
3、演示文稿软件PowerPoint 200
3、IE浏览器、QQ工具等计算机的各项基本操作有了一定的了解,学校有对学生开放的电子阅览室和学生机房,宿舍也有网络,学生课后可以很方便的上网查询资料、看新闻,对QQ和浏览器掌握程度也很熟练。以上这些便利都为顺利开展计算机协作学习模式提供便利条件。
2)分析学习内容,明确学习任务
本课题选择的内容是C语言程序设计第四章分支结构程序设计中的if语句的嵌套部分的内容,在此之前学生已经学习了数据类型、运算符、表达式、赋值语句、输入输出语句、Turbo C集成开发环境等内容的学习,这些前期工作为我们进行if语句的嵌套部分内容教学奠定了坚实的基础。
在协作学习的学习任务筛选上应选择具有一定复杂性和模块性的任务,确保任务布置到小组后可以形成明确的分工。结合高职院校办学宗旨“学以致用”,即能用所学知识解决实际问题的教学特点,我选择的是这样一个学生选课查询平台的案例,具体内容为:“大学里对不同性质的学生听课收费不同。某校是这样规定的:本校全日制学生不收费。本校夜大学生选课12学分及以下付800元,然后每增加一个学分付100元。输入学生的编号,选课学分及其学生类型,编程计算该学生应付的学费。”任务中给出作品总体设计要求,不确定具体内容,有利于各小组集思广益,发挥学生学习的主观能动性,激发学生的学习兴趣、想象力和创造性。
作品具体要求:
①程序内没有冗余代码和死循环语句;②算法简单可行性高;③代码稳定性高,不会因为输入不同导致不稳定情况出现;④程序带有适当的注释,方便查看和理解;⑤配有相应的程序结构流程图;⑥程序完成后建立好组长姓名+学号命名的文件夹并上传至讨论组、教师机和教师邮箱。
3)结合学生情况,确定协作学习分组
针对学生兴趣爱好、交际能力、对知识掌握能力等方面对学生进行问卷调查,综合问卷调查结果和学生前期考试成绩、平时表现、智力因素、学科基础、学生性别,把班内学生分成8个协作学习小组,每个小组5名同学,分工为组长、记录员、汇报员、检查员和评论员。分工基本标准如下:由责任心强具有一定组织能力的同学担任组长,能够抓住重点并且能准确记录的同学担任记录员,语言表达能力较强的同学担任汇报员,学习成绩优秀善于发现问题的同学担任检查员,善于分析问题的同学担任评论员。素质教育的基本观点是有差异而无差生,善于发现学生的个体区别,把握学生个性特点是因材施教的基本出发点,根据组内成员分工情况,在组长带领下,组员们发挥创新意识、善于思考、协作学习、总结归纳、互帮互助、共同提高。针对5人在小组中的分工情况,并不是一成不变的。根据任务的不同,组员基本不变,分工角色发生一定变化,尽可能让每名学生通过不同角色体会协作学习的互补性,提高学生综合素质能力。
(2)教学实施
案例教学过程如下表所示:
表1 案例教学过程
子过程 教师活动 学生活动
程序观察,初步了解结构化程序设计方法
1、向学生展示优秀的代码案例
2、组织学生讨论程序代码内容,分析程序结构
3、小结结构化程序设计标准
4、提出学习任务(程序的编写)和原则(分小组讨论、协作学习)
5、对ต程序优化提出建议
1、观察学习完整优秀代码案例
2、了解结构化程序设计标准
3、明确学习任务和原则
4、确定小组成员分工及组长人选
5、组长制定小组活动计划及整理信息
自主学习,设计制作学生选课查询平台
1、公布教师机地址和访问方法,介绍各模块内容
2、建立QQ群,参与学生讨论组网上讨论、答疑
3、指导学生对程序设计错误纠错
4、指导学生共享小组文件夹及局域网的使用
1、登录教师机,了解模块内容
2、创建程序源文件,以组长姓名+学号 ッ命名的文件夹进行保存
3、完成学生选课查询平台代码编写并对代码进行优化
4、在程序中设置好注释内容
5、小组成员将程序通过文件夹以共享方式传送给组长
6、组长将收到的程序进行整合
小组合作完善程序
1、指导学生将程序打包上传
1、小组对程序进行讨论提出最后修改意见
2、组长将程序打包上传至教师机或发到教师邮箱
作品评价
1、展示程序评价标准
2、组织学生讨论评价程序
1、小组成员积极参加协作学习评价活动
2、对各名小组成员程序学习理解情况进行总结并如实打分自评
(3)过程观察与反思
在C程序设计教学过程中引用计算机支持协作学习模式初期,学生刚接触新的教学方法时有部分学生觉得很不习惯,有几个小组只有2-3个人在一起讨论,分析。其他同学则在上网聊天或者玩游戏,还有一些同学等着老师布置具体任务,不大愿意参与到小组中进行协作学习。经过一段时间的磨合和熟悉,学生们对协作学习模式很感兴趣,都能积极参与到过程中来,集思广益,发挥各自的优点,完成了任务有了很强的荣誉感。从最终程序完成情况来看,8个小组都在规定时间内按质量完成了任务。协作学习模式把学生由单向布置完成任务向多向交流互动完成任务进行了质的转变,学生在课内外积极进行讨论和构思,当所在小组程序被大家公认为最好อ时,整个小组的学生都非常高兴,协作学习模式不仅使学生对书本上所学内容进行拓展延伸,还实现了培养计算机专业学生团结协作能力的综合目标。
教学过程结束后,为了更清晰查看学生阶段性学习效果,笔者通过调查问卷的形式对实验班和对比班再一次开展问卷调查,与学期初开展的问卷调查内容一样,问卷内容仍然是主要围绕学生对C程序设计的学习兴趣和人际交往两个方面,下发调查问卷80份,回收调查问卷80份,问卷有效率100%,调查结果如下表所示:
表2 学生学习兴趣分析表
时间 班级 人数 兴趣不高 兴趣一般 兴趣较高
人数 百分比 人数 百分比 人数 百分比
对比班 42 15 36 19 45 8 19
图3
表3 人际交往能力分析表
时间 班级 人数 交往能力差 交往能力一般 交往能力较好
人数 百分比 人数 百分比 人数 百分比
学期初 实验班 38 14 37 18 47 6 16
学期末 实验班 38 9 24 22 58 7 18
图4
观察上述分析表可以发现,采取普通教学手段的对比班在学习兴趣和人际交往能力方面学期末和学期初数据百分比没有发生较大变化。采取计算机协作教学法的实验班同学学习兴趣和人际交往能力百分比发生较大幅度变化,相比较学期初,学期末兴趣较差和人际交往能力较差的同学发生了大幅度下降,而学期末兴趣较一般和较高及人际交往能力一般和较高的同学发生了一定幅度上升。
在教学环节中引入计算机协作学习模式,使我的课堂从单向以教师为中心的教学方式转变成了多向以学生为中心的教学方式,充分的调动了学生的学习兴趣和主观能动性,较好的挖掘了学生资源,培养学生的协作学习能力,教学方法深受学生好评。在综合评价中,学生们能以不同角度,不同层次提出对编程思想和算法的新见解,对我也是个学习的过程,拓宽了视野,教学内容和手段丰富了很多,把枯燥的程序代码变得生动而有趣,从而大大提高了程序设计课堂的教学效果。
参考文献:
[2]曾建萍.计算机支持协作学习CSCL的应用研究[D].江西:江西师范大学,2005
[3]张睿.分组式协作学习方式在教学中的应用[J].软件导刊,2013
[4]余莉华. 任务驱动与协作学习在计算机教学中的应用[J].陕西煤炭,2012