第4章-循环结构程序设计素材课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第4章-循环结构程序设计素材课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 循环 结构 程序设计 素材 课件
- 资源描述:
-
1、 在解决实际问题的过程中,常常会遇在解决实际问题的过程中,常常会遇到一些需要重复处理的问题。循环结构可到一些需要重复处理的问题。循环结构可用来处理需要重复处理的问题,所以,循用来处理需要重复处理的问题,所以,循环结构又称为重复结构。环结构又称为重复结构。4.1 循环的概念循环的概念 4.2 语句语句4.3 循环循环 4.4 循环循环 4.5 语句和语句语句和语句4.6 多重循环多重循环4.7 程序举例程序举例 4.8 三种循环语句的比较三种循环语句的比较 第4章 循环结构程序设计 循环结构,又称为重复结构,是结构化程序设计的三循环结构,又称为重复结构,是结构化程序设计的三种基本结构之一,在数值
2、计算和很多问题的处理中都需要种基本结构之一,在数值计算和很多问题的处理中都需要用到循环控制。例如,用迭代法求方程的根,计算全班同用到循环控制。例如,用迭代法求方程的根,计算全班同学的平均分等。几乎所有的应用程序都包含循环,它和顺学的平均分等。几乎所有的应用程序都包含循环,它和顺序结构、选择结构共同作为各种复杂结构程序的基本构造序结构、选择结构共同作为各种复杂结构程序的基本构造单元。因此熟练地掌握选择结构和循环结构的概念及使用单元。因此熟练地掌握选择结构和循环结构的概念及使用,是程序设计最基本的要求。,是程序设计最基本的要求。4.1 循环的概念循环的概念 例如,计算例如,计算1100的累计和。的
3、累计和。根据已有的知识,可以用根据已有的知识,可以用1+2+3+100来计算,但显然很来计算,但显然很繁琐。现在换个思路来考虑:首先设置一个累加器,其初值为繁琐。现在换个思路来考虑:首先设置一个累加器,其初值为0,利用来计算(,利用来计算(i依次取依次取1、2、100),只要解决以下),只要解决以下3个问个问题即可:题即可:将将i的初值置为的初值置为1;每执行每执行1次后,次后,i值增值增1,其过程如下所示:,其过程如下所示:0;1;重复执重复执 行部分行部分 ;1;当当i增到增到101时,停止计算。时,停止计算。此时,的值就是此时,的值就是1100的累计和。的累计和。4.1 循环的概念循环的
4、概念4.2 语句语句用来实现用来实现“当型当型”循环,其一般形式为:循环,其一般形式为:(循环条件表达式循环条件表达式)循环体语句循环体语句 在执行语句时,先对循环条件表达式进行计算,若其值为在执行语句时,先对循环条件表达式进行计算,若其值为非非0 0(真),则反复执行循环体语句,直到循环条件表达式的(真),则反复执行循环体语句,直到循环条件表达式的值为值为0 0(假)时,循环结束,程序控制转至循环语句的下一条(假)时,循环结束,程序控制转至循环语句的下一条语句。其执行过程如图语句。其执行过程如图4-14-1所示。所示。图图4-1 语句的执行过程语句的执行过程使用语句时,应注意以下几个问题:使
5、用语句时,应注意以下几个问题:循环体语句可以是一个空语句、一个语句或一组语句。当循循环体语句可以是一个空语句、一个语句或一组语句。当循环体是一组语句时,则必须用花括号括起来,组成复合语句。环体是一组语句时,则必须用花括号括起来,组成复合语句。图图4-2 计算计算1100累计和的流程图和图描述累计和的流程图和图描述 4.2 语句语句 ();/*定义整型变量定义整型变量*/0;/*将的初值置为将的初值置为0*/1;/*将将i的初值置为的初值置为1*/(i=100)/*若若i=100则执行循环体则执行循环体*/;/*将将i进行累加进行累加*/1;/*i的值加的值加1*/(n);/*输出的值输出的值*
6、/程序运行结果:程序运行结果:50504.2 语句语句 语句中的循环条件表达式可以是任何类型的表达式。语句中的循环条件表达式可以是任何类型的表达式。循环体内一定要有使表达式的值变为循环体内一定要有使表达式的值变为0(假)的操作,否则(假)的操作,否则 循环将无限进行,即形成死循环。循环将无限进行,即形成死循环。语句的特点是语句的特点是“先判断,后执行先判断,后执行”,如果循环条件表达,如果循环条件表达 式的值一开始就为式的值一开始就为0,则循环体语句一次也不执行。,则循环体语句一次也不执行。例如,对于下面的语句:例如,对于下面的语句:()();如果变量如果变量i赋值赋值0时,则一次也不执行循环
7、体语句;如果变量时,则一次也不执行循环体语句;如果变量 i赋值赋值4时,则其运行结果为:时,则其运行结果为:3210。4.2 语句语句例例4.1 利用公式利用公式求求的近似值,直到最后一项的绝对值小于的近似值,直到最后一项的绝对值小于 为止为止。分析:本题仍为求累加和问题,因此,循环体分析:本题仍为求累加和问题,因此,循环体中有这样的求累加和表达式。为公式中的某一项,中有这样的求累加和表达式。为公式中的某一项,其特点是,分母为奇数,且相邻项符号相反,当其特点是,分母为奇数,且相邻项符号相反,当 时,停止求累加和。时,停止求累加和。的近似值可以表示为的近似值可以表示为4。917151311441
8、04104.2 语句语句(b)图描述图描述图图4-3 例例4.1的流程图和图描述的流程图和图描述(a)流程图描述流程图描述 4.2 语句语句 ()1;110;()=14)/*当满足条件时结束当满足条件时结束*/;/*计算通项并进行累加计算通项并进行累加*/2;/*i值加值加2得到下一个奇数得到下一个奇数*/;/*相邻项符号取反相邻项符号取反*/;/*求公式中的某一项求公式中的某一项*/4*;(8.6fn);/*输出的值输出的值*/程序运行结果:程序运行结果:3.1413974.2 语句语句(a)流程图描述流程图描述(b)图描述图描述 例例 4.2 从键盘上连续输入字符,直到输入从键盘上连续输入
9、字符,直到输入“回车回车”符为止,统计符为止,统计 输入的字输入的字符中数字字符的个数。符中数字字符的个数。4.2 语句语句 ();0;(n);()n)/*按回车键时结束按回车键时结束*/(=0=9)/*只对数字字符的个数进行统计只对数字字符的个数进行统计*/();/*输出数字字符输出数字字符*/1;/*对数字字符的个数进行累加统计对数字字符的个数进行累加统计*/(n);/*输出数字字符的个数输出数字字符的个数*/程序运行结果:程序运行结果:5667 566744.2 语句语句4.3 循环 4.3 循环循环 用来实现用来实现“直到型直到型”循环,其一般形式为:循环,其一般形式为:循环体语句循环
10、体语句 (循环条件表达式循环条件表达式);执行过程是,先执行循环体语句,然后对循环条件表达式执行过程是,先执行循环体语句,然后对循环条件表达式进行计算,若其值为真(非进行计算,若其值为真(非0),则重复上述过程,直到循环),则重复上述过程,直到循环条件表达式的值为假(条件表达式的值为假(0)时,循环结束,程序控制转至该结)时,循环结束,程序控制转至该结构的下一条语句。其执行过程如图构的下一条语句。其执行过程如图4-5所示。所示。使用使用语句时,应注意以下几个问题:语句时,应注意以下几个问题:当循环体是一组语句时,则必须用花括号括起来,组当循环体是一组语句时,则必须用花括号括起来,组 成复合语句
11、。成复合语句。循环体内一定要有使表达式的值变为循环体内一定要有使表达式的值变为0(假)的操作,(假)的操作,否则循环将无限进行。否则循环将无限进行。循环是先执行,后判断,因此循环体至少执循环是先执行,后判断,因此循环体至少执 行一次。行一次。和都是关键字,配合起来使用,和都是关键字,配合起来使用,()后面的后面的 “;”不可缺少。不可缺少。4.3 循环循环 例例4.3 用用循环编写计算循环编写计算1+2+3+100的程序。的程序。(a)流程图描述流程图描述(b)图描述图描述4.3 循环循环 ()01;/*开始执行循环开始执行循环*/;/*计算累加和计算累加和*/;/*i自加自加1*/(i=10
12、0);/*如果如果i=100,则循环继续执行,则循环继续执行*/(n);/*输出累加和输出累加和*/程序运行结果:程序运行结果:5050例例4.3 用用循环编写计算循环编写计算1+2+3+100的程序。的程序。4.3 循环循环 例例4.4 输入若干名学生的某门课程的成绩,以负输入若干名学生的某门课程的成绩,以负数作为结束输入的标志,计算该门课程的平均数作为结束输入的标志,计算该门课程的平均成绩。成绩。首先输入一个成绩,若输入负数,直接结首先输入一个成绩,若输入负数,直接结束;否则使用循环结构计算总成绩,同时统计束;否则使用循环结构计算总成绩,同时统计学生人数学生人数1,最后计算平均成绩。,最后
13、计算平均成绩。4.3 循环循环 ()0;0;(:n);();(=0);/*若输入负数,则结束循环若输入负数,则结束循环*/;/*计算平均成绩计算平均成绩*/(6.2fn);/*输出平均成绩输出平均成绩*/程序运行结果:程序运行结果::80 67-1 73.504.3 循环循环 4.4 循环 C 语言的语言的 循环使用最为灵活,功能很强循环使用最为灵活,功能很强。不仅可以用于计数型循环,而且可以用于。不仅可以用于计数型循环,而且可以用于条件型循环。完全可以代替条件型循环。完全可以代替 和和 循环。循环。4.4 循环循环 循环语句的一般形式为:循环语句的一般形式为:(表达式表达式1;表达式;表达式
14、2;表达式;表达式3)循环体语句循环体语句 其中,是其中,是C语言的关键字,其后圆括号通常有语言的关键字,其后圆括号通常有3个表达式。表达式之间用分号隔开,表达式可以是个表达式。表达式之间用分号隔开,表达式可以是C语言中任何合法的表达式。表达式语言中任何合法的表达式。表达式1给循环变量赋给循环变量赋初值;表达式初值;表达式2是循环条件;表达式是循环条件;表达式3修改循环变量修改循环变量值。后面的语句为循环体。循环体多于一条语句时值。后面的语句为循环体。循环体多于一条语句时,要用复合语句表示。,要用复合语句表示。循环语句的作用:循环语句的作用:首先求解表达式首先求解表达式1的值,然后求解表达的值
15、,然后求解表达式式2的值,若表达式的值非的值,若表达式的值非0(真)时,就执行循环体,执行一(真)时,就执行循环体,执行一次循环体后求解表达式次循环体后求解表达式3的值的值,再求解表达式再求解表达式2的值,若表达式的值,若表达式2仍不为仍不为0再执行循环体再执行循环体,再求解表达式再求解表达式3的值。如此反复直到表达的值。如此反复直到表达式式2的值为的值为0时时,整个循环结束。其执行过程如图所示。整个循环结束。其执行过程如图所示。4.4 循环循环 语句最简单的应用形式,也就是最易理语句最简单的应用形式,也就是最易理解的形式:解的形式:(循环变量赋初值;循环条件;循环变量循环变量赋初值;循环条件
16、;循环变量增值增值)循环体语句循环体语句 4.4 循环循环 执行执行执行执行for循环之后的语句循环之后的语句执行执行执行表达式执行表达式1循环初始条件循环初始条件循环控制条件循环控制条件循环体循环体例例4.5 用循环编写计算用循环编写计算1+2+3+100的程序。的程序。4.4 循环循环 ()0;/*定义整型变量并对赋初值定义整型变量并对赋初值*/(1=100);/*通过循环对通过循环对i进行累加进行累加*/(“n”);/*输出累加和输出累加和*/4.4 循环循环 使用使用 循环时,循环时,语句中的表达式可以部分或全部省略,但语句中的表达式可以部分或全部省略,但两个两个“;”不可省略。不可省
17、略。省略表达式省略表达式1,这时没有了给循环变量赋初值的操作,则应,这时没有了给循环变量赋初值的操作,则应 该在语句之前给循环变量赋初值。该在语句之前给循环变量赋初值。例如:例如:1;/*对循环变量对循环变量i赋初值赋初值*/(=100)/*省略了表达式省略了表达式1*/;省略表达式省略表达式2,相当于缺少条件判断,循环将无限进行,因,相当于缺少条件判断,循环将无限进行,因 此如果缺少表达式此如果缺少表达式2,可以认为表达式,可以认为表达式2始终为真。始终为真。4.4 循环循环 省略表达式省略表达式3,则可以把循环变量的修改部分放到循环体,则可以把循环变量的修改部分放到循环体 中进行。中进行。
18、例如:例如:(1=100;)/*省略了表达式省略了表达式3*/;/*在循环体内改变循环变量在循环体内改变循环变量i的值的值*/省略表达式省略表达式1和表达式和表达式3,相当于在循环中只有表达式,相当于在循环中只有表达式2,即只给出循环结束的条件。这时可以采用上述和中的即只给出循环结束的条件。这时可以采用上述和中的 方法,保证循环正常结束。方法,保证循环正常结束。三个表达式全部省略,三个表达式全部省略,(;)相当于相当于(1)。4.4 循环循环 例例4.6 用循环编写计算用循环编写计算n!的程序。的程序。由于是个连乘的重复过程,每次循环完成一次乘法,共循由于是个连乘的重复过程,每次循环完成一次乘
19、法,共循环次。在前面我们对计算累加和采用了环次。在前面我们对计算累加和采用了“第第i项项”的循环算式,的循环算式,类似对于连乘可以采用类似对于连乘可以采用“*第第i项项”的循环算式,其中第的循环算式,其中第i项就是项就是循环变量循环变量i。4.4 循环循环 ()1;/*定义整型变量定义整型变量,并对阶乘并对阶乘t赋初值赋初值1*/(n:);/*输出提示信息输出提示信息*/();/*从键盘输入从键盘输入n的值的值*/(1)*i;/*循环重复循环重复n次次,计算计算n!*/(n);/*输出输出n的阶乘的阶乘*/程序运行结果:程序运行结果:n:5 1204.4 循环循环 例例4.74.4 循环循环
20、()i;();/*将输入的第一个学生的成绩赋给将输入的第一个学生的成绩赋给*/;/*将输入的第一个学生的成绩赋给将输入的第一个学生的成绩赋给*/(2)/*输入的成绩大于输入的成绩大于,将输入的成绩值赋给将输入的成绩值赋给*/;()/*输入的成绩小于输入的成绩小于,则将输入的成绩值赋给则将输入的成绩值赋给*/;(6.2f 6.2fn);程序运行结果:程序运行结果:75 89 66 48 98 100 79 85 90 68 100.00 48.004.4 循环循环 4.5 语句和语句 为了使循环控制更加灵活,为了使循环控制更加灵活,C 语言允许语言允许在特定条件成立时,使用在特定条件成立时,使用
21、 语句强行结束循语句强行结束循环,或使用环,或使用 语句跳过循环体其余语句,转语句跳过循环体其余语句,转向循环条件的判定语句。向循环条件的判定语句。4.5 语句和语句语句和语句 4.5.1 语句语句 语句的一般形式为:语句的一般形式为:;语句有两个作用:用于语句有两个作用:用于 语句时,退出语句时,退出 语语句,程序转至句,程序转至 语句下面的语句;用于循环语句语句下面的语句;用于循环语句时,退出包含它的循环体,程序转至循环体下时,退出包含它的循环体,程序转至循环体下面的语句。面的语句。例例4.8 找出在找出在100以内的自然数中,能被以内的自然数中,能被9整除的第一个数。整除的第一个数。4.
22、5 语句和语句语句和语句 ();(n:);();(=100)(90)/*判别判别i能否被能否被9整除整除*/(.n);/*i能被能被9整除,则输出整除,则输出i的值的值*/;/*提前退出循环提前退出循环*/程序运行结果:程序运行结果:n:1 9.n:65 72.4.5 语句和语句语句和语句 4.5.2 语句语句 语句的一般形式为:语句的一般形式为:;语句作用是:结束本次循环,跳过循环语句作用是:结束本次循环,跳过循环体中尚未执行的语句,接着进行下一次是否体中尚未执行的语句,接着进行下一次是否执行循环的判断。在和执行循环的判断。在和语句中,语句把程语句中,语句把程序控制转到后面的表达式处,在语句
展开阅读全文