Arduino初学者小补C语言,分支与循环

一.switch case语句
1.1基本用法

#include<stido.h>
int main()
{
  switch(整型表达式)//

    case 整型常量表达式:   //注意这里和上面不同,既要是整型类型又要为常量
      执行内容  
      break;             
    case 整型常量表达式:
      执行内容
      break; 
    default:
      执行内容;
      break;
}
return 0;
}

讲解

先定义变量,输入switch(),这部分是主干部分,switch(变量)后面加一个大括号。大括号就写判断内容了,case可以是很多个,来实现无限分支,后面跟判断的内容

在case常量表达式1:语句段,语句段写的是需要执行的语句3、在写完语句段之后,加分号,在加break;这样才能保证程序的正常进行,如果只想执行对应的一条 case 语句的话,就要在其后面加入 break 语句来跳出 switch case语句

default 语句的逻辑是当所有 case 语句都不符合时,就会进入 default 语句(default是任何情况下都能进入的),它是可有可无的,不加也不会出现任何语法错误,并且放在任何地方的效果都是一样的。

来看看它的作用

#include<stdio.h>
int main()
{
   int day = 0;
   scanf("%d",&day);
   switch(day)
{
     case 1:
     printf("星期一\n");
     break;
     
     case 2:
     printf("星期二\n");
     break;
     
     case 3:
     printf("星期三\n");
     break;
     
     case 4:
     printf("星期四\n");
     break;
     
     case 5:
     printf("星期五\n");
     break;
     
     case 6:
     printf("星期六\n");
     break;
     
     case 7:
     printf("星期天\n");
     break;
     
     default :
     printf("请重新输入\n");
     break;
}
return 0;
}


代码效果如下
但此时假若你输入的 switch 后面的整型表达式是不符合任何一个语句的时候,根据我们上面提到此时程序就应该走到 default 语句里面,所以这时候就会在屏幕上打印出"请重新输入" ,就能达到提示我们输入的表达式不匹配的效果。

1.2多分支与嵌套
多分支这点,case语句越多当然分支就多了。

#include<stdio.h>
int main()
{   int a=2;
    switch(a)
  {
      case 1:
      printf("one\n");
      break;
      
      case 2:
      ++a;       \\这里的意思是先使 a+1 ,再使用变化后的值   
      switch(a)  \\这里就是嵌套了,将switch case 语句嵌套在case 2 的执行内容中
    {
        case 2:
        printf("two\n");
        break;
        
        case 3:
        printf("three\n");
             
        case 4:
        printf("four\n");
        break;
    }
      break;
      default :
      break;
  }
    return 0;
}

这样的效果出来是

three

four

可以发现嵌套语句 case 3 执行内容后面是没有加 break

所以会一直执行完 case 4 语句直到遇到 break 为止。

一起加油!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

请在此处输入你的昵称

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值