C语言入门(四)之switch、循环语句

版权声明:如果觉得文章对你有用,转载不需要联系作者,但请注明出处 https://blog.csdn.net/jinxin70/article/details/83217373

switch格式

switch格式:
 
 switch (条件表达式)
 {
    case 整数: // case可以有一个或多个
        语句;
        break;
    case 整数: // case可以有一个或多个
         语句;
         break;
    default:
        语句;
        break;
 }

如何结束switch语句:
     1.遇到break
     2.执行到switch对应的大括号的结束 }

Switch得条件表达式注意点

Switch的条件表达式必须是返回整数的表达式, 也就是说()中只能放整数。

或者写能够转换为整数的类型也可以, 例如char, 因为char类型可以转换为int类型, 所以写char也可以

switch ('A') {
        case 6:
            printf("6");
            break;
        case 8:
            printf("8");
            break;
        default:
            printf("other");
            break;
    }

case的取值

// Switch中, case后面只能放返回值是整数的表达式或者整数, 或者能够转换为整数的类型
    // case的取值不能重复
    // case后面不能放变量, 因为系统在编译的时候会对Switch后面所有的case进行优化, 会根据case后面的常量值, 生成一张取值表
    int number = 7;
    switch (6) {
        case 3 + 3:
            printf("6");
            break;
        case 'A':
            printf("8");
            break;
//        case number:
//            printf("8");
//            break;
        default:
            printf("other");
            break;
    }

default的位置问题

// Switch中的default可以随便放
    // 无论default写到什么地方, 它都会最后执行(只有前面所有的case都不满足的情况才会执行)
    // 只要某一个case满足, 那么后面所有的case和default都会失效
    // 同理: 只要default满足, 那么所有的case都会失效
    switch (20) {
        default:
            printf("other\n");
//            break;
        case 6:
            printf("6");
            break;
        case 8:
            printf("8");
            break;
    }

while循环

最简单的死循环
    while (1);

break

continue

do while

至少会执行依次循环体

for 循环

任何数值都有真假新

for (; 1; ) {
        printf("lnj");
    }

其实, 初始化表达式和循环后增量表达式可以写多条语句, 语句之间用,号连接

for (int i = 0, j = 0; i < 2; i++, j++)
    {
        printf("i = %i j = %i\n", i, j);
    }

死循环

for(;;); // 注意: for循环中的条件表达式默认为真

猜你喜欢

转载自blog.csdn.net/jinxin70/article/details/83217373
今日推荐