分支语句switch课堂笔记总结

switch是分支语句,常用于多分支。

    语法形式

switch(整型表达式)

{

            语句项;——————如下:case整型常量表达式;

                                                                语句;

int main
{
    int day = 0
    scanf(“%d”,&day);
    switch (day)
    {
    case 1:
        printf (“星期1\n”);
    case 2:
        printf (“星期2\n”);
    case 3:
        printf (“星期3\n”);
    case 4:
        printf (“星期4\n”);
    case 5:
        printf (“星期5\n”);
    case 6:
        printf (“星期6\n”);
    case 7:
        printf (“星期天\n”);
}
return 0
}

如果是这样的代码,那么输入1就会出现星期1一直下去到星期天,没有人阻止它继续下去。

int main
{
    int day = 0
    scanf(“%d”,&day);
    switch (day)
    {
    case 1:
        printf (“星期1\n”);
    break;
    case 2:
        printf (“星期2\n”);
    break;
    case 3:
        printf (“星期3\n”);
    break;
    case 4:
        printf (“星期4\n”);
    break;
    case 5:
        printf (“星期5\n”);
    break;
    case 6:
        printf (“星期6\n”);
    break;
    case 7:
        printf (“星期天\n”);
    break;
}
return 0
}

如果是这样,输入数字X就会出现星期X。

        所以,我们得知,case决定入口,break决定出口

练习:如果我们输入1——5则出现工作日,输入6和7则出现休息日。

int main() 
{
    int day = 0;
    scanf(“%d”,&day);
    switch
    {
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:  
        printf(“工作日\n”);
    case 6:
    case 7: 
         printf(“休息日\n”); 
         break;           
    }
    return 0;
}
int main() 
{
    int day = 0;
    scanf(“%d”,&day);
    switch
    {
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:  
        printf(“工作日\n”);
    case 6:
    case 7: 
        printf(“休息日\n”); 
        break;           
    default:
        printf(“输入错误\n”);
        break;
     }
    return 0;
}


int main() 
{
    int day = 0;
    scanf(“%d”,&day);
    switch
    {
        default:
        printf(“输入错误\n”);
        break;
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:  
        printf(“工作日\n”);
        break;
    case 6:
    case 7: 
         printf(“休息日\n”); 
         break;           
    }
    return 0;
}

switch语句对位置不限。

作业:

请输入下面的结果

int main()
{
    int n = 1;
    int m = 2;
    switch (n)
    {
    case 1:m++;
    case 2:n++;
    case 3:
         switch(n)
         {//switch允许嵌套使用
         case 1:
             n++;
         case 2:
             m++;n++;
             break;
         }
    case 4:
        m++;
        break;
    default:
        break;
    }
    printf(“m = %d,n = %d\n,m,n”);
    return 0;
}

答案:m=5,n=3

分析:当进入    switch (n)时,因为n=1,所以从m++开始执行,之后执行n++,此时m=3,n=2;在case 3:switch(n)中,因为n=2,所以从case 2:m++;n++开始,此时m=4,n=3,再执行case 4,m=5,这是遇到了break,则这个switch语句结束,之后打印m=5,n=3。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值