高中信息技术选择性必修1教案:程序的基本结构-顺序、选择与循环_第1页
高中信息技术选择性必修1教案:程序的基本结构-顺序、选择与循环_第2页
高中信息技术选择性必修1教案:程序的基本结构-顺序、选择与循环_第3页
高中信息技术选择性必修1教案:程序的基本结构-顺序、选择与循环_第4页
高中信息技术选择性必修1教案:程序的基本结构-顺序、选择与循环_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高中信息技术选择性必修1教案:程序的基本结构——顺序、选择与循环一、教学设计的整体构想本课选自教科版高中信息技术选择性必修1《数据与数据结构》第二章第三节,是学生在掌握程序设计语言基础语法之后,走向结构化程序设计的关键一课。程序的基本结构——顺序结构、选择结构、循环结构,是一切复杂程序的骨架。任何可计算的算法,都可以用这三种结构组合表达,这是结构化程序设计理论的核心结论,也是本节课要让学生真正"悟到"而不仅是"听到"的道理。作为申报正高级职称背景下打磨的一节示范课,本课的设计立足三条主线:一是以"出租车司机计费""学生体测成绩评定""抛物线轨迹模拟"等真实问题为载体,让三种结构在解决问题的过程中依次登场,避免语法条目的枯燥罗列;二是以"画流程图—写伪代码—上机实现—调试反思"为完整的认知路径,让学生在算法思维与代码实现之间反复穿行;三是渗透计算思维的培养,让学生体会"分解、抽象、模式识别、算法设计"在程序设计中的具体落地。本课安排两课时连排,共90分钟,另配课后分层作业。第一课时聚焦顺序结构与选择结构,第二课时聚焦循环结构及三种结构的综合嵌套。二、教材分析与学情研判教材地位。本节内容承接"数据及其运算""输入输出语句",是学生从"会写一行代码"走向"会设计一个程序"的转折点。后续章节中的枚举算法、递推算法、排序算法、查找算法,无一不以三种基本结构为基石。可以说,这一节学不透,学生在后续的算法学习中会出现"看得懂别人的代码、写不出自己的程序"的典型症状。课程标准依据。《普通高中信息技术课程标准(2017年版2020年修订)》要求学生"掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法",并将计算思维列为学科核心素养之一。本节正是计算思维落地的最小完整单元。学情三特征。其一,学生已经历过数学中的算法初步与必修模块的编程体验,对"程序按行执行"有朴素认识,但对流程控制的内在逻辑缺乏结构化理解,常把"程序很长"误当作"程序很复杂"。其二,学生的分化已经显现:部分有编程基础的学生对语法"一学就会",但存在跳步、不写注释、不画流程图等不良习惯;基础薄弱的学生则在条件表达式的书写、循环变量的理解上容易受挫。其三,高中生对"游戏化""生活化"的任务有天然亲近感,对纯语法讲解有超过六分钟就分神的可能。基于此,教学上采取"低起点、小步子、快反馈、高挑战"的策略:入门任务保证人人能完成,进阶任务分层设置,下保底上不封顶。三、教学目标1.知识与技能。学生能够准确说出顺序、选择、循环三种基本结构的定义、执行流程与适用场景;能够阅读并手工"走查"含三种结构的程序,推断输出结果;能够使用Python语言熟练书写if语句、while语句、for语句及其嵌套形式。2.过程与方法。学生经历"分析问题—抽象建模—绘制流程图—编码实现—测试调优"的完整过程,初步养成结构化的程序设计习惯;学会用流程图作为算法与代码之间的"翻译桥梁"。3.情感态度与价值观。学生在真实问题的解决中体验程序"以小搏大"的力量,理解程序设计中"少即是多"的结构美学,形成严谨、可调试、可复用的工程意识。4.核心素养指向。信息意识层面,能从生活现象中提取可计算问题;计算思维层面,能将复杂问题分解为三种基本结构的组合;数字化学习与创新层面,能借助调试工具定位并修复逻辑错误;信息社会责任层面,初步认识程序公正性(如计费程序的公平规则)的社会意义。四、教学重点、难点与突破策略教学重点:三种基本结构的语义理解与对应的语句书写;流程图与代码的互译。教学难点:其一,条件表达式中关系运算与逻辑运算的组合使用,学生常把"a大于等于60且小于90"写成"60≤a<90"这种数学式而非程序式;其二,循环结构中的循环变量初始化、终止条件、迭代表达式三者配合,学生容易出现死循环或"少跑一次、多跑一次"的边界错误;其三,三种结构的嵌套组合,尤其是循环体内套选择结构时的缩进层次。突破策略:以"人肉计算机"活动突破难点一——让学生分角色扮演变量和判断闸门,现场执行程序;以"循环三问"口诀突破难点二——从哪开始、到哪停止、每次怎么变;以"阶梯暴露法"突破难点三——先见一层嵌套的成品代码,再拆开看,再让学生仿写,最后独立组合。五、教学方法与课前准备教学方法:任务驱动法为主,辅以讲授法、小组协作、同伴互评、上台演示。教学过程中严格执行"教师演示不超过十分钟、学生活动不少于三分之二课时"的时间纪律。环境与资源:机房配备Python3.x环境与IDLE或Thonny编辑器;教师机安装广播教学软件;准备半成品代码文件若干(挖空语句供学生补全);流程图绘制使用在线绘图工具或纸笔均可。分组方式:异质分组,每组4人,设组长、记录员、演示员、质检员各一名,两课时角色轮换。六、教学过程(第一课时:顺序结构与选择结构)环节一:情境导入——这两段程序不一样(6分钟)教师不讲课标、不喊口号,直接在广播屏幕上同时运行两段代码。第一段:price=13distance=8.6fee=price+(distance3)2.4print(fee)第二段代码在教师输入不同里程时,输出结果出现"跳跃"而不是平滑增长——因为它含有一个尚未展示的"神秘判断"。教师抛出问题:第一段程序你从头就能猜到尾,第二段为什么猜不到?学生七嘴八舌,有人猜"里面藏了如果"。教师趁势板书课题:程序不是只有一种"从上往下写"的写法。今天我们把程序的三种基本骨架彻底看透。此处明确学习目标三句话:读得懂流程图、写得对三种结构、调得出自己的错。设计意图:用"能预测"与"不能预测"的对比制造认知冲突,学生自己说出"程序会做选择",比教师告知"接下来学选择结构"效率高得多。环节二:顺序结构——程序的默认姿态(12分钟)教师提出第一个任务链,任务1:输入一个长方形地块的长边a与短边b,求周长与面积。学生独立在编辑器中完成,教师巡视。约3分钟后,随机抽取两份学生代码广播展示,其中一份刻意选取含错误者(如把周长写成a+b而非2(a+b))。全班一起"读程序":逐行念出每一句做的事。教师引出结论:没有任何跳转、没有任何分支,程序从第一句执行到最后一句,这就是顺序结构——它是程序执行的天经地义,也是另外两种结构展开的舞台。教师随即板书流程图三要素之起止框、处理框、输入输出框,学生完成任务1的流程图,与代码并排贴在学案上,体会"图与代码一一对应"。追问升华:纯顺序结构为什么"打不了天下"?学生计算得出:如果输入的边长是负数,程序照样算出负数面积还不报错。教师点题:程序需要"设防",需要判断。这为选择结构埋下钩子。设计意图:顺序结构不单独铺陈语法,而是借一个五分钟能解决的小任务确认"人人会写",再用负数边长的漏洞暴露其局限,逻辑上自然逼出选择结构。环节三:选择结构——程序的十字路口(28分钟)任务2:体测跑分判定。输入某男生1000米跑成绩(秒),输出等级:小于等于272秒为优秀,小于等于328秒为良好,小于等于388秒为及格,其余为不及格。教学分四步走。第一步,画闸。学生在学案上先画分支流程图。教师强调菱形判断框"一进两出"的规则:每个判断只回答一个是非问题,多条件要靠多个菱形串联或并联表达。请两组代表把流程图贴上黑板,全班比对:有人用"成绩<273?"四个判断串联,有人试图用一个菱形写"60≤a<90"式的复合条件。教师不评判优劣,先进入第二步。第二步,写码。教师板书if语句的基本模式:if条件:满足条件时执行elif条件:上一条件不满足且本条件满足时执行else:所有条件都不满足时执行特别强调三点铁律:冒号结尾、体句缩进四个空格、条件自上而下"先到先得"。学生将流程图翻译为代码,教师巡视时重点观察两类学生:不会写elif嵌套关系的新手,以及直接套用数学连写"a<b<c"的"聪明学生"。后者教师不直接纠错,而是让其上机验证,发现Python虽支持链式比较但逻辑易误,引导全班统一采用and连接的标准写法,如60<=scoreandscore<90。第三步,人肉计算机。每组拿出角色卡:一名当"比较器"(读条件并宣布真假),一名当"控制台"(宣布走哪条路),一名当"变量记录仪",一名当"计时员"。教师喊出不同成绩值,小组现场模拟执行。这个游戏化环节解决了一个顽固的认知错误:学生常以为代码里所有判断都会被执行一遍,而扮演后他们切身感到"条件满足就直接落闸,后面的分支根本不走"。第四步,错误门诊。教师展示三个真实学生错误病历:其一,把判断写成ifscore=28(用赋值号代替比较),Python直接报语法错误;其二,缩进不一致导致的逻辑错乱;其三,条件次序颠倒——先判断"小于等于388"再判断"小于等于272",导致所有人都被判为及格。学生扮演"主治医师"开处方修改。第三个病历特别有价值,它让学生体会到条件排列有顺序,区间判断必须从最严到最宽(或反向用else兜底)。任务3(分层提升,学有余力者选做):出租车计费。起步价13元含3公里,超过3公里每公里2.3元,超过15公里部分加收50%空驶费。输入里程输出车费,并要求用流程图先论证再编码。这个任务需要两层条件嵌套,是对本环节的当堂检验。设计意图:选择结构的教学不走"语法—练习"老路,而是"流程图立法—代码施行—扮演体感—病历会诊",四个动作对应理解、应用、内化、迁移四个认知层级。环节四:第一课时小结与过渡(4分钟)学生用一句话向同桌汇报今天的收获,教师随机点三名全班分享。教师板书两种结构的特征图:一条直线与一颗钻石(菱形判断框),并设悬念:班上45人要逐个问成绩录入,难道写45段一样的代码?明天我们让程序自己"转圈"。七、教学过程(第二课时:循环结构与综合应用)环节一:旧错重演导入(5分钟)教师回放上节课的出租车计费程序,提出新需求:出租车公司要批量处理一整车队的500条行程记录,怎么办?学生第一反应是"复制500次",教师把一段复制粘贴10次后仍嫌不够的代码展示出来,问:程序员能忍受这种代码吗?全班哄笑中,循环结构登场。设计意图:让学生先体验"没有循环"的笨拙,再获得循环工具,工具的价值感是真实需求撑起来的。环节二:循环结构——程序的自我重复(30分钟)第一步,从数数开始认识循环三要素。教师现场提问:体育老师喊"每人跑10圈",这句话里藏着哪三个信息?学生逐步答出:从第1圈开始、数到10圈结束、每跑完一圈数字加1。教师板书"循环三问":从哪开始(初始化)、到哪停止(终止条件)、每次怎么变(迭代)。这是本节课最重要的脚手架。任务4:计算1到100的累加和。先全班口算失败(谁也算不快),再请"人肉循环"表演:一名学生扮演计数器牌子上写i,一名扮演存钱罐sum,教师当CPU喊节拍,全班观察两个变量如何随循环增长。表演中故意让"计数器"忘记加1,程序立刻"卡死"——学生直观看到死循环的成因。第二步,while语句。教师展示两种循环模型并对比:i=1s=0whilei<=100:s=s+ii=i+1强调while是"条件驱动":不知道跑几圈、只知道自己什么时候该停下时用它。请学生补全任务:输入若干名学生的成绩,输入1表示结束,统计平均分。这个任务没有固定次数,天然属于while。第三步,for语句。教师指出for是"清单驱动":手头有一张确定的名单(range产生的数列、列表里的元素),挨个处理用它最顺手。学生把1到100求和改写为:s=0foriinrange(1,101):s=s+i教师组织学生辩论:同一件事while能做、for也能做,何时选谁?师生共同提炼选择依据:次数已知且连续,for优先;次数未知、靠条件收尾,while优先。第四步,循环的"逃生门"。教师演示break与continue:查找全班成绩中第一个不及格者即可停(break);统计及格人数时跳过不及格者(continue)。用一个"寻找教室里第一个穿红衣服的同学"的类比,学生几秒就懂。任务5(协作攻关):打印图案——直角三角形星号阵。第一行1颗星,第二行2颗,直到第5行5颗。小组先画流程图,明确这是"循环套循环":外循环管行、内循环管每行打几颗星。教师巡视只问三句话:你的外圈循环变量是谁?内圈的范围跟外圈变量什么关系?跑一遍纸上走查了吗?完成的小组领取拓展题:把直角三角形翻转为金字塔形,空格的数量怎么计算?设计意图:循环部分坚持"先体感、再语法、后迁移",循环三问贯穿始终;星号图案是循环嵌套的最佳练兵场,可视化的输出让学生即刻验证逻辑正确与否。环节三:综合演练——三种结构合体(35分钟)主任务:模拟抛体轨迹分析。这是本课的高潮任务,也是本节示范课的"代表作时刻"。情境:物理课上,小球以初速度v0、抛射角θ飞出,现将运动时间切分为每0.1秒一格,依次计算小球在各时刻的高度y,当高度第一次小于等于0时停止,输出飞行总时长和最高点高度。已知y(t)=v0·sinθ·t−0.5·g·t²,g取9.8。小组协作流程严格五步走:第一步,分解(10分钟)。小组讨论并把问题拆成顺序、选择、循环三块:顺序——输入参数、换算角度、初始化变量;循环——按0.1秒步长推进时间;选择——每格判断"高度是否已落地""当前高度是否刷新最大值"。小组把分解结果写在学案的结构拆解表中。第二步,流程图(8分钟)。各组绘制总流程图,教师巡走时用红笔只圈不评。发现有组把"更新最大高度"判断放在了累加时间之前,教师提示:想想皮球是先飞还是先落地?小组自行调整。第三步,编码实现(10分钟)。各组在半成品代码框架上补全关键行。代码主干如下所示(挖空处在材料文件中提供):importmathv0=float(input("初速度:"))deg=float(input("角度:"))theta=math.radians(deg)t=0.0h_max=0.0whileTrue:t=t+0.1y=v0math.sin(theta)t0.59.8ttify<=0:breakify>h_max:h_max=yprint("飞行时长:",round(t,1))print("最大高度:",round(h_max,2))第四步,测试与调试(5分钟)。每组用三组测试数据验证:45度角的标准情形、接近90度的近直上情形、初速度极小的快速落地情形。教师引导思考边界问题:如果y恰好在t=0.1时就小于0,输出合理吗?引出对步长精细度与误差关系的朴素讨论,为后续选修中的数值计算内容埋下种子。第五步,展示互评(2分钟)。两组上台演示并回答质询:你的循环为什么选while不选for?你的最大高度判断能移到循环外吗?台下小组按评价量规(正确性40%、结构性30%、规范性20%、表达10%)举牌打分。设计意图:综合任务刻意选择一个跨学科情境,学生在物理公式与代码结构之间切换,三种结构各司其职的自然分工远比任何说教更能让学生理解"结构化"的含义。环节四:课堂总结与升华(5分钟)教师播放一张精心设计的板书图:一条直线(顺序)、一颗钻石(选择)、一个圆环(循环),三者下方写一句话——任何一个可以写成程序的算法,都只是这三种图形的排列组合。学生完成"321出门条":写下3个今天弄懂的概念、2个还会混淆的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论