美文网首页
05 C的四个跳转

05 C的四个跳转

作者: 亨锅锅 | 来源:发表于2018-10-30 13:05 被阅读0次

1、break

#include <stdio.h>

int main()
{
    /*
     * break
     * break只用用在switch和循环结构中, 离开应用的范围没有任何意义
     * break在switch语句中, 他的作用是跳出(结束)switch语句
     * break在循环语句中, 他的作用是跳出循环语句 while , dowhile, for
     *
     * 注意点:
     * 1.离开应用范围后会报错
     * 2.在应用范围内, break后面不能编写语句, 因为永远执行不到
     * 3.如果循环嵌套的时候, break只会跳出所在(最近的)的循环
     */

//    switch(1){
//    case 1:
//        printf("A\n");
//        break;
//    case 2:
//        printf("B\n");
//        break;
//    default:
//        printf("Other\n");
//    }

//    int num = 1;
//    while(num <= 10){
//        if(num == 5){
//            break;
//        }
//        printf("num = %i\n", num); // 1 2 3 4
//        num++; // 2 3 4 5
//    }

//    for(int num = 1; num <= 10; num++){
//        if(num == 5){
//            break;
//        }
//        printf("num = %i\n", num);
//    }


//    if(1){
//        printf("随便写点东西\n");
//        break; // 离开应用范围后会报错
//    }


//        switch(1){
//        case 1:
//            printf("A\n");
//            break;
//            printf("break后面的语句\n");
//        case 2:
//            printf("B\n");
//            break;
//        default:
//            printf("Other\n");
//        }


//        int num = 1;
//        while(num <= 10){
//            printf("break前面的语句\n");
//            break;
//            printf("break后面的语句\n");
//            num++;
//        }

    for(int i = 0; i < 5; i++){
        for(int j = 0; j < 5; j++){
            if(j == 1){
                break;
            }
            printf("j = %i\n", j);
        }
        printf("----i = %i\n", i);
    }
    return 0;
}

2、continue

#include <stdio.h>

int main()
{
    /*
     * continue
     * continue只能用在循环中, 离开应用范围没有任何意义
     *
     * 作用: 跳过本次循环, 进入下一次循环
     * 只要在循环中遇到continue, 就会直接跳回到条件表达式
     *
     * 注意点:
     * 1.和break一样离开循环没有任何意义, 会报错
     * 2.和break一样continue后面不能编写语句, 永远执行不到
     * 3.和break一样, 循环嵌套的时候continue只会跳出所在(最近)的循环
     */
//    int num = 0;
//    while(num < 10){
//        num++; // num = 1 2 3
//        if(num == 2){
//            continue;
//        }
//        printf("num = %i\n", num); // 1 3
//    }

//    if(1){
//        continue; // 会报错
//    }


//    int num = 0;
//    while(num < 10){
//        num++;
//        printf("continue之前的语句\n");
//        continue;
//        printf("continue之后的语句\n");
//    }

    for(int i = 0; i < 2; i++){
        for(int j = 0; j < 3; j++){
            if(j == 1){
                continue;
            }
            printf("j = %i\n", j);
        }
        printf("----i = %i\n", i);
    }
    return 0;
}

3、goto

#include <stdio.h>
int test(){
    lnj: printf("test 函数\n");
}
int main()
{
    /*
     * goto只能用于在同一个函数中跳转, 可以往前条, 也可以往后条, 只要是在同一个函数中, 想怎么跳就怎么跳
     *
     * 注意点:
     * goto需要配合标签使用
     * 标签可以是任意的名称后面加上:即可
     */

    // 往后跳转
//    printf("第一行代码\n");
//    goto msh; // 跳转到名称叫做msh的标签开始执行
//    printf("第二行代码\n");
//    msh: printf("第三行代码\n"); // msh: 就是我们自定义的标签

    // 往前跳转
//    int num = 0;
//    msh: if(num < 3){// lnj: 就是我们自定义的标签
//        num++; // 1 2 3
//        printf("num = %i\n", num); // 1 2 3
//        goto msh;  // 跳转到名称叫做msh的标签开始执行
//    }

    // 会报错, 只能在同一个函数中跳转
//    printf("main函数\n");
//    goto msh;
    return 0;
}

4、return

相关文章

网友评论

      本文标题:05 C的四个跳转

      本文链接:https://www.haomeiwen.com/subject/olagnftx.html