c53循环结构break与continu

上传人:枫** 文档编号:592594869 上传时间:2024-09-21 格式:PPT 页数:18 大小:255.50KB
返回 下载 相关 举报
c53循环结构break与continu_第1页
第1页 / 共18页
c53循环结构break与continu_第2页
第2页 / 共18页
c53循环结构break与continu_第3页
第3页 / 共18页
c53循环结构break与continu_第4页
第4页 / 共18页
c53循环结构break与continu_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《c53循环结构break与continu》由会员分享,可在线阅读,更多相关《c53循环结构break与continu(18页珍藏版)》请在金锄头文库上搜索。

1、第九第九第九第九讲讲 breakbreakbreakbreak、continuecontinuecontinuecontinue深圳大学深圳大学深圳大学深圳大学计计算机系算机系算机系算机系breakbreak语句语句功能:功能:功能:功能:在循环语句和在循环语句和在循环语句和在循环语句和switchswitchswitchswitch语句中语句中语句中语句中, , , ,终止并跳出循环体或终止并跳出循环体或终止并跳出循环体或终止并跳出循环体或开关体开关体开关体开关体说明:说明:说明:说明:(1) break(1) break(1) break(1) break不能用于循环语句和不能用于循环语句

2、和不能用于循环语句和不能用于循环语句和switchswitchswitchswitch语句之外的任语句之外的任语句之外的任语句之外的任何其它语句之中。何其它语句之中。何其它语句之中。何其它语句之中。 (2) break(2) break(2) break(2) break只能只能只能只能终止并跳出终止并跳出终止并跳出终止并跳出最近一层最近一层最近一层最近一层的结构的结构的结构的结构。while (while (表达式表达式表达式表达式1)1) if ( if (表达式表达式表达式表达式2) 2) break; break; 语句语句语句语句dodo if ( if (表达式表达式表达式表达式2

3、) 2) break; break; while ( while (表达式表达式表达式表达式1);1);语句语句语句语句for (; for (; 表达式表达式表达式表达式1; )1; ) if ( if (表达式表达式表达式表达式2)2) break; break; 语句语句语句语句breakfor ( 表达式表达式1;表达式表达式2;表达式表达式3) 语句语句1 语句语句2 if (表达式4) break;练习输入n ,判定n是否为素数。 方法:方法:方法:方法:通通通通过设过设置一置一置一置一标标志志志志变变量量量量tagtag,然后在每,然后在每,然后在每,然后在每层层循循循循环环后加

4、上一条后加上一条后加上一条后加上一条语语句:句:句:句:if (tag) if (tag) break;break; 其其其其值为值为1 1表示跳出循表示跳出循表示跳出循表示跳出循环环体,体,体,体,为为0 0则则不跳出。不跳出。不跳出。不跳出。 for ()for () while () while () if () break; if () break; while while循环后的第一条语句循环后的第一条语句循环后的第一条语句循环后的第一条语句 int tag = 0;int tag = 0;for ()for () while () while () if () if () tag

5、= 1; tag = 1; break; break; if ( tag ) break; if ( tag ) break; forfor循环后的第一条语句循环后的第一条语句循环后的第一条语句循环后的第一条语句 多重循多重循多重循多重循环环中,中,中,中,breakbreak的使用的使用的使用的使用问问:在嵌套循:在嵌套循:在嵌套循:在嵌套循环环的的的的情况下,如何情况下,如何情况下,如何情况下,如何让让breakbreakbreakbreak语语句跳出最外句跳出最外句跳出最外句跳出最外层层的的循的的循的的循的的循环环体?体?体?体?“百鸡问题”:一只大公鸡值5个钱,一只母鸡但值3个钱,三只

