粤教版高中信息技术选修1“程序的选择结构”教学设计_第1页
粤教版高中信息技术选修1“程序的选择结构”教学设计_第2页
粤教版高中信息技术选修1“程序的选择结构”教学设计_第3页
粤教版高中信息技术选修1“程序的选择结构”教学设计_第4页
粤教版高中信息技术选修1“程序的选择结构”教学设计_第5页
已阅读5页,还剩7页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

粤教版高中信息技术选修1“程序的选择结构”教学设计本课面向高中信息技术选修1学生,对应粤教版教材2.3“程序的选择结构”。学生已经经历顺序结构编程,能够使用输入、处理、输出完成简单计算,也接触过变量、赋值、算术表达式与基本数据类型。选择结构是从“按步就班”走向“因条件而异”的第一道门槛,既承接算法描述中的判断框,也为循环结构、枚举与数据处理奠定逻辑基础。本课不以语法背诵为终点,而以“让程序作出可靠判断”为素养锚点:学生应能把生活规则改写成条件表达式,能用缩进与分支组织代码,能用边界数据检验判断,能解释程序为什么在某个输入下走上某一条路径。课题的核心不是if三个字,而是“条件成立时做什么,不成立时做什么,多个条件交叉时如何避免误判”。教学中把选择结构还原为三类问题:单点抉择,如是否及格;双轨选择,如闰年与非闰年;多路分发,如等级评定、票价分档、能耗预警。三类问题共用抽象模型:读取状态,计算关系,判断真假,执行分支,留下证据。所谓证据,是输出结果之外的测试记录与推理说明,它让“程序会选”变成“学生知道为何这样选”。教学目标按可观测行为设定。知识层面,学生能说出关系运算符==、!=、>、>=、<、<=与逻辑运算符and、or、not的含义,能区分赋值号=与相等判断==,能解释布尔值True、False在条件中的位置。技能层面,学生能独立书写if、ifelse、ifelifelse结构,能保持Python缩进一致,能为程序设计至少四个测试点,覆盖正常值、临界值、非法值与极端值。思维层面,学生能用自然语言、流程图、代码三种表征互相转译,能发现“条件重叠”“遗漏分支”“顺序颠倒导致遮蔽”的常见缺陷。价值层面,学生在票价、体测、网络使用、校园门禁等情境中讨论规则透明与算法公平,理解选择结构会把人的规则固化进机器,写判断就是写责任。教学重点确定为条件表达式的构造与分支结构的选择。难点有两处:一是比较运算与逻辑运算组合后的真假判断,尤其成绩区间写成90<=score<=100虽可读,却要让学生理解其与score>=90andscore<=100的等价关系;二是多分支顺序对结果的影响,例如先判断score>=60再判断score>=90,会使高分永远先落入及格分支,等级被遮蔽。突破策略是“先画决策边界,再写代码;先手工追踪,再上机验证;先制造故障,再归纳规则”。四条主线并行:规则要无歧义,条件要不重不漏,分支要可追踪,测试要有证据。课前准备强调轻量而确定。机房安装同一版本Python环境,关闭无关弹窗,准备离线示例包,避免网络差异干扰。教师准备三组素材:校园体测等级表、社区停车计费规则、外卖骑手接单提示语。每组素材都保留一处不合理规则,等待学生质疑。学习单给出空白流程图、条件表达式卡片、测试用例表与风险提醒。学生带一张便签,写下“我认为程序最容易误判的地方”。这张便签在课末再次打开,用于对照认知变化。一、情境启动:让程序先犯一次值得讨论的错上课最初五分钟,不急着讲语法。屏幕呈现一段短程序:score=float(input("请输入成绩:")),随后只有ifscore>60:print("及格"),以及print("结束")。教师输入59、60、61、101、3五个数,学生观察输出。多数学生立刻指出:60应该及格,101异常却被当作及格,3也安静落向“结束”,没有提示。这里的关键不是让他们发现bug,而是让“条件写不好,程序不会提醒你”这一事实变得刺眼。程序没有常识,只有表达式;表达式越含糊,机器越顺从地错。学生两人一组,用一句话复述“成绩判断”的规则。常见表述有三类:六十分以上及格;不低于六十及格;大于等于六十且不超过一百才是有效成绩。教师把三句话并排,追问哪一句可直接交给机器。学生会发现“以上”“不低于”在自然语言里常有弹性,而程序需要明确的边界。于是板书不列定义,只列一个问题串:输入是否合法?合法后落在哪个区间?每个区间是否互斥?所有区间是否穷尽?无效输入由谁负责?这五个问题贯穿全课,称为选择结构五问。随后给出最小修正:if60<=score<=100:print("及格");elif0<=score<60:print("不及格");else:print("成绩输入异常")。这段代码故意先不解释elif,让学生读输出猜含义。教师只强调两点:冒号打开一个语句块,缩进表示归属;条件按书写顺序被询问,命中即走,不再回头。学生用抽签方式报输入,全班口头预测输出,再运行核对。预测错的瞬间被保留下来,因为它是分支顺序最好的教材。二、概念建构:从判断框到布尔值正式讲解从流程图开始,而不是从保留字开始。黑板画出起止框、输入框、菱形判断框、两个矩形处理框与汇合箭头。学生把“成绩是否达到六十”放入菱形,引出条件表达式的结果只能是真或假。这里明确布尔表达式的身份:它不是一句话,而是一个会在运行时变成True或False的式子。关系运算符负责比较,逻辑运算符负责组合,括号负责改变优先级。比较对象必须可比,字符串"90"与整数90不能直接混用;input得到的是文本,需要转换后才可比较。对易错点做显微处理。赋值score=60把值装入变量,判断score==60才是在问相不相等;少写一个等号,条件会先变成赋值,再在部分语言习惯中被误读。Python中ifscore=60直接报语法错误,这反而成为好事:错误被提前拦截。教师顺势展示ifscore:这类写法为何危险,非零数字、非空字符串会被当作真,初学者把“有值”误当“满足条件”,逻辑由此漂移。结论是显式优于隐式:判断成绩就写score>=60,判断非空就写name!="",不把语义交给巧合。逻辑组合用校园闸机例子展开。进校需要“佩戴校卡and体温正常”,请假外出需要“班主任批准or家长确认”,异常报警需要“not在名单内”。学生把三张规则卡贴到黑板,用and、or、not连接,随后被追问:如果“校卡”失败但“体温”正常,能否进入?如果“班主任批准”为真,“家长确认”未读,or是否还关心后半句?这里点到短路求值,不作术语轰炸:and左侧为假时,右侧不必再看;or左侧为真时,结果已经确定。短路不是技巧花絮,而是提醒我们合理安排代价高、风险大的判断顺序。三、语法成形:if、ifelse、ifelifelse各就其位单分支结构用于“满足才做事”。示例以手机电量低于20提示省电:battery=int(input("电量:"));ifbattery<20:print("建议开启省电模式")。学生注意到条件不满足时程序什么都不说,这不是错误,而是设计选择。接着引出ifelse,两条路径必须互斥且汇合:age>=18输出“可注册成人账号”,否则输出“进入青少年模式”。教师强调else没有条件,它承接前面所有未被捕获的情况;给else再写表达式,等于把兜底改成单挑,语义立刻变窄。多分支结构是本课重心。等级评定任务给出规则:90及以上为A,80至89为B,70至79为C,60至69为D,0至59为E,其余视为无效。学生先不编码,在坐标轴上标出五段区间与两端异常。随后把区间译成ifscore>=90、elifscore>=80、elifscore>=70、elifscore>=60、elif0<=score<60、else。课堂故意争论:第三句为什么不写elif70<=score<=79?因为前面已经排除了80及以上,落到此处自然小于80;若仍写完整区间,逻辑不错,却暴露对顺序的不信任。教师并不强制唯一答案,而是要求能说明“我依赖顺序”或“我显式封闭区间”,两者皆可运行,维护成本不同。遮蔽故障在此制造。把分支改为ifscore>=60:print("D及以上"),elifscore>=80:print("B及以上"),学生预测95的输出。多数人口头上知道高分优秀,程序却先命中60。运行结果让“顺序即策略”落地。修复方法有两条:从高到低依次判断,或为每个分支写全边界。全班比较后归纳:链式elif适合单边阈值从高到低排列;显式区间适合规则经常调整、审核人员未必理解代码的场景。编程风格不是审美偏好,而是未来谁读、谁会改、改错代价多大。四、合作探究:把一张计费表做成可靠程序探究任务选用社区停车计费,规则如下:首小时内8元;超过首小时后每小时3元,不足一小时按一小时计;当日封顶30元;新能源车减免2元;军警救护等应急车辆免费。任务被切成四层,避免一次性吞咽。第一层只判应急车辆,输出0元;第二层处理首小时内;第三层加入超时与向上取整;第四层叠加封顶与新能源减免。每层都要求先写条件,再补计算,最后统一输出。学生四人一组领取角色:规则翻译员负责把自然语言改成表达式;边界猎人专找59分钟、60分钟、61分钟、24小时等点;代码驾驶员负责敲击与运行;质询员负责追问“如果输入负数怎么办”“新能源且应急是否重复减免”。角色不是标签,反而要求中途轮换,确保人人碰条件。教师巡堂只看三样东西:流程图是否先于代码,测试表是否包含边界,变量名是否能被外人读懂。发现直接复制模板的小组,不批评,抽走模板,给一张空白判断矩阵,让他们重新把规则摆平。实现中出现两类典型方案。一类层层嵌套:先ifemergency,里面else再算时长,再内嵌ifnew_energy。优点是与责任链接近,缺点是缩进加深,快车道的学生容易在括号与缩进中迷路。另一类前置早退:ifemergency:fee=0,elifminutes<=60:fee=8,else:base再算ceil,最后封顶与减免。全班比较后倾向第二种,因为它把“先处理例外,再处理常规”的原则显性化。这里引入守卫子句的思想但不立术语:把最特殊、最优先的规则放在前面,主路径保持清爽。数学表达全部写成所见形式。向上取整表述为“小时数=(总分钟数+59)//60”,学生能看到59来自不足一小时进位;计费写作“费用=8+(小时数1)×3”,再写“费用=min(费用,30)”,新能源减免写作“费用=max(费用2,0)”。不出现抽象符号堆砌,所有式子都与操作流程相邻。学生由此理解:选择结构不只选路径,也守护公式,让封顶、减免、免费不被顺序吞掉。五、上机验证:让测试用例替学生发言验证阶段强调“先断言,后运行”。每组在代码旁建立测试表,列包含输入、预期输出、实际输出、命中的分支、发现的问题。最少提交八组数据:应急车辆,新能源首小时内,新能源超过两小时,普通车59分钟,普通车60分钟,普通车61分钟,普通车十小时封顶,输入5分钟。教师要求实际输出为空时不得猜,必须运行;预期与运行不一致时,先改预期还是改程序,要说出依据。很多学习发生在这一瞬间:预期错了,是规则读漏;程序错了,是条件写偏;两者都错,是任务理解还没成形。课堂用一次静默调试代替教师集中纠错。屏幕展示四段带病代码,分别对应边界遗漏、缩进错位、字符串未转数值、elif与else混用。学生在小白板只写定位,不写长篇分析:第几行,哪个条件,哪个输入让它露馅。随后抽签修复。修复标准不是“能跑”,而是“能解释”。能解释意味着可以说出条件覆盖了哪些输入,遗漏了哪些输入,改变顺序会不会引入新误判。评价从结果正确扩展到推理完整,选择结构的教学价值才不被一次运气的正确输出掩盖。六、易错谱系:把学生自己的坑变成课程资源本课积累的典型错误被整理成六类,全部来自课堂匿名样本。第一类,边界归属含糊,把60分同时放进及格与不及格,源于自然语言“以上”“以下”未转成数学区间。第二类,比较对象错位,拿字符串与数字比较,得到不可预期结果或直接报错。第三类,逻辑组合误读,把“不是A就是B”写成notAandB,实际得到“既非A且为B”。第四类,分支顺序遮蔽,高阈值被低阈值抢先捕获。第五类,缩进层级漂移,print看上去在分支内,运行时已落到分支外。第六类,else上瘾,所有情况都补else,恰好掩盖非法输入。纠偏不靠口诀,而靠回译。学生拿到代码后必须完成三步回译:把条件翻回自然语言,把自然语言标到数轴,把数轴边界转成测试点。若三者不能互相印证,代码即使通过示例也不合格。教师演示一次完整回译:elifscore>=80读作“此前未被90捕获,且达到80”,放到数轴是80到89的左闭右开,测试点是79、80、89、90。学生起初嫌慢,当看到90输入在错误顺序里落进D档时,多数组主动补做回译。可靠性不是老师强调出来的,是误判教育出来的。七、拓展迁移:从等级评判到规则公平选择结构天然连接社会议题。课堂后半段引入两个短情境。其一,平台根据历史活跃度向学生推送竞赛信息,条件写着“近三十天登录大于二十次”。学生讨论这条规则会奖励谁、错过谁:设备充足者更容易被看见,住校一周回家一次者可能被静默排除。其二,图书馆预约系统把违约三次者下周权限降为零,学生问:系统死机导致无法取消是否计入违约?若条件不区分原因,程序会把公平外包给粗糙阈值。讨论不停留在感叹,要求改写成更稳的条件:增加分母是否可解释,设计申诉入口,为异常状态单独分支。这部分的教学分寸很关键。技术课不把伦理讲成口号,也不把算法神秘化。教师只坚持一个立场:每个if都包含授权,每个else都可能制造沉默。写选择结构时多问一句“没有被任何分支接住的人是谁”,比多背一个函数更接近信息素养。学生最终要会把这句话落到工程动作:保留日志,显式处理非法输入,给人工复核留口,把临时规则标注来源,避免把一次性安排写死进长期系统。八、课堂小结:一张能在脑中运行的判断图小结不由教师报幕,而由学生完成三句话。第一句,选择结构让程序依据条件的真假走向不同分支。第二句,条件要来自清晰规则,边界要互斥且穷尽,顺序要接受审查。第三句,正确输出只是入场券,覆盖边界与解释路径才算掌握。三句话被投屏保留,学生用开课时那张便签对照补充,写上“现在我认为最容易误判的是……”。差异被公开朗读两则,不作评判,让全班听见认知移动的声音。板书收敛为四列。左列是对象:输入合法吗。中左列是关系:比较谁与谁,是否同类型。中右列是结构:单分支、双分支、多分支、嵌套或提前返回,为什么这样选。右列是证据:边界点、异常点、期望与实际。四列之间用箭头连接,形成一张可在脑中运行的判断图。下课后这张图不应消失,而要迁移到循环中的哨兵、函数参数检查、数据清洗中的缺失标记。九、作业设计:分层而可选,统一要求证据基础作业要求改写教材示例,完成成绩等级程序,提交代码与八个测试点,至少包含1、0、59、60、89、90、100、101。提高作业要求实现体测BMI提示,输入身高米与体重千克,按范围给出偏低、正常、超重、肥胖,必须显式拒绝身高为0或体重为负。挑战作业要求设计“校园用电异常提醒”:读取近七天用电量,若今日高于前七天均值的两倍且超出安全阈值,输出强提醒;若只满足其一,输出观察提示;若数据不足七天,输出数据不足。挑战作业考察and组合、数据有效性、分支层级与信息分级,不允许用一个笼统else吞下所有不确定。作业评价采用二维标准。横向是正确性,纵向是说明力。说明力看三处:README是否用三句话说明规则来源;测试表是否覆盖边界;代码中关键条件是否有短注释解释为什么在此位置。只交能跑的程序,最高不超过良好;程序有瑕疵但故障定位准确、修复方案清楚,可评优秀。这样的权重向学生释放信

温馨提示

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

评论

0/150

提交评论