A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

每个"case"标号必须以"break"语句作为结束?我感觉是的

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

6 个回复

倒序浏览
是的,必须用break作结束

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
在C#中,每一个case语句都是必须要有一个break来结束,但是几个case语句可以共用同一个break,如下:
        int i=0;
            i = Console.Read();
            switch (i)
            {
                case 'a':
                case 'b':
                    Console.WriteLine("小于b");
                    break;
                case 'c':
                case 'd':
                case 'e':
                case 'f':
                    Console.WriteLine("大于b,小于等于f");
                    break;
                default:
                    Console.WriteLine("大于f,或者小于a");
                    break;
            }
在C/C++中,case语句后面可以有自己独特的处理语句,但是break不是必须的,它会根据适配的值,选择适当的case语句开始执行,直到遇到break语句,如果没有break语句,他会继续执行下一个case语句中的处理内容,直到switch语句块结束。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
for (int i = 0; i < 3; i++)
            {
               
                switch (i)
                {
                    case 0:
                        Console.WriteLine("0" );
                        continue;
                        //break;
                    case 1:
                        Console.WriteLine("1");
                        //continue;
                        break;
                    case 2:
                        Console.WriteLine("2");
                        //continue;
                        break;
                }
            }
这样可以用continue代替break

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
break不是必须的,如果你想让它继续顺序执行下面的语句就不用写break,不想执行了要跳出swith就写上break。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
定值判断switch-case
语法:
switch(表达式)                        
{
case 值1:语句块1;break;            
case 值2:语句块2;break;           
case 值3:语句块3;break;
……
default:语句块n;break;
}
表达式的值去匹配case后的值,若是值1,执行语句块1,若是值2,执行语句块2,若都不匹配执行语句块n

"每个"case"标号必须以"break"语句作为结束?我感觉是的"这个视情况而定,如3楼兄弟答案

if-else if 与 switch比较
相同点:都可以实现多分支结构
不同点:switch 一般用于等值比较
              if-else if 可以处理范围

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
不用break结束的话 ,他会一直匹配到dafalut才结束,后面讲运行不改运行的代码,有可能给程序带来致命的影响
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马