改变循环执行的状态
标签: C语言
学习人数: 14.5k


高清播放
赞赏支持

用break语句提前终止循环

break 语句通常用在循环语句和开关语句中。当 break 用于开关语句 switch 中时,可使程序跳出 switch而执行 switch 以后的语句;如果没有 break 语句,则将成为一个死循环而无法退出。break 在 switch 中的用法已在前面介绍开关语句时的例子中碰到,这里不再举例。

当 break 语句用于 do-while、for、while 循环语句中时,可使程序终止循环而执行循环后面的语句, 通 常 break 语句总是与 if 语句联在一起。即满足条件时便跳出循环。

 

【例】

#include <stdio.h>  
#include <conio.h>  
  
int main() {  
    int i = 0;  
    char c;  
    while(1) /*设置循环*/  
    {  
        c = '\0'; /*变量赋初值*/  
        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");  
    return 0;  
}  

 

注意:

1) break 语句对 if-else 的条件语句不起作用。
2) 在多层循环中, 一个 break 语句只向外跳一层。

 


用continue语句提前结束本次循环

continue 语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。continue 语句只用在 for、while、do-while 等循环体中,常与 if 条件语句一起使用,用来加速循环。其执行过程可用下图表示。
1)

 

while(表达式 1)  
{  
    ……  
    if(表达式 2) break;  
    ……  
}   

 

2)

while(表达式 1)  
{  
    ……  
    if(表达式 2) continue;  
    ……  
}   


【例】

#include <stdio.h>  
#include <conio.h>  
  
int main() {  
    char c;  
    while(c!=13) /*不是回车符则循环*/  
    {  
        c=getch();  
        if(c==0X1B)  
            continue; /*若按 Esc 键不输出便进行下次循环*/  
        printf("%c\n", c);  
    }  
    return...
登录查看完整内容


课后作业

掌握本节内容


登录后开始许愿

暂无评论,来抢沙发