APP下载

基于微课程的C语言之循环嵌套教学设计

2015-05-30盛蒙蒙

计算机时代 2015年6期
关键词:微课程C语言教学设计

盛蒙蒙

摘 要: 针对公安院校学生学习的特殊性以及在开展“C语言程序设计”教学过程中遇到的难点,提出基于“微课程”的教学改革方法。以循环嵌套教学设计为例介绍了微课程设计的过程。设计时凸出知识的连续性、学生的“心动性”,同时注重培养学生理论联系实际、举一反三的能力。

关键词: C语言; 微课程; 循环嵌套; 教学设计

中图分类号:G642 文献标志码:A 文章编号:1006-8228(2015)06-56-03

Abstract: In view of the particularity of police colleges students' learning and the difficulty in the process of teaching "C language programming", the micro course, a reformed teaching method, is proposed. This paper takes nested loop as an example to introduce the design process of micro course. The design focuses on the continuity of knowledge, the students' "Heartbeat", while focusing on cultivating the students' ability to integrate theory with practice, infer other things from one fact.

Key words: C language; micro course; nested loop; teaching design

0 引言

“C语言程序设计”是计算机类本科专业的核心基础必修课程,是整个程序设计课程体系的基石,是培养学生的计算思维和程序设计能力的起点[1],也是学生对于程序设计类课程的“第一印象”。学好这门课对于建立学生的“学科自信度”与“学科兴趣度”有着重要意义。该课程直接影响后续数据结构、编译原理、操作系统等课程及专业技能的学习。

我院是公安院校,学生不仅需要学习专业知识,而且还要花时间训练身体素质,所以在C语言程序设计教学开展上有自己的特殊性,主要表现在以下方面:

⑴ 课程的按部就班与知识的抽象,加之学生上课有一定的疲惫度,导致学生兴趣度不高、学习内生动力不足;

⑵ 在课堂上教师以“讲”为主,师生交互度不够,教师无法了解学生的掌握程度;

⑶ 学生学习能力、学习进度有差异,而教师课堂上讲究进度与大众化,无法做到“因材施教”;

⑷ 程序设计类课程更多地需要动手与实践,而本校学生课余时间有其他任务,导致学生“课上学完、课后就忘”,复习不充分、巩固不及时。

针对以上情况,笔者试将“微课程”融入日常教学,以期改革传统教学方法,提高教学效果。

1 微课程简介

所谓“微课程”是指以课程标准为依据,围绕单一的、严格定义的学习主题(或知识点)展开的微型课程资源,包括微课视频(音频)、学习任务书、进阶练习三个相互配套的组成部分[2-3]。针对学生的特点和喜好,教师尝试通过片段式的、循序渐进的流媒体形式,围绕某个知识点或教学环节,以生动、活泼的方式开展的简短、完整的教学活动,帮助学生克服上课较疲惫以及课前、课后时间不足而导致预习、复习不充分的问题,让学生变被动为主动,让自主学习获得最佳效果。

将“微课程”引入到教学活动整个过程,教师可以重新分配教学时间,即可以让学生课后学习,课上练习,也可以在课堂上用一半时间让学生自主学习微课程、做练习,另一半时间面对面交流学习,实现知识的应用和迁移。本文选取C语言程序设计课程中重要的知识点——循环嵌套作为探讨内容,并以在课堂上开展微课程的形式进行这次堂课的设计。

2 教学目标

循环结构是C语言的重点,而循环嵌套是循环结构的难点(本次课程教学之前,学生已经学习了循环结构基础知识)。学生在学习循环嵌套时往往觉得较难理解,尤其是在如何设置内外层循环时会出现困难。因此,在课程设计时要注重知识的承上启下,在授课方式上注意由浅入深,化静态为动态,从表象探规律,培养学生举一反三的创新能力。

本微课的教学目标是:

⑴ 知识目标:认识循环嵌套结构并掌握使用该结构设计程序的基本方法;

⑵ 能力目标:培养学生熟练运用该算法结构分析问题、解决问题的能力;