6、小鸡值一个钱。现有一百个钱,要买一百只鸡,是否可以?若可以,给出解,要求三种鸡都有。练习自己练习自己练习一个老师问李老师一个老师问李老师:”你今年多少岁了你今年多少岁了?你你太太多少岁了?太太多少岁了?“李老师说:李老师说:”我年龄我年龄的平方加上我太太的年龄恰好等于的平方加上我太太的年龄恰好等于1053,而我太太年龄的平方加上我的年龄等,而我太太年龄的平方加上我的年龄等于于873。你来算算吧!。你来算算吧!“练习练习把把316这个数表示为两个数的和,其中一个这个数表示为两个数的和,其中一个数是数是13的倍数,另一个数是的倍数,另一个数是11的倍数。的倍数。continuecontinue语句

7、语句功能:功能:结束本次循环,跳过结束本次循环,跳过循环体循环体中中尚未执行的语句,进行下一次尚未执行的语句,进行下一次是否执行循环体的判断。是否执行循环体的判断。说明:说明:(1) (1) 仅用于循环语句中仅用于循环语句中。 continuefor ( 表达式1;表达式2;表达式3 ) 语句1 语句2 if (表达式4) continue;continuecontinue语句语句(2) (2) 在嵌套循环的情况下,在嵌套循环的情况下,continuecontinue语语句只对包含它的句只对包含它的最内层最内层的循环体语句的循环体语句起作用。起作用。 for ()for () while ()

8、 while () if () if () continue; continue; while while循环后的第一条语句循环后的第一条语句循环后的第一条语句循环后的第一条语句 【例例例例】求求求求输输入的十个整数中正数的个数及其平均入的十个整数中正数的个数及其平均入的十个整数中正数的个数及其平均入的十个整数中正数的个数及其平均值值。#include #include void main ( )void main ( ) int i, a, num = 0; int i, a, num = 0; float sum = 0; float sum = 0; for (i = 0; i 10;

9、i+) for (i = 0; i 10; i+) scanf (%d, &a); scanf (%d, &a); / /输入一整数输入一整数输入一整数输入一整数 if (a = 0) if (a = 0) continue;continue; / /如果为负,则输入下一个整数如果为负,则输入下一个整数如果为负,则输入下一个整数如果为负,则输入下一个整数 num+; num+; / /正数个数增正数个数增正数个数增正数个数增1 1 sum += a; sum += a; / /正数和累加正数和累加正数和累加正数和累加 printf (%d plus integers sum: %.0fn, n

10、um, sum); printf (%d plus integers sum: %.0fn, num, sum); printf (average value: %.2fn, sum / num); printf (average value: %.2fn, sum / num); 运行运行运行运行结结果:果:果:果:8 plus integers sum: 458 plus integers sum: 45假设输入的假设输入的假设输入的假设输入的1010个整数为:个整数为:个整数为:个整数为: 2 3 4 5 6 7 8 9 102 3 4 5 6 7 8 9 10 输出1100之间不能被3

11、整除的数,10个数为一行。练习练习练习根据公式根据公式 = 4( 1-1/3+1/5-1/7+)计算计算。程序思路:取无穷级数的有限项。|a(i)|10-7时终止。goto语句语句 一般形式:一般形式:一般形式:一般形式: goto goto 语句标号语句标号语句标号语句标号; ; 语句标号语句标号语句标号语句标号: : 语句标号语句标号语句标号语句标号: : goto goto 语句标号语句标号语句标号语句标号; ;或或或或 说明:说明:说明:说明: 语句标号语句标号语句标号语句标号是按标识符规定书写的符号,放在某一语句是按标识符规定书写的符号,放在某一语句是按标识符规定书写的符号,放在某一

12、语句是按标识符规定书写的符号,放在某一语句行的前面,标号后加冒号行的前面,标号后加冒号行的前面,标号后加冒号行的前面,标号后加冒号( ( ( (:) ) ) )。语句标号起标识语句的作。语句标号起标识语句的作。语句标号起标识语句的作。语句标号起标识语句的作用,与用,与用,与用,与goto goto goto goto 语句配合使用。语句配合使用。语句配合使用。语句配合使用。 作用:作用:作用:作用: goto goto goto goto语句的作用是在不需要任何条件的情况下直接使语句的作用是在不需要任何条件的情况下直接使语句的作用是在不需要任何条件的情况下直接使语句的作用是在不需要任何条件的情

