《for语句》教案
重庆市渝北职业教育中心 傅诗灵
一、教学内容:《C语言程序设计基础教程》第四章第三节“for”语句。
二、教学时间:1课时
三、教学目标:
知识目标:掌握for语句的形式、执行过程。理解利用for语句解决问题的思路。
能力目标:学习体会根据实际要求,选用合理的语句解决问题。
情感目标:使学生在学习实验过程中学会主动的思考问题,同学之间互相合作的学习方法,并让学生在学习过程中体验成功的愉悦,激发学习的兴趣。
四、教学重点:for语句的流程图和执行过程。
五、教学难点:应用for语句编写程序以解决实际问题。
六、教学准备:自制课件、流程图模板。
七、教学方法:直观教学法、任务驱动法、主动学习法。
八、教学过程:
1.质疑引导 温故知新
师:前两节课中我们一起学习了实现循环结构的两种语句,分别是?(用带有启发、引导性的语气)
生:while和do while语句(很有自信地齐声回答)师:肯定学生的回答,并给予鼓励。
利用课件演示一个用while语句写的程序段:
请一名学生解释程序中各语句的功能和程序段的功能(从1加到10求和)并同步用课件给出答案。
师:现在请大家总结我们要实现一个循环所不能缺少的三个重要部分
师:请大家仔细观察我们的这个程序段,找出这三个密不可分的三个部分分别位于程序的什么地方?(请一名中等生回答,以此提高中等生的学习兴趣)
生:控制变量的初值在循环体外,更新在循环体内。
师:用赞赏的语气肯定学生的回答。
这三个密不可分、紧密相连的三个部分分开了,那能不能用一种语句把它们连在一起呢?是什么语句呢?请同学们看书,找出老师所提问题的答案。
设计原因:因为学生对以上知识都已经熟练掌握,请学生和我一起来复习,目的在于将学生的思维向我要求的方向引导,中等生能够准确地回答出问题并得到老师的表扬,很大程度上激励了学生的积极性,我相信本节课他一定是十分认真地跟着老师的思维思考问题。
衔接语言:既然我们从书中知道“for”语句可以解决老师提出的问题,那它是如何来解决的呢?请同学们跟着我一起来学习。
2.紧扣内容 循序渐进
for语句的一般形式:(课件演示,对表达式之间的分号用颜色加以区分强调)
for(表达式1;表达式2;表达式3)
语句
要求学生将此记住。
利用课件强调重点“表达式之间的分号”提醒学生要注意。for语句的流程图:(在课件上表现)
结合一般形式对流程图作介绍,并分析for语句的执行过程。
利用自做的流程图模板一部分一部分地给学生讲解它的运行过程。
设计原因:学生在课件上可以看出for语句的流程图,但是为了能更形象地说明它,我采用了模板,因为直观的模板能够让学生更深刻地接收它。以此来突出本节课的重点之一。
执行过程我将此流程图相结合来讲解,并且我的课件在我讲到一个表达式运算时它会从形式中移动到我下面这个图的方框中,利用这样的动画我相信绝大部分学生都能理解这样的执行过程。为了让学生能更加地理解它的执行过程,我将继续作如下讲述:
3.for语句的执行过程
①计算表达式1
②计算表达式2,如果结果为真转③;结果为假转⑤。
③执行for下面的语句,执行完后转④。
④计算表达式3,结束本次循环,转回②开始下一次循环。
⑤结束循环,执行for语句后面的第一条语句。
师:同学们,现在大家清楚了for语句的执行过程了吧!那我们前面说了for语句是将实现循环的三个部分紧密地连在一起,那在for语句中这三个部分是谁呢?(请学生仔细观察流程图,结合执行过程,分组讨论)
师:大家汇报讨论结果:(学生说一条,课件上显示一条)
生:表达式1循环控制变量的初值
表达式2循环条件
表达式3循环控制变量的更新
师:大家的结论是正确的,那我们一起动手将上面的while语句改成for 语句行吗?(课件上给出while语句,请一名学生在黑板上改写,教师巡回检查学生练习情况)
评析学生在黑板上的答案,并用课件一步一步地给出相应的答案。
运用上面对照改写的方法来突出重难点能够让学生更好地接收。
衔接语言:同学们我们现在已经很好的掌握了“for”语句的基础知识,但是我们要如何地用它来编写程序呢?请同学们仔细地看老师给大家的这个题目:
师:大家看这个习题:从键盘上输入5个整数,求其正数的个数以及和。
分析:①所用变量:循环控制变量i,整数x,装正数的个数 m,装和的变量s。
②所用语句:for语句
③循环控制变量的初值:i=1,循环条件:i<=5;
源程序:(切换到TurboC环境,与讲解同步输入源程序,并进行调试)
运行时输入:-5 8 12 -7 17
运行结果:正数有3个,其和为37
师:大家也看到了这个源程序在运行时的情况,有同学能帮我给学生们讲解它是如何运行的吗?
生:分析程序执行过程:(让多名同学依次分析,并在课件上表现,以此调动大家积极动脑思考,巩固知识,活跃课堂氛围)
设计原因:在学生掌握了for语句的执行过程之后,要想让学生能够将for语句运用到程序设计中,还必须要一个程序来让学生熟悉,我采用的习题在难度上并不大,同学们在数学中就经常能够用到,而且这个习题还给我下面将让学生自己练习的题作了一定的铺垫。我所用的方法也能让大部分同学参与到我的教学互动中,调动全班同学思考学习的积极性。以此来实现我所设定的能力和情感目标。
3.操作演练 回授效果
从键盘上输入一个正整数x,同时求出1到x的累加和以及x!(x的阶乘)
师:提示分析所用变量、所用语句。(目的在于引导学生的思维)
生:根据教师的提示,结合自己的理解,写出源程序。
师:切换到TurboC,将学生写的具有代表性的几个源程序进行调试,并找出其中不足之处,进行指导。
利用课件给出老师的源程序,让学生对照,给学生一个参考。
运行结果:
please input data to x:6(回车)
6的累加和是21
6的阶乘是720
设计原因:利用我提示,学生写程序、我帮助调试的方法来促进学习,目的在于让学生脱离被动学习的常规,培养学生主动学习的习惯,并且利用难度有所增加的题目,使本节课知识在锻炼学生能力上能一步一步地提高。两个习题的讲解,对于突破教学难点也是一种好的方法。
4.归纳小结 巩固知识
for语句的一般形式
for(表达式1;表达式2;表达式3)
语句
for语句的流程图(课件表现)
for语句的执行过程(流程图上表现)
采用方法:学生总结,教师强调。
5.作业布置 扩展思维
求1!+2!+3!+4!+5!
设计目的:此题所采用方法与课堂练习所用习题是一样的,只是在难度上有所增加。
利用它来作为习题既可以巩固课堂所学知识,又达到了扩展学生思维的目的。
九、版书设计:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。