⑶ 素养目标:通过较复杂算法结构的学习,引导学生逐步建立计算思维模式;

⑷ 情感目标:人生就是一个循环,重要的是我们每天在重复做的事情—学习。

其中教学重点是循环嵌套结构的分析设计;教学难点是循环嵌套结构的应用。

3 教学设计及实施过程

本次课程以任务驱动法展开,以公安院校学生身边的例子切入展开话题,步步引导,深入浅出。教学过程中关注学生的注意力、切需性、自信心和满足感[2]。教学形式综合运用多种多媒体技术。具体讲授过程分成以下几个环节。

3.1 引入:什么是循环嵌套

首先让学生自己学习微课程。微课程是以视频的形式让学生学习,如何在一开始就抓住学生的注意力以期做到引人入胜,这是教学设计时需要思考的难点之一。本次课中,通过一位交警的电话引出话题:铃声响起,一位交警咨询如何用程序模拟红绿灯的变化。此处,电话铃声和对话能有效地吸引住学生。我们把问题转化为具体的数据:我要在一个路口临时设一个红绿灯,在1小时内,红灯停3秒,绿灯行5秒[3]。分析题目,模拟1小时内红绿灯的设计,我们可以转化为秒针的运动规律。根据之前学习的循环知识,把题干转化为3条for语句,分别正确地描述1小时、3秒红灯、5秒绿灯这3个事情各自的运动规律。语句如下:

for(s=0; s<1200; s++); //1个小时

for(r=0; r<3; r++); //红灯3秒

for(g=0; g<5; g++); //绿灯5秒

PPT设计如图1所示。

图1 引出红路灯问题的PPT内容

给出静态的语句学生不能看到它的结果,因此通过执行VC程序来动态展示语句运行结果。通过演示结果我们就发现了问题:这三件事情是相互独立和各自运行的。而事实上他们之间是有联系的。结合PPT我们进行分析:1个小时内红路灯交替变化,说明红路灯事件是包含在1个小时之内发生的,它们有包含关系,而现在的三条语句是并列关系,不能反映这种嵌套。经过分析,我们对语句进行修改如下:

for(s=0;s<450;s++)

{

for(r=0;r<3;r++); //红灯3秒

for(g=0;g<5;g++); //绿灯5秒

}

再次分析语句并运行VC执行结果,我们看到了预期的结果,至此,交警同志的问题得到了解决。这里通过代入感很强的例子,在教学设计上不断设问、答疑并解决问题,让学生体会到解决问题的成就感。此时再引出循环嵌套的概念:在循环体语句中又包含有另一个完整的循环结构的形式,称为循环的嵌套。从定义上进一步理解循环嵌套的内涵。

3.2 探讨:实现循环嵌套的方式

在理解概念的基础上,介绍常用的实现循环嵌套的方式和设计要点。我们学过三种循环结构,while,do-while,for三种循环都可以相互嵌套形成9种格式。这里要结合已有循环结构的知识,重点讲解如何设计循环嵌套:一是正确找出循环体,确定循环体所在循环的层次;二是控制循环次数,明确内外循环控制变量之间的关系。这便是解决循环嵌套的锦囊妙计,有了思路,就有了方向。

3.3 展开:用一用循环嵌套

帮助学生知识内化,最好的方式之一便是自己动手做一次。给出题目,《来自星星的四边形》,带着学生分析如何打印一个平行四边形的图形,并完成上机操作。

*********

*********

*********

*********

*********

在分析的基础上,请学生上机完成题目,此间老师通过观察学生在实际动手过程中遇到的问题,掌握学生的疑难点。学生调试代码成功后,把程序运行结果截屏通过平台提交,让老师了解学生的掌握情况。一般学生在理解循环嵌套后都能完成这个题目,由此提高学生的学习自信心。此外,这种闯关打怪的方式,也让紧张的学习有了适当地放松。

3.4 扩展:循环嵌套的练习

分析总结刚才的题目,对于学生出错比较多的地方予以重点讲解。然后给出课后作业九九乘法表,请学生课后思考并操作完成。

