C语言《排序算法》教学设计课题[参考]

上传人:粗**** 文档编号:142829307 上传时间:2020-08-23 格式:PDF 页数:9 大小:261.36KB
返回 下载 相关 举报
C语言《排序算法》教学设计课题[参考]_第1页
第1页 / 共9页
C语言《排序算法》教学设计课题[参考]_第2页
第2页 / 共9页
C语言《排序算法》教学设计课题[参考]_第3页
第3页 / 共9页
C语言《排序算法》教学设计课题[参考]_第4页
第4页 / 共9页
C语言《排序算法》教学设计课题[参考]_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《C语言《排序算法》教学设计课题[参考]》由会员分享,可在线阅读,更多相关《C语言《排序算法》教学设计课题[参考](9页珍藏版)》请在金锄头文库上搜索。

1、实用文案 标准文档 江苏省职业学校专业技能课程 “优秀教学设计”评比 教 案 参评组别信息技术类 参评科目 C语言 教案主题排序算法 填报日期 2014年 05 月 28 日 镇江分院欧阳丽娜 实用文案 标准文档 C语言排序算法教案(2 课时) 一、教材分析 C语言教程是计算机专业的专业必修课,也是计算机专业中一门理论性和逻辑性很强 的课程。由于 C语言要求表达整密且与其他计算机语言相比更加抽象,所以在所有计算机专业 课程中被公认为“最难学的一种计算机语言” 本节内容选自普通高等教育“十一五”国家级规划教材,21 世纪高职高专系列规划教材 中的 C 语言教程。课程的总体目标是通过C 语言的学习

2、,培养学生综合运用知识分析、分 解问题,并用合适的算法语言表达、处理问题的能力,学会一种严密的思维方式和表达方式, 领会程序设计的精髓,从而培养较强逻辑思维、变通思维和创新思维能力。通过团队合作、交 流等方法,使综合素质得到提升。从而达到专业学习的基本要求和人才培养目标。 排序算法是教材中第7 章数组中的内容。因为数组是C语言中重要的数据类型, 通过数组可以使排序问题的表达过程大大简化,所以掌握几种常用又容易理解的排序算法还是 很必要的。本节通过对冒泡排序和选择排序两种算法的讨论、分析和理解,在更加熟悉数组表 达方式的基础上,对算法的进一步了解,有助于培养学生的逻辑思维和变通思维能力。 二、学

3、情分析 教学对象为五年制高职计算机软件专业二年级学生,他们具有一定的计算机操作能力,但 是在程序设计方面是零基础,并且他们的数学理论基础比较薄弱。同时,他们正处于17,18 岁 的年纪,思维活跃、意识超前,具有极强的好奇心与求知欲。但由于学生的抽象思维和自主学 习能力较薄弱,又厌烦枯燥的文字说教, 在教学过程中要尽量使用简单直观的演示和表演方式, 使枯燥乏味的理论知识能够生动起来,从而突破零起点、高台阶的瓶颈。 在完成本节的学习后,学生可以具有一定的结合数组和算法处理数据的能力。 三、教学目标: 1、学会冒泡排序和选择排序的思维方法。 2、能够熟练应用冒泡排序算法进行排序运算,在讨论的基础上学

4、会使用选择排序算法解 决同样的问题。 3、在理解程序设计基本方法的基础上,拓展其在现实中的作用。 4、通过程序设计和表演互动的过程,激发学生在预测的基础上追求结果的的成就感。 实用文案 标准文档 四、教学重、难点 项目内容解决措施 教学重点 冒泡排序的基本原理 通过表演设疑,展示结果,分析程序结构,探 究动作与程序关系,结合动画演示使抽象的原 理变得具体形象以帮助学生掌握学习内容。 教学难点 五、教法、学法 教法设计: 情境导入法、对比教学法、讨论式教学法、分层教学法 学法指导: 合作探究、自主学习、实践操作 六、教学准备 1、教学环境:多媒体网络机房。 2、教学准备:调试机房,制作课件,制作

5、演示动画,程序调试,指导学生演练。 3、学生分组:按照一贯的分组方式,组内预习本节内容。 实用文案 标准文档 七、教学过程 教学 环节 主要教学活动及过程教师活动学生活动设计意图 (一) 情景 导入 5 分钟 排序规则: 6 名学生从左至右相邻两个学生比较手中牌的大 小,如果前一个学生的牌比后一个学生的大,则 两人交换位置,直至不需要再移动,排好所有牌。 排序表演: 将 6 张扑克牌随机发给6 名学生,他们先向台下 的学生展示一下自己手中的牌,然后转过来背对 学生。接到开始信号后,按规则排序。排好后, 再次面向全体学生,此时,学生手中的牌从左至 右已按升序排好。 思考:如何用程序表达排序过程?

