当前位置:首页 >> 工学 >> C语言循环结构教学设计

C语言循环结构教学设计


C 语言循环结构教学设计
一. 教学设计(包括教学背景、教学目标) 1. 关于“C语言程序设计”课程 C语言是在 70 年代初问世的。一九七八年由美国电话电报公司(AT&T)贝 尔实验室正式发表了C语言。 同时由 B.W.Kernighan 和 D.M.Ritchit 合著了著名 的“THE C PROGRAMMING LANGUAGE”一书。通常简称为《K&R》,也有 人称之为《K&R》标准。但是,在《K&R》中并没有定义一个完整的标准 C 语言,后来由美国国家标准学会在此基础上制定了一个 C 语言标准,于一九 八三年发表。通常称之为 ANSI C。当代最优秀的程序设计语 早期的 C 语言主要是用于 UNIX 系统。由于C语言的强大功能和各方面 的优点逐渐为人们认识,到了八十年代,C 开始进入其它操作系统,并很快在 各类大、中、小和微型计算机上得到了广泛的使用。成为当代最优秀的程序设 计语言之一。 C语言的特点 C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序, 易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算 符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理 地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C 语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合 于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此广 泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。 C语言版本目前最流行的C语言有以下几种: · Microsoft C 或称 MS C · Borland Turbo C 或称 Turbo C · AT&T C 这些C语言版本不仅实现了 ANSI C 标准,而且在此基础上各自作了一 些扩充,使之更加方便、完美。 面向对象的程序设计语言 在 C 的基础上,一九八三年又由贝尔实验室的 Bjarne Strou-strup 推出了 C++。 C++进一步扩充和完善了C语言, 成为一种面向 对象的程序设计语言。 C++目前流行的最新版本是 Borland C++4.5,Symantec C++6.1,和 Microsoft VisualC++ 2.0。C++提出了一些更为深入的概念,它所支持的这些面向对象的

概念容易将问题空间直接地映射到程序空间, 为程序员提供了一种与传统结构 程序设计不同的思维方式和编程方法。因而也增加了整个语言的复杂性,掌握 起来有一定难度。 2. 学习方法建议 学习本章内容时,应重点掌握 3 种循环语句的基本流程,并在此基础上理 解循环嵌套的应用,要求多读程序,理解编程的算法、编程的思路,并仿照例 题多编程序、上机练习,真正掌握循环结构程序设计。 3. 教学目标 1)知识层面:掌握循环结构程序设计 2)能力层面:在编程语言环境熟练应用循环结构编写程序 3)认知层面:深刻理解循环结构 for 语句、while 语句、do-while 语句在编程 序时应用 4. 教学重点与难点 1)教学重点:for 语句、do -while 语句、while 语句 处理方法: 结构流程图和实列帮助学生理解循环结构执行过程 2)教学难点: 循环的嵌套 处理方法:详细列举循环的嵌套结构形式以及流程图,加上练习帮助学 生理解 二、课程设计思路(包括教学方法、教学手段) 教学 步骤 巧 妙 一问题引入: 复习, 引 入 正题 例如: 问题 1:打印一行十个星号,如何实现? 问题 2:打印两行十个星号,如何实现? 问题 3:打印 10 行十个星号如何实现? 问题 4:打印 100 行十个星号如何实现? 教学内容 设计意图与 表达方式 既能克服传 统复习枯燥 乏 味 的 缺 点,也能抓 住学生的好 奇心,还能 激发学生对 新问题的求 知欲。 通 过 二.内容讲解过程: 介 绍 循 环 2.1 for 语句 在三种循环语句中,教师应该先讲哪个呢?我认为应

