文档介绍:《冒泡排序》教学设计
一、教学课题
《冒泡法排序算法》——算法与程序设计(新课标教科书;教育科学出版社)
二、教材与学者分析
冒泡排序的重点在于讲清楚冒泡排序的原理以及如何用程序实现算法,这也是本节的难点。本节教材上是通过解决“明日之星英语演讲大赛”的选手成绩排序问题作为切入点,而我并没有按照教材的例子展开,我根据教材“对5个元素‘4,1,2,5,3’的序列进行升序排序”为例,重点分析排序的过程(多少趟、每趟进行多少次比较),进而帮助学生找出其中的规律,由此,学生可以举一反三解决问题。
虽然学生已经学习过程序设计的三种结构,也学习使用过VB里的数组及应用。但在学习冒泡排序算法的过程中学生会对数组变量的变化在理解上存在一定困难,对双重循环内外层的作用及有关循环参数的设置可能会产生不解,需要通过实践的体验进行强化。
三、教学目标
知识目标:
掌握冒泡排序的原理;理解冒泡排序的流程图;编写冒泡排序的主要代码;
能力目标:
学会使用冒泡排序思想设计解决简单排序问题的算法;进一步理解程序设计的基本方法,体会程序设计在现实中的作用;
情感目标:
培养学生分析问题、发现规律的能力,激发学生学习热情;培养良好的程序书写习惯;
教学重点、难点
重点:冒泡排序算法的基本思想,双重循环应用
难点:理解冒泡排序中的趟、次等概念(即对变量使用的理解)
四、教学策略与手段
以循序渐进、层层深入为教学的指导方针,采用讲解法、演示法、讨论合作、分析归纳法引导学生参与思考,有效地突出重点突破难点,逐步深化对冒泡算法、循环思想和执行过程的理解。
五、课时安排
1课时
六、媒体准备
多媒体网络教室、投影机、多媒体教学平台、flash软件
七、教学过程
一、导入:创设情景
师:教师播放Flash动画(大鱼吃小鱼)游戏,并进行游戏操作。
生:迷惑不解,难道今天老师让我们玩游戏?
师:观察水中的气泡往上冒的情景,气泡往上冒的时候有什么特点呢?
生:鱼吐的水泡到了上面渐渐地变小了。
师:冒泡排序和气泡在水中不断往上冒的情况有些类似。气泡大的(大的数据)在下面,气泡小的(小的数据)在上面。那么,这节课我就和大家一起来探讨一下冒泡排序是如何实现的。
【设计意图】通过游戏,活跃课堂气氛,一扫编程课堂死沉沉的尴尬局面,同时也能让学生在游戏展示的过程中发现水泡的规律。
二、新授
我们经常会碰到要排队的情况,比如排座位,做操、排大合唱队伍等。今天我想请五位同学上来表演一下排队。我报了五位学生的学号,让他们上来,并让他们按报到的次序站在黑板上对应的数组单元下。好,现在请你们按身高从矮到高排起来。不一会五位学生就排好了。
师:他们是怎么排的?
生:他们之间去比一下,矮的站前面,高的站后面。
师:对,肯定要比一下才知道,如果前面个子比后面的高那他们俩就需要交换一下位置。那排队其实是一种排序:通过调整位置,把杂乱无章的数据变为有序的数据。那我们就一起来分析一下冒泡排序的原理。
【设计意图】教师在黑板上写上a数组的5个单元,a(0),a(1),a(2),a(3),a(4),请5位同学按上来的顺序站在对应的数组单元下,并将学生的身高写在对应的数组单元里,便于后面进行排序使用。
师:我们知道个子最高的站在最后面,那怎样找