6、 本节课任务 :编写程序完成排序过程。 宣 布 表 演 规则。 设疑。 参 与 表 演 的 学 生 快 速比较、 移 动,完成表 演过程。 其 他 学 生 观 察 并 思 考 会 产 生 什 么结果。 激 发 学 生 兴 趣 与 求 知欲,在学 生 疑 问 中 导 入 本 节 教学内容。 (二) 新知 新授 15 分钟 交待: 表演所遵循的排序规则,就是排序算法中 冒泡排序 的过程。 通过讨论,分解冒泡排序过程。 1、如何存储 6 个数; int a6=7,10,6,5,9,8; 创建一个数组用于存放六个操作数。 2、如何实现两个数互换; t=ai; ai=ai+1; ai+1=t; i 代表

7、数组元素位置; t 是两数交换所借助的 第 三变量。 3、如何表达比较的趟数和每趟比较的次数? 在每趟比较中,还会进行N次两数的比较,可 以使用循环嵌套的方法。外循环代表比较趟数, 内循环表示每趟比较的次数。 首先确定外循环次数,通过观察刚才学生表演 过程可知在整个过程中进行了5 趟排序,即外循 环为 5 次。 然后确定内循环次数,仍然通过观察表演过程 可知: 第 1 趟比较,两两比较, 4 次; 与 学 生 讨 论,分析冒 泡 排 序 过 程,将其分 解 为 三 个 主要步骤, 给 出 三 个 步 骤 解 决 方法。 学 生 与 教 师 共 同 讨 论,分析排 序过程。 通 过 观 察 得出

8、结果。 熟 悉 冒 泡 排序过程。 同 时 锻 炼 学 生 归 纳 总结能力。 实用文案 标准文档 第 2 趟比较,两两比较, 3 次; 第 3 趟比较,两两比较, 2 次; 第 4 趟比较,两两比较, 1 次; 第 5 趟比较,两两比较, 0 次。 因此,内循环次数随外循环次数增多而减少,整 理成代码为: for(j=0;j5;j+) for(i=0;i5-j;i+) 4. 整理完整代码 #include main() int a6=7,10,6,5,9,8; int i,j,t; for(j=0;j5;j+) for(i=0;iai+1) t=ai;ai=ai+1;ai+1=t; prin

9、tf( sorted numbers:n); for(i=0;i6;i+) printf(%d ,ai); 给 出 完 整 程序代码。 学 生 调 试 代 码 并 运 行。 让 学 生 体 会 代 码 运 行 的 过 程 及结果。 。 (三) 认 知 提 升 15 分 钟 1. 设置疑问递进思考 (1)位置 a. 每次比较的两数位置上有什么关系? (2)变化 b. 每趟排序后数列发生什么变化? (3)关系 c. 内外循环的次数有什么关系? 2. 分层教学动画助学 观察动画演示冒泡排序对数列进行升序排序 的过程 给 出 思 考 问题,并利 用 电 子 教 室 将 演 示 动 画 发 送 给 每

10、个 学 生。 学 生 在 观 察 动 画 演 示 同 时 讨 论 老 师 给 出 的 思 考 问题。 由 结 果 的 表 象 进 一 步 向 原 理 探索。 实用文案 标准文档 3. 要点总结拎清特点 (1)6 个数进行 5 趟加工, n 个数要进行 n-1 趟 加工 (2)每一趟比较次数越来越少 (3)n 个数第 j 趟加工时,比较次数是 (n-1)-1 4. 填流程图理清思路 5. 探究实质深入挖掘 (1)内循环次数不断变少的原因? 教 师 对 原 理 特 点 进 行总结。 给 出 冒 泡 排 序 流 程 图,让学生 补充完整。 提 出 深 入 问题。在此 学 生 对 比 自 己 总 结