3.5 教学小结

回顾学习的内容:循环嵌套的概念、形式、解题思路。引导学生其实人生就是一场循环。常言道,年复一年,日复一日,我们每天都在做很多重复的事情,比如学习。学习是伴随人们一生的重复行动,只有每天重复学习,我们才能每天进步一点,才能最终成就我们自己的人生。此处再配以音乐和图片,能在理工课堂带来艺术的享受。

4 教学特色总结

⑴ 打破传统教学模式,让课堂更精彩。传统的C语言程序设计课堂教学方式一般是以讲授语法、语句和程序结构为主,辅以相应习题和实验内容以巩固知识点。这种以教师“讲”为主,“答”为辅的传统教学模式使教师在教学过程中自觉或不自觉的将重点偏向理论,即使教师“讲”得很精彩,也无法做到充分的交互、沟通,无法较好地因材施教,无法充分锻炼和提高学生程序设计能力。本文将“微课程”引入到教学活动整个过程,让微课程代替老师讲的环节,让“教师”变“教练”,通过平台的统计功能,让教师实时分析掌握学生在学习过程中遇到的疑难问题,及时应对或补充讲解,为开展个性化教学提供助益,也让课程变得更加有效率[5]。

⑵ 以学生视角出发,注重“心动”设计[2]。实现基于微课程的学生自主学习和教师课堂指导相结合的教学模式。应用实例、故事、多媒体技术等丰富视频内容的呈现方式,使微课不再局限于教师讲解加板书的讲授形式,强化了学生学习的体验特征,激发学生学习兴趣;营造一对一的感觉,紧紧抓住学生注意力;利用流媒体可暂停、可快进的功能,让学生自主掌握学习进度。

⑶ 依据数据分析,掌握学习成果。从满堂灌的教学方式向引导、答疑的教学方式转变。以“闯关打怪”的形式设计习题,辅以积分系统,学生可以查看自己学习进度的数据,看视频用了多长时间,通过了哪些测试(或者是哪些测试不合格),以及哪些知识点还有待加强等,不准许学生有“误差”,更不准有“误差积累”。教师要做的就是查看反馈表的数据,找出学生的问题,不再提“你有什么不懂,我来帮助你”之类问题,从而开展有针对性地指导。

5 结束语

我们将“微课程”引入C语言程序设计的教学中,以全新的模式尝试解决学生学习兴趣度不高、传统课堂教学方式交互性偏少等问题。然而我们也注意到,微课程有其适应性,并不是所有的课程或者一门课所有的知识点都适用微课程教学。对于相对独立或易分割的内容可以做成微课程,而对于较复杂的内容并不适合用此方式。因此在实践教学中,教师仍需要具体课程具体分析,通过不断摸索和总结有效地发挥微课程对课堂教学的补充功能,实现课堂教学的多元化发展。

参考文献:

[1] 牟琴,谭良,周雄峻.基于计算思维的任务驱动式教学模式的研究[J].

现代教育技术,2011.21(6):44-49

[2] 胡铁生,黄明燕,李民.我国微课发展的三个阶段及其启示_胡铁生[J].

远程教育杂志,2013.4:36-42

[3] 张静然.微课程之综述[J].中国信息技术教育,2012.11:19-21

[4] 王觅.面向碎片化学习时代微视频课程的内容设计[D].华东师范大

学,2013.

[5] 陈菁,王忠,范青刚.基于微课的翻转课堂教学实践[J].计算机工程与

科学,2014.36.

猜你喜欢

微课程C语言教学设计
基于Visual Studio Code的C语言程序设计实践教学探索
基于C语言的计算机软件编程
高职高专院校C语言程序设计教学改革探索
巧借微课,翻转课堂
高中数学一元二次含参不等式的解法探讨
“仿真物理实验室” 在微课制作中的应用
翻转课堂在高职公共英语教学中的应用现状分析及改善建议
提高课堂教学有效性的研究
论子函数在C语言数据格式输出中的应用