switch分支
Posted wx6235761444879
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了switch分支相关的知识,希望对你有一定的参考价值。
简单来看看switch分支的结构
switch(整形表达式)//在英语中switch 是判断的意思
语句项;
有没有发现这里不是语句,而是语句项。那么语句项是什么意思呢?
语句项就是case语句,下面我们来写一段代码感受感受
int main()
int day = 0;
scanf("%d\\n",&day);
switch(day)
case 1://情况1
printf("星期一\\n");
break;
case 2://情况2
printf("星期二\\n");
break;
case 3://情况3
printf("星期三\\n");
break;
case 4://情况4
printf("星期四\\n");
break;
case 5://情况5
printf("星期五\\n");
break;
case 6://情况6
printf("星期六\\n");
break;
case 7://情况7
printf("星期七\\n");
break;
return 0;
怎么来理解呢?这个case到底是个啥,起初我也不知道,这个例子就可以很好的说明case是干啥的,好,来,走
看到这每个情况,case里面的代码块都是一样的内容,可以省吗,又怎么去省呢?
来,走
//switch分支省略
int main()
int day = 0;
scanf("%d\\n",&day);
switch(day)
case 1:
case 2:
case 3:
case 4:
case 5:
printf("工作日\\n");
break;
case 6:
case 7:
printf("休息日\\n");
break;
default://default是默认的意思
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++;
case 4:
m++;
default:
break;
printf("m=%d,n=%d\\n",m,n);
return 0;
自己先想一想思路,想想是否符合逻辑,再看下面的思路
总结:switch分支中case和break,default
case的理解至关重要,switch分支整型表达式中的值就应case n;然后从case n 这里开始向下执行,并不是一一对应关系,并不是输入多少就答应case n这种情况。
另外注意switch 分支是可以嵌套的
感谢观看!慢慢改进,让我的博客易懂也更有意思
以上是关于switch分支的主要内容,如果未能解决你的问题,请参考以下文章