
FOR循环语句教学设计正式设计.doc
6页FOR循环语句(计数循环)教学教案设计攀枝花市第三高级中学 廖裕一、教材分析循环结构是程序设计的三种基本结构之一,是程序设计的基础;它的主要应用方向是让计算机重复做大量相同或相似的事情这节课是循环语句的第一部分内容,教材只是通过一个应用题引出了循环结构,给出了它的简单语法格式,应用FOR循环结构实现了程序和编写,并没有给出其语句的具体执行过程我认为这样会导致一些学生进行简单模仿,而不是真正的掌握和理解学生只有熟练掌握了FOR循环语句的语句格式,理解循环执行过程,才能在实际应用中游刃有余因此本部分内容分2节课才能够完成,本节课主要讲FOR循环语句的语句格式及其执行过程,下一节课再讲实际应用二、学生分析我们教学对象为高一的学生,对程序的接触不太多,前面的几节只讲了顺序结构和条件语句结构,仅仅是初步了解了流程图的画法,但没有通过实际的编程来上机实践;另外高一学生的会考要求是能够读懂程序而非编制程序(竞赛的除外),所以本节上课一定要从简单的实例着手,让学生搞清楚什么情况下要去使用循环结构,怎么样来使用它三、教学目标及确立依据根据本节课教学内容以及学生的特点,结合学生现有知识水平,确定本节课教学目标如下:1、知识目标: ①什么情况下要去使用循环结构。
②掌握FOR循环语句的基本语法格式③理解并掌握FOR循环语句的执行过程④能根据实际问题确定程序中的循环变量、循环条件和循环体⑤能用FOR循环结构编写简单的程序2、能力目标:培养学生思考问题、分析问题和解决问题的能力3、情感目标:使学生积极参与,发挥他们的主动性,激发他们的求知欲四、教学重点、难点及确立依据学生只有掌握了FOR循环语句的语句格式,理解了其执行过程,才能在实际应用中得心应手教学重点:1、掌握FOR循环语句的基本语法格式2、理解FOR循环语句具体的执行过程教学难点:根据实际问题,怎么样来确定程序中的循环变量、循环条件和循环体及其它具体的执行过程,在突破重难点中我采用了说明法和流程图来进行讲述教材处理:教材上只有FOR循环语句的基本语法结构和应用,没有讲FOR循环语句语法的相关说明和执行过程;若直接按教材上的来讲,学生不容易接受,很容易造成学生的简单模仿,而不是真正的掌握我在讲课的过程中是先例子,再通过例子给出FOR循环语句的语法结构,改变了以前的先讲语法再讲例子的习惯,这样学生更容易理解一些根据实际,我先用一节课的时间讲FOR循环语句的语句格式,执行过程,在下一节课的时候再讲其实际的应用。
五、教学环境:多媒体计算机室(尝试理论课在计算机室上课)六、教学过程:1、复习引入:我们在前面讲过了怎么样用QBASIC语言来编制顺序结构和分支结构语句,下面请大家来看如下的两个例子同学们,请看屏幕上的实例:实例:我想用QBASIC语言编程打印出3个“OK!”放到一列上,想想在前面的学习中是如何来编写这个程序的(顺序结构)?请一位同学口述,完毕后再演示代码:CLSPRINT “OK!”PRINT “OK!”PRINT “OK!”END提出问题:如果我想用QBASIC语言编程打印出1000个“OK!”放到一列上,怎么办?请同学们思考:有没有一种更好的方法来解决上面的这类问题呢?教师提示:首先观察例子,它的每一行代码是怎么的?教师进一步引导:例子实际上就是让计算机多次做同一件相同的事情;只要我们给定一个循环次数,让计算机重复的来做这其中一条代码不就是就可以了吗? 总结和进入今天要讲授的内容:凡是让计算机要做大量相同[或者是相似,下一节课进行讲述]的事情时,就可以使用到循环语句结构循环结构的作用:在一定条件重复执行一条或多条程序代码QBASIC语言中,循环语句一般分为计数循环和条件循环,今天我们来学习其中的一种,即FOR循环语句。
2、用FOR循环语句给出[实例一用QBASIC语言编程打印出3个“OK!”放到一列上]程序的源代码,并由教师说出其功能以及各部分的名称3、提出问题:是否可以实现用QBASIC语言编程打印出1000个“OK!”放到一列上?根据学生的回答将程序稍做修改,解决以上问题,让学生对循环结构的功能有感性的认识,引发学习兴趣4、进一步提出问题:根据刚才的学习,能不能总结出FOR循环语句的语句语法格式,师生共同总结出FOR循环语句的语句格式:FOR 循环变量=初值 TO 终值 STEP 步长(增量) 循环体NEXT 循环变量5、对上面循环结构语法简单的一些说明:①一般的情况下FOR和NEXT必须要成对的出现在程序中②循环变量:由自己定义,但是前后必须保持一致③初值、终值、步长:可以为整数、小数、正数、负数,也可以为变量、数值表达式;只有当步长的值为1时,可以省略“STEP 1”④循环体:实际上就是要执行循环语句相同或者相似部分的代码,可以为一条语句,也可以为多条语句6.上面例子中循环语句的执行过程(结合流程图进行讲述,教学的重点部分)(1)循环语句的执行过程:①计算机在运行时遇上了FOR语句,它就会找相应的NEXT进行对应,构成一个循环语句。
②把“循环变量=初值”,即是:X=1③比较:X是否在[初值,终值]之间,即:X∈[1,3](?)之间,如果是真就进行第④步,否则就进入⑦步④X是在[初值,终值]之间:执行循环体语句⑤运行NEXT语句:就是把当前就是X的值加上增量再赋予给X,即:X=X+1⑥返回到第③步现进行比较,这样就构成了循环⑦退出循环语句,执行NEXT后面的语句2)循环语句的执行过程流程图示:7、对程序进行一些变化,让学生在变化当中来灵活掌握循环语句的其它用法:学生自主探究学习内容部分(学生上机实践探究部分,教学难点部分)主要设计思路:学生自主探究学习内容的各种情况的变化,它的主要目的是为了探索FOR循环语句什么情况下可以循环,循环语句退出循环的条件及其“初值、终值和步长”它们之间的关系虽然例子多,但由教师把程序下发,学生进行很小的修改就可以完成主要内容见附件的相关内容让学生进行总结循环语句的各种运行情况,并由老师进行概括性的总结和归纳;学生在练习过程中要多多注意他们容易出错的地方并加以纠正8、怎么样计算循环语句的循环次数,我们来看如下的程序可以打印出多少个“OK”呢? CLSFOR X=1.25 TO 99.25 STEP 0.01 PRINT “OK!”NEXT X引出如何计算循环语句次数的公式:次数=INT((初值-终值)/步长)+1注意:当次数小于或者是等于0时,本循环语句就不可能运行了。
七、课堂练习题综合提升练习题:下面的程序运行完毕后可以打印多少个“OK!”?FOR X=1 TO 10 STEP 2 X=X+1 PRINT “OK!”NEXT X八、课堂小结本堂课主要用了计算机来做相同的事情,我们要掌握循环语句的语法格式及它的各种灵活运用下一堂课我们将对本堂课进行提升,再给同学们讲怎么样用计算机来做相似的事情,如怎么样求“S= 1+2+3+…+1000的和及相应的变化的一些问题”九、课外作业及课外探究作业 1、作业:P86页,第1、2两个试题2、课外探究作业一:对于循环变量的值超过终值,你是如何理解的?(结合步长为正,为负两种情况)3、课外探究作业二:循环体被执行的次数由什么决定?4、课外探究作业三FOR循环语句中变量的值在循环体中发生变化时你怎么理解?十、课后总结在整个教学过程中,充分体现了学生的主体地位、以及对学生各种能力的培养无论是引入课题还是对本节课的重点、难点,我都没有直接讲解,而是通过启发引导、提出问题、自主探究等形式,充分调动学生的学习积极性,使他们参与到教学的整个过程,让学生在积极思考,积极探索中掌握新知识、消化本节课的重点、难点。
有的老师认为这一堂课讲得简单,但是我要说的是这一堂课的重点是放在循环语句什么样情况下才能够使用,它的语法格式和执行过程怎么样,在具体的使用过程中怎么样灵活变化下一节课才讲它的相似情况的运行情况(即提升课),当然也有不足之处,希望同行们批评指出附件内容[分发给学生]:学生上机自主探究学习内容为了探索FOR循环语句什么情况下可以循环,循环语句退出循环的条件及其“初值、终值和步长”它们之间的关系,请同学们上机运行如下的程序,并按照要求把相应空的内容填上运行时请先运行QBASIC,然后打开“TEST.BAS”程序进行相应的修改并运行即可1、当“步长>0”时,我们来变化“初值”和“终值” (1)当“步长”的值取正数 CLSFOR X=1 TO 3 STEP 1 PRINT “OK!”NEXT XPRINT “X=”;XEND此时运行本程序后,输出了__3_个“OK!”,输出X的值为:___4___2)当“步长”的值取负数 CLSFOR X=3 TO 1 STEP 1 PRINT “OK!”NEXT XPRINT “X=”;XEND此时运行本程序后,输出了__0__个“OK!”,输出X的值为:___3___。
小结:(3)根据上面的(1)和(2)两个程序,您得出的结论是什么?①当“步长〉0”时,只有“初值”__小于_(填大于或小于)“终值”,循环语句才能够进行循环②当“步长〉0”时,只有“循环变量”的值__大于__(填大于或小于)“终值”时,才能够退出循环2、当“步长<0”时,我们来变化“初值”和“终值”1)当“步长”的值取正数 CLSFOR X=1 TO 3 STEP -1 PRINT “OK!”NEXT XPRINT “X=”;XEND此时运行本程序后,输出了___0_个“OK!”,输出X的值为:____1___2)当“步长”的值取负数 CLSFOR X=3 TO 1 STEP -1 PRINT “OK!”NEXT XPRINT “X=”;XEND此时运行本程序后,输出了___3___个“OK!”,输出X的值为:___0___小结:(3)根据上面的(1)和(2)两个程序,您得出的结论是什么?①当“步长<0”时,只有“初值”__大于__(填大于或小于)“终值”,循环语句才能够进行循环②当“步长<0”时,只有“循环变量”的值___小于___(填大于或小于)“终值”时,才能够退出循环。
3、当“步长=0”的,我们来变化“初值”和“终值”1)“初值”>“终值”的值 CLSFOR X=3 TO 1 STEP 0 PRINT “OK!”NEXT XPRINT “X=”;XEND此时运行本程序后,输出了___0___个“OK!”,输出X的值为:__3__2)“初值”<=“终值”的值 CLSFOR X=1 TO 3 STEP 0 PRINT “OK!”NEXT XPRINT “X=”;XEND此时运行本程序后,输出了[无数]个“OK!”,输。