11、的答案。 学 生 组 内 合作讨论, 完 成 流 程 图填空。 动 画 演 示 使 抽 象 过 程 变 得 生 动形象, 有 助 于 学 生 理解。 帮 助 学 生 拎 清 程 序 结构,为整 合 代 码 做 准备。 实用文案 标准文档 (2)为什么内循环结束条件变化,开始条件不 变? (3)你能为冒泡法起个新名字吗?并说明起这个 名字的理由。 6. 程序动作预测结果 截取程序片段,学生演示该片段所对应动 作,预测这段代码会产生怎样效果。 冒泡排序中是相邻两数比较,如果比较的不是相 邻两数,排序过程会怎样呢? 过程中, 巡 查 学 生 讨 论情况, 捕 捉 学 生 中 存 在 的 共 性 问

12、题 及 时解决。 选 择 代 码 片段。 给 出 新 规 则,在学生 指 导 下 完 成 排 序 过 程。 组 内 讨 论 教 师 提 出 的问题 学 生 演 示 动作。 讨论, 指导 教 师 完 成 排序过程。 深 度 探 究 原理细节。 用 程 序 指 导动作。 拓 展 学 生 发 散 思 维 的能力。 (四) 发 散 思 维 15 分 钟 同样 6 个数,同样按升序排列,不同排序规则, 中间会发生什么样的变化? 1、新排序规则(选择排序) : 比较完所有的数,将最小的数与第一个数调 换位置,直到所有数排完。 学生按照新规则指导教师进行操作,完成6 个数的排序过程 2、用动画分析原理过程

13、动画演示选择排序对这6 个数整个排序过程。 3、讨论分析 进行几趟排序,每趟排序中的比较次数 5趟排序完成整个过程,每趟比较次数递减。 每趟排序后数列有什么变化 每趟排序后都有一个数的位置确定下来。 每次比较的两数位置的关系 两数位置没有固定关系。 4、总结过程 从 n 个数中选出最小数,然后将最小数与第一 个数交换位置; 除第一个数外,其余n-1 个数再按步骤 1 的方 给出思考 问题,并 利用电子 教室将演 示动画发 送给每个 学生。 总结选择 排序执行 过程。 与学生讨 学生在观 察动画演 示同时讨 论老师给 出的思考 问题。 学生与教 动画演示 使抽象过 程变得生 动形象, 有助于学

14、生理解。 培养学生 实用文案 标准文档 法选出次小的数,与第2 个数交换位置; 重复步骤 1(n-1)遍,最后形成递增数列 5、编写关键语句 1如何存储 6 个同数; 参考答案: int a6=7,10,6,5,9,8; 2如何确定最小值并与“第一个”数交换; 参考答案: if (aminaj) min=j;(确定最小 值位置 ) temp=ai; ai=amin; amin=temp; 3如何表达比较的趟数和每趟比较的次数? 参考答案: for (i=0;i=4;i+) for (j=i+1;j=5;j+) 论分析, 找出过程 中的关键 步骤。让 学生合作 编写关键 步骤的语 句。 师讨论分

15、 析关键步 骤,并合 作完成关 键步骤的 语句。 活 学 活 用,变通 思维能力 (五) 对 比 讨 论 10 分 钟 对比讨论: 让学生分别观察用两种排序方法的排序过 程,在此过程中进行组内讨论两种方法的区别。 然后完成表格。 将表格发 给学生, 组织学生 讨论完成 表格的填 写。 学生讨论 并填写表 格。 整理算法 思路,比 较算法区 别。提升 学生理论 高度。 (六) 拓 展 升 华 20 分 钟 习题一、 有 10 个地区的面积,要求对它们按由大到小 降序排列。 1、 在 Excel 中写出外循环次数,及内循环交换 次数。并得出结论,排序后,两两之间的交换共 进行几次。 2、利用冒泡排

16、序对上述数列进行降序排列。 给出基础 习题和拓 展创新习 题。 完成习题 一,对习 题二进行 研 究 讨 论,给出 具体解决 方案。 基 础 练 习。 实用文案 标准文档 习题二、 有 10 个重量不等的苹果和一台电子秤,每个 苹果重量未知,现在需要按重量从小到大排列这 10 个苹果。说出你的方法, 并尝试完成这个过程。 为学生提 供创新思 维平台。 (六) 评 价 总 结 15 分 钟 针对学生上传的习题一答案,采取匿名的方 式,将错误的答案拿出来共同探讨。对于习题二 小组间交流互换解决方案,取长补短。最后完成 小组合作学习材料,给出评价成绩。 学生总结本节课内容,教师补充,并对各组 表现给予评价。 作业布置 小组合作,寻找新的排序方式 组 织 讨 论,把控 全局。 教师布置 作业 探讨错误 答案,并 交流习题 二解决方 案 学生课

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号