语 句 该先讲 for 语句, 因为 for 语句完全可以变形为 while 语句, for 的 while 语句又能变形为 do-while 语句。 所以当学生深刻理解 语 法 了 for 语句后,自然能理解和掌握其他语句。for 语句是循 规 则 环控制结构中使用最广泛的一种循环控制语句,特别适合 以 及 已知循环次数的情况。第一次讲解循环实例要通俗易懂, 让学生更好 流 程 力求循序渐进。如求 1+2+3+?+100 的值,并将其结果放 图 程如以下代码所示。 sum=0; sum=sum+1; sum=sum+2; sum=sum+3; ?? sum=sum+100; 从这个推导过程中找出规律 sum=sum+i, i 的初值 i=1, i 的范围 i<=100,i 每次变化步长。得出语句: for(i=1;i<=100;i++) sum=sum+i;从例子中引出 for 语句的 一般形式。 2.1.1 for 语句的一般形式 for(表达式 1; 表达式 2; 表达式 3)循环体语句。 for 语 句从结构上很好地体现了循环控制应注意的三个问题: 1)循环的初始条件; 2)循环条件; 3)循环的步长。 接着讲解 for 语句中表达式的功能及常见形式。 表达式 1:设计循环的初始条件,常为赋值表达式, 给循环的控制变量赋初值; 表达式 2:确定循环的条件,该表达式的值为逻辑量 真或假,一般为关系表达式或逻辑表达式; 表达式 3:循环的步长,一般为赋值表达式、自加或 自减表达式。 语句:循环体,当有多条语句时,必须使用复合语句。 所以 for 语句的一般形式又可以变为: for(赋值表达式;关系表达式;自加或自减表达式)循 理解 for 语 则,详细讲 解 在变量 sum 中。引导学生用依次相加的方法求和,推导过 句的语法规

环体语句。有了这种对表达式功能的认识,才能有此表达 式确定的形式,这种形式的确定为下一步讲解如何将 for 语句转变成 while 语句做了最好的铺垫。 2.1.2 for 循环的执行过程 首先计算表达式 1,然后计算表达式 2,若表达式 2 的值为真,则执行循环体;否则,退出 for 循环,执行 for 循环外的语句。 如果执行了循环体, 则循环体每执行一次, 都计算表达式 3,然后重新计算表达式 2,依此循环,直至 表达式 2 的逻辑量值为假, 退出循环。 流程图如图 1 所示。 此处可以详细讲解刚才的实例,程序段如下所示。 for (i = 1; i <= 100; i++) sum = sum + i; 即 i=1; 1<=100 为真,sum=sum+1;前 1 项的和,执行 后 i=2; i=2; 2<=100 为真,sum=sum+2;前 2 项的和,执行 后 i=3; i=3; 3<=100 为真,sum=sum+3;前 3 项的和,执行 后 i=4;?i=100;100<=100 为真,sum=sum+100;前 100 项的 和,执行后 i=101; i=101;101<=100 为假,循环终止。此时 sum 中的值即为所求前 100 项的和。通过例子得出结论之 后,教师要不失时机地再次设疑。在此处,教师可以让学 生思考和解决难度相同的问题,并由他们自己做出正确答 案, 以加深对循环语句的理解和认识。 平行问题如下所示。 问题 1:1-100 内所的奇数/偶数之和? 问题 2:1-100 内所有为 5 倍数的数值之和? 问题 3:1+1/2+1/3+??+1/100 之和? 对于上述问题,教师只要稍加点拨,或经学生互相讨 论,大多数同学都可以从表达式条件对执行过程影响这一 角度加以理解,并顺利得出正确的程序。这些问题解决之 后,可以逐步加深问题的难度,提高问题如下所示。 问题 4:键盘输入 10 个学生的成绩,输出各成绩和平 均成绩; 问题 5: 在两行上分别按顺序和逆序输出 26 个英文大 写字母; 问题 6:输出斐波纳契(Fibonacci)级数的前 30 项。上

述例子,可以使学生由感性认识上升到理性认识,在认识 上产生了质的飞跃。 2.1.3 for 语句的几种格式 for 语句的三个表达式都是可以省略的,但分号 “; ” 绝对不能省略。还是以刚才的例子分别讲解表达式 1、表 达式 2 和表达式 3 省略的情况。 1) for(;表达式 2;表达式 3) 循环体语句。 for 语句执行过程的第一步是执行表达式 1, 我们可以 将表达式 1 放到 for 循环的前面, 这就形成了省略表达式 1 的情况。使用条件是:循环控制变量的初值是执行在循环 体前已经赋值,如下面代码: i = 1; for (;i<=100;i++) sum = sum + i; 可以清楚地看到,在执行循环前,循环控制变量的初 值已经被事先赋值了。执行时,跳过求解“表达式 1”这 一步,其他的执行步骤不变。 2) for(表达式 1; ;表达式 3) 循环体语句。 表达式 2 省略时,循环条件默认为真,此时,循环体 中一定要有一条语句能够跑出循环, 否则就是一个死循环。 为了以后避免出现死循环,可以演示死循环的执行过程, 给学生留下深刻的印象。 3) for(;表达式 2;) 循环体语句。 利 用 For 语句过度到 while 语句 for 语 此过程是较 表达式 3 也可以省略,根据它的执行顺序可知,它是 难的阶段,