13、况下直接使程序跳转到该语句标号所标识的语句去执行。程序跳转到该语句标号所标识的语句去执行。程序跳转到该语句标号所标识的语句去执行。程序跳转到该语句标号所标识的语句去执行。 goto goto语句的应用:语句的应用:语句的应用:语句的应用:例:求例:求例:求例:求1 1 1 1100100100100的累的累的累的累计计和和和和 #include #include void main ( )void main ( ) int i = 1, sum = 0; int i = 1, sum = 0; loop:loop: sum += i+; sum += i+; if (i = 100) if (

14、i = 100) / /如果如果如果如果i i小于或等于小于或等于小于或等于小于或等于100100 goto loop;goto loop; / /转到标号为转到标号为转到标号为转到标号为looploop的语句去执行的语句去执行的语句去执行的语句去执行 printf (sum = %dn, sum);printf (sum = %dn, sum); (1) goto (1) goto (1) goto (1) goto语句可与条件语句配合使用来实现条件转移,语句可与条件语句配合使用来实现条件转移,语句可与条件语句配合使用来实现条件转移,语句可与条件语句配合使用来实现条件转移,构成循环。构成循环

15、。构成循环。构成循环。 (2) (2) (2) (2) 在嵌套循环的情况下,利用在嵌套循环的情况下,利用在嵌套循环的情况下,利用在嵌套循环的情况下,利用gotogotogotogoto语句可以直接从最语句可以直接从最语句可以直接从最语句可以直接从最内层的循环体跳出最外层的循环体。内层的循环体跳出最外层的循环体。内层的循环体跳出最外层的循环体。内层的循环体跳出最外层的循环体。 int tag = 0;int tag = 0;for ()for () while () while () if () goto stop; if () goto stop; stop: forstop: for循环后的

16、第一条语句循环后的第一条语句循环后的第一条语句循环后的第一条语句 注意:注意:注意:注意: 在在在在结结构化程序构化程序构化程序构化程序设计设计中一般不主中一般不主中一般不主中一般不主张张使用使用使用使用gotogotogotogoto语语句,以免造成程序流程的混乱,使理解和句,以免造成程序流程的混乱,使理解和句,以免造成程序流程的混乱,使理解和句,以免造成程序流程的混乱,使理解和调调试试程序都程序都程序都程序都产产生困生困生困生困难难。exit( )exit( )函数函数函数函数 功能:功能:功能:功能: 说明:说明:说明:说明: 参数参数参数参数statusstatus为为为为intint

17、型,型,型,型,statusstatus的值传给调用进程(一般为的值传给调用进程(一般为的值传给调用进程(一般为的值传给调用进程(一般为操作系统)。按照惯例,当操作系统)。按照惯例,当操作系统)。按照惯例,当操作系统)。按照惯例,当statusstatus的值为的值为的值为的值为0 0或为宏常量或为宏常量或为宏常量或为宏常量EXIT_SUCCESSEXIT_SUCCESS时,表示程序正常退出;当时,表示程序正常退出;当时,表示程序正常退出;当时,表示程序正常退出;当statusstatus的值为的值为的值为的值为非非非非0 0或为宏常量或为宏常量或为宏常量或为宏常量EXIT_FAILUREEX

18、IT_FAILURE时,表示程序出现某种错时,表示程序出现某种错时,表示程序出现某种错时,表示程序出现某种错误后退出。误后退出。误后退出。误后退出。 终止整个程序的执行,强制返回操作系统。终止整个程序的执行,强制返回操作系统。终止整个程序的执行,强制返回操作系统。终止整个程序的执行,强制返回操作系统。 调用形式:调用形式:调用形式:调用形式:void exit( int status ); void exit( int status ); 头文件头文件头文件头文件 程序设计分析:程序设计分析:程序设计分析:程序设计分析: 由数学知识可知,求三角形面积的公式是:由数学知识可知,求三角形面积的公式

