0; k<2; k++)
谭浩强 C 语言程序设计 2001 年 5 月 1 日
printf(“%d %d %d\n", i, j, k);
}
6.7 几种循环的比较
1) 四种循环都可以用来处理同一个问题,一般可以互相代替。但一般不提倡用 goto 型循
环。
2) while 和 do-while 循环,循环体中应包括使循环趋于结束的语句。for 语句功能最强。
3) 用 while 和 do-while 循环时,循环变量初始化的cāo作应在 while 和 do-while 语句之前完
成,而 for 语句可以在表达式 1 中实现循环变量的初始化。
6.8 break 和 continue 语句
6.8.1 break 语句
break 语句通常用在循环语句和开关语句中。当 break 用于开关语句 switch 中时,可使
程序跳出 switch 而执行 switch 以后的语句;如果没有 break 语句,则将成为一个死循环而
无法退出。break 在 switch 中的用法已在前面介绍开关语句时的例子中碰到,这里不再举
例。
当 break 语句用于 do-while、for、while 循环语句中时,可使程序终止循环而执行循环
后面的语句, 通常 break 语句总是与 if 语句联在一起。即满足条件时便跳出循环。
【例 6.8】
main()
{
int i=0;
char c;
while(1) /*设置循环*/
{
c='\0'; /*变量赋初值*/
谭浩强 C 语言程序设计 2001 年 5 月 1 日
while(c!=13&&c!=27) /*键盘接收字符直到按回车或 Esc 键*/
{
c=getch();
printf("%c\n", c);
}
if(c==27)
break; /*判断若按 Esc 键则退出循环*/
i++;
printf("The No. is %d\n", i);
}
printf("The end");
}
注意:
1) break 语句对 if-else 的条件语句不起作用。
2) 在多层循环中, 一个 break 语句只向外跳一层。
6.8.2 continue 语句
continue 语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。continue 语
句只用在 for、while、do-while 等循环体中,常与 if 条件语句一起使用,用来加速循环。其
执行过程可用下图表示。
1) while(表达式 1)
{ ……
if(表达式 2)break;