句 的 在执行循环体语句后面执行的,那么我们可以把“表达式 以引导学生 特 性 3” 放到循环体中所有语句的最后面, 以保证循环能正常结 掌握 for 语 过 度 束。如以上代码可以变为如下形式。 到 while 语句 i = 1; for (; i <= 100;) {sum = sum + i; i++; } 大括号括起所有语句,构成复合语句。 句变换到 while 语句、 用流程比较 while 语句 语句差别,

特别要注意的是,如果循环体有多条语句,要用一对 与 do-while 这种形式就是也 while 语句最为接近的形式。也可以 加深学生对

从这里推导出 while 语句。 表达式 1; while(表达式 2) {循环体;表达式 3; } 代码形式变为: i=1; while (i <= 10) {sum = sum + i; i++; } 这时可以直观地看出 for 语句与 while 语句的联系。 也可以 说如果表达式 1, 表达式 2, 表达式 3 完全相同的话, while 语句完全等同于 for 语句。 2.2 while 语句 有些问题用 for 语句不方便或解决不了时,可以用 while 语句。如问题:从键盘输入若干个非 0 数据,求它们 的和?用 0 结束循环的执行。while 语句是当型循环语句, 一般形式为: while(表达式) 语句; 其中 while 为语句的关键词,表达式为循环条件,语句部 分一般包括两部分:循环体和步长,所以一般为多条语句 构成,应使用复合语句,以符合语法规范的要求。while 语句的传统流程图如图 2 所示, 其特点是先判断, 后执行, 若条件不成立,有可能一次也不执行。 在整个循环中,初始条件只在循环开始时执行一次,以后 进行的是循环条件、循环体和步长之间的循环,一般初始 条件以变量初始化或变量赋值语句的形式在循环语句之前 已经实现,所以在 while 语句中没有这一条件的体现。在 讲解 while 语句时, 教师可以将讲解 for 语句的例子用 while 语句来实现一遍。从问题的求解中让学生自己总结出两者 之间的区别。 2.3 do-while 语句 do-while 和 while 很相似:while 先判断表达式的值, 后执行循环体; do-while 先执行循环体, 再判断表达式[3]。

它们理解

它的一般形式为: do 循环体 while(表达式); 其中语句通常为复合语句, 基本组成同 while 语句。 do-while 语句的流程图如图 3 所示, 其基本特点是: 先执行后判断, 因此,循环体至少被执行一次。 可以用 do-while 语句实现前一个例子,比较它们的异同。 三.循环的嵌套 嵌套的几种形式 (1) while() { …… while() { } …... } 2) do { …… do { …... }while( ); (3) while() { …… do { ……. } (4) for( ; ;) { …… …… }while( ); …… }while( ); …… 该点是教学 的难点,学 生不易理解 嵌套层次, 引用了一个 简单三层循 环。帮助理 解循环的嵌 套 。并 在 C++ 环 境 中 求解

do { …… while() { } …... } 题列: 分析程序运行结果。 int i=1,a=0; for (;i<=5;i++) { do{ i++; a++; }while(i<3); i++; } printf(“%d,%d\n”,a,i); 四、break 语句和 continue 语句 1.break 语句 功能:在循环语句和 switch 语句中,终止并跳出循 环体或开关体。 说明: break 只能终止并跳出最近一层的结构 break 不能用于循环语句和 switch 语句之外的 任何其它语句之中。 2. continue 语句 功能:结束本次循环,跳过循环体中尚未执行的语 句,进行下一次是否执行循环体的判断 列举两个语 句流程图帮 助学生理解 break 语 句 和 continue 语句作用和 在循环中的 应用 …… …… }while();

