第五章:循环控制结构程序05
让编程改变世界
Change the world by program
break和continue语句
break语句
break语句可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句一般形式:break;
break语句不能用于循环语句和switch语句之外的任何其他语句中。 注意: 1) break语句对if-else的条件语句不起作用。 2) 在多层循环中, 一个break语句只向外跳一层。 [codesyntax lang="c"]#include <stdio.h> void main() { float pi = 3.14159; for( r=1; r <= 10; r++ ) { area = pi*r*r; if( area > 100 ) { break; } printf(″r=%f,area=%fn″,r,area); } }[/codesyntax] 程序的作用是计算r=1到r=10时的圆面积,直到面积area大于100为止。 从上面的for循环可以看到:当area>100时,执行break语句,提前结束循环,即不再继续执行其余的几次循环。 [codesyntax lang="c"]
#include <stdio.h> void main() { int i=0; char c; while(1) /*设置循环*/ { c='�'; /*变量赋初值*/ while(c!=13&&c!=27) /*键盘接收字符直到按回车或Esc键*/ { c=getch(); printf("%cn", c); } if(c==27) break; /*判断若按Esc键则退出循环*/ i++; printf("The No. is %dn", i); } printf("The end"); }[/codesyntax]
continue语句
作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。 一般形式:continue;
continue语句和break语句的区别
continue语句只结束本次循环,而不是终止整个循环的执行。 while(表达式1) {if(表达式2)
continue;
} break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。 while(表达式1) {if(表达式2)
break;
}练习1: 显示输入的字符, 如果按的是Esc键, 则退出循环;如果按的是Enter键, 则不做任何处理,继续输入下一个字符。
[codesyntax lang="c"]#include <stdio.h> #include <conio.h> //后边getch函数和putch函数需要 void main( ) { char ch; for ( ; ;) { ch=getch(); /*字符输入函数 */ if ( ch == 27 ) /* Esc键的ACSII码为27*/ break; /*退出循环*/ if ( ch == 13 ) continue; /*按的是Enter:键,跳过字符输出语句*/ putch(ch); /*显示输入的字符*/ } getch( ); /*让程序停一下,拍任意键继续*/ }[/codesyntax]
练习2: 把100~200之间的不能被3整除的数输出。
提示说明:当n能被3整除时,执行continue语句,结束本次循环(即跳过printf函数语句),只有n不能被3整除时才执行printf函数。 [codesyntax lang="c"]#include <stdio.h> void main() { int n; for (n=100;n<=200;n++) { if( n%3 == 0 ) continue; printf("%d ″, n); } }[/codesyntax] [buy] 获得所有教学视频、课件、源代码等资源打包 [/buy] [Downlink href='http://kuai.xunlei.com/d/LCWNFINCSHCD']视频下载[/Downlink]