19、是:由数学知识可知,求三角形面积的公式是:由数学知识可知,求三角形面积的公式是: 其中,其中,其中,其中,a a a a、b b b b、c c c c是三角形的三个边长,是三角形的三个边长,是三角形的三个边长,是三角形的三个边长,s = (a + b + s = (a + b + s = (a + b + s = (a + b + c) / 2c) / 2c) / 2c) / 2。 因此,程序中应该有三个因此,程序中应该有三个因此,程序中应该有三个因此,程序中应该有三个floatfloatfloatfloat型变量用来存放型变量用来存放型变量用来存放型变量用来存放a a a a、b b b

20、b、c c c c的值,为了方便起见,还应有一个变量存放的值,为了方便起见,还应有一个变量存放的值,为了方便起见,还应有一个变量存放的值,为了方便起见,还应有一个变量存放s s s s,最后有必,最后有必,最后有必,最后有必要设置一个变量来存放三角形的面积值。公式中存在求平要设置一个变量来存放三角形的面积值。公式中存在求平要设置一个变量来存放三角形的面积值。公式中存在求平要设置一个变量来存放三角形的面积值。公式中存在求平方根的操作,这要用到方根的操作,这要用到方根的操作,这要用到方根的操作,这要用到C C C C语言数学库函数语言数学库函数语言数学库函数语言数学库函数sqrtsqrtsqrts

21、qrt。sqrtsqrtsqrtsqrt函数带函数带函数带函数带有一个参数,它的功能是返回参数的平方根。程序在开始有一个参数,它的功能是返回参数的平方根。程序在开始有一个参数,它的功能是返回参数的平方根。程序在开始有一个参数,它的功能是返回参数的平方根。程序在开始接受用户输入的三角形的三个边长后,首先要对这三边作接受用户输入的三角形的三个边长后,首先要对这三边作接受用户输入的三角形的三个边长后,首先要对这三边作接受用户输入的三角形的三个边长后,首先要对这三边作合法性检查,如三边中有某一边长度小于或等于合法性检查,如三边中有某一边长度小于或等于合法性检查,如三边中有某一边长度小于或等于合法性检查

22、,如三边中有某一边长度小于或等于0 0 0 0,则终止,则终止,则终止,则终止程序的执行,同样如果程序的执行,同样如果程序的执行,同样如果程序的执行,同样如果s*(s-a)*(s-b)*(s-c)s*(s-a)*(s-b)*(s-c)s*(s-a)*(s-b)*(s-c)s*(s-a)*(s-b)*(s-c)为负,也要终为负,也要终为负,也要终为负,也要终止程序的执行。止程序的执行。止程序的执行。止程序的执行。语语言言程程序序设设计计教教程程 第第六六章章 循循环环结结构构程程序序设设计计C【例例例例】 输输入三角形的入三角形的入三角形的入三角形的边长边长,求三角形面,求三角形面,求三角形面,

23、求三角形面积积。 #include #include #include #include #include #include void main ( )void main ( ) float a, b, c; float a, b, c; float s, area; float s, area; printf (input the length of three edges of triangle: ); printf (input the length of three edges of triangle: ); scanf (%f%f%f, &a, &b, &c); scanf (%f%

24、f%f, &a, &b, &c); if (a = 0 | b = 0 | c = 0) if (a = 0 | b = 0 | c = 0) printf (the length of three edges of triangle is error!n); printf (the length of three edges of triangle is error!n); exit (-1);exit (-1); s = (a + b + c) / 2;s = (a + b + c) / 2; s = s * (s - a) * (s - b) * (s - c); s = s * (s

25、- a) * (s - b) * (s - c); if (s 0) if (s 0) printf (the length of three edges of triangle is error!n); printf (the length of three edges of triangle is error!n); exit (-1);exit (-1); area = (float)sqrt (s); area = (float)sqrt (s); printf (area = %.2fn, area); printf (area = %.2fn, area); 运行运行运行运行结结果

26、:果:果:果:input the length of three edges of triangle: 3 4 5input the length of three edges of triangle: 3 4 5 input the length of three edges of triangle: 3 -4 5input the length of three edges of triangle: 3 -4 5 the length of three edges of triangle is error!the length of three edges of triangle is error!

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号