仅用于循环语句中

小结 循环 语句 的学 习

五、总结 1.掌握循环的概念、循环变量的概念等 设计中的应用。 3.掌握循环嵌套,嵌套时的注意嵌套形式。 4. 掌握 break 语句和 continue 语句

通过以上的 教学,使学 语句在 C 语 言程序设计 中应用

2.熟练掌握 while,do-while,for 循环语句在 C 语言程序 生掌握循环

三、教学特色(总结教学特色、教学效果) 1、教学特色 1)合理运用教学手段 在课堂开始之前,巧妙运用前一章节的内容引入教学,使学生的思路自 然的转入课堂,充分吸引学生的注意力。 在循环程序设计的演示过程中,形象的利用流程图的演变过程来展示循 环结构程序设计过程变化, 传递知识的过程当中又不乏趣味性,能够让学生的注 意力充分的集中在课程的教学当中。 2)密切抓住学生的兴趣来进行教学设计,注重趣味性与知识性相结合、人 文与课堂的有机结合 在适当的演示教学后,提供机会给学生参与学习,让学生适当的做练习, 既巩固了课堂上所学的,又让学生的好奇心得到满足。 2、教学效果 改变以往 C 语言程序设计课堂的抽象性与刻板,枯燥的印象,不在是代 码与数据的堆积物,而是变得适当的富有趣味性。这样的课堂,这样的教学方式 与手段,能基本保证学生都能听得懂,在无形当中增长了学识,提高了对循环结 构程序设计的认识。


赞助商链接
更多相关文档:

C语言循环结构程序设计实验报告

C语言循环结构程序设计实验报告_表格类模板_表格/模板_应用文书。云南大学数学与统计学实验教学中心 实验报告课程名称:程序设计和算法语言 指导教师: 实验名称:循环结...

C语言循环结构练习题带答案

C语言循环结构练习题带答案_IT认证_资格考试/认证_教育专区。C++ 循环结构 第5章 循环结构程序设计 5.1 基本知识点 ? ? ? ? ? ? ? ? while 语句的使用...

《C语言程序设计》循环结构程序设计

C 语言程序设计》实验报告 实验名称:循环结构程序设计 系别:计算机系 专业: 计算机科学与技术 班级:五班 姓名: 学号: 实验日期: 教师审批签字: 实验 4 C ...

c语言循环结构练习

c语言循环结构练习_IT认证_资格考试/认证_教育专区。c语言的练习题 ...C.goto 语句必须与语句标号在同一个函数内 D.结构化程序设计主张使用 goto ...

C语言循环结构编程实验

实验报告三 (两学时)课程 C 语言程序设计 实验项目 学号 2016-4-07 控制结构程序设计 成绩 专业班级 姓名 批阅日期 指导教师 实验日期 循环结构程序设计【实验 ...

C语言-实验三、循环结构程序设计解答

C语言-实验三、循环结构程序设计解答 - 实验三 循环结构程序设计 一、实验目的 1.熟练掌握三种循环语句的应用。 2. 熟练掌握循环结构的嵌套。 3. 掌握 break ...

C语言循环实验报告

C语言循环实验报告_电脑基础知识_IT/计算机_专业资料。C语言实验报告,循环结构,包括源代码和实验分析 实验名: 循环结构 实验目的 1、掌握在程序设计条件型循环结构...

C语言循环结构

C语言循环结构_电脑基础知识_IT/计算机_专业资料。循环结构 1 循环 3 要素:○、初始化:决定循环的出事状态,即与循环相关的 变量的初始值; 2 ○循环体:循环中...

C语言循环结构练习题带答案

C语言循环结构练习题带答案 - 第5章 循环结构程序设计 练习题 1. 单项选择题 (1)语句 while (!e);中的条件!e 等价于 A. e==0 B. e!=1 D A 。 ...

C语言循环结构练习题

C语言循环结构练习题_IT认证_资格考试/认证_教育专区。第5章 循环结构程序设计 5.1 基本知识点 ? ? ? ? ? ? ? ? while 语句的使用格式和注意事项 do-...

更多相关标签:
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com