C语言switch语句必须包含default分支吗

如题所述

    不!但是为了进行错误检查或逻辑检查,还是应该在switch语句中加入default分支。

    例如,下述switch语句完全合法:

    switch (char_code)
    {
          case tyt:
          case 'y': printf ( " You answered YES ! \n" )
               break
          case 'N':
          case 'n': printf ("You answered NO!\n");
               break
    }

    但是,如果一个未知字符被传递给这条switch语句,会出现什么情况呢?这时,程序将没有任何输出。因此,最好还是加入一个default分支,以处理这种情况:

    ......
    default: printf ("Unknown response : %d\n", char_code);
              break
    ......

    此外,default分支能给逻辑检查带来很多方便。例如,如果用switch语句来处理数目固定的条件,而且认为这些条件之外的值都属于逻辑错误,那么可以加入一个default分支来辨识逻辑错误。

    请看下列:

    void move_cursor (int direction)
    {
         switch (direction)
         {
               case UP:     cursor_up()
                                break
               case DOWN:   cursor_down()
                                break
               case LEFT:   cursor_left ()
                                break
               case RIGHT:  cursor_ right ( )
                                 break
               default:     printf ("Logic error on line number %ld!!! \n",
                                         __ LINE__ )
                                 break
         }
    }

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-10-14
不一定,default相当于if语句的else,用来执行当那些情况都不行的时候的选择,如果你的switch语句选择你知道就是那些情况,就不用使用default,但是为了出现什么突发状况,还是加上比较好本回答被提问者采纳

C语言switch语句必须包含default分支吗
不!但是为了进行错误检查或逻辑检查,还是应该在switch语句中加入default分支。 例如,下述switch语句完全合法:default: printf ("Unknown response : %d\\n", char_code);break此外,default分支能给逻辑检查带来很多方便。例如,如果用switch语句来处理数目固定的条件,而且认为这些条件之外的值都属于逻辑错...

C语言switch语句必须包含default分支吗
不一定需要。default语句是为了处理switch开关变量不再所列出的case标签中时的情况。假如,你的switch选择变量在进入switch之前就做了检查处理,或者你根本不在乎意外情况的出现,那么,default就不需要了。但是,作为统一约定和代码的安全,建议都加上default语句。还有一点是:default语句后不需要加上break语句...

C语言switch语句必须包含default分支吗
因此,虽然default语句不是必须的(不带default语句,一样能编译通过),但是,程序的完整性存在问题,一旦条件不满足,不知道会出现什么错误。其实就像人的思维,闭合的思维是最完整有效的,你非得开一个口子,那别人也没办法,除了嘲笑一下完事,还能做什么呢。

c语言中的switch语句,使用时应注意哪些?
即使程序真的不需要default 处理,也应该保留语句 default : break; 这样做并非多此一举,而是为了防止别人误以为你忘了default 处理。 【规则3】 在使用switch语句时,不管case分支中有几条语句,都是用”{}”将其括起来。 课本上的 华为c8812使用时应注意哪些? 东西买来就是用,别拿来摔就好,一般手机质量最好的...

default什么意思c语言
在c语言中,default只用在switch语句中,代表默认处理,代表着默认值,default的作用就是switch语句里所有的case都不成立时所要执行的语句,default关键字用来标记switch语句中的默认分支。一般来说default语句都是放在最后一个case,假如default语句最为switch语句一个第一个case,如果没有任何case匹配的时候,...

在c语言中default是什么意思?
在C语言中,switch语句可以用于多个条件的判断,其中会有一个default分支,表示如果所有条件都不匹配时,就执行这个分支中的代码块。default是可选的,如果省略了它,在所有条件都不匹配时,程序就会直接跳出switch语句,如果有default分支则会执行该分支。default用于异常处理 除了在switch语句中使用外,default...

C语言switch语句必须包含default分支吗
由于每个case语句的代号都是常量,因此,如果你输入的数或字符在case语句中有的话,那么没问题。如果你输入了所有case语句中条件判断所不包含的数或字符,那么,就不知道会出现什么问题。因此,虽然default语句不是必须的(不带default语句,一样能编译通过),但是,程序的完整性存在问题,一旦条件不满足,...

为什么c语言里的switch语句要加default?
default的作用就是switch语句里所有的case都不成立时所要执行的语句。default关键字用来标记switch语句中的默认分支。-示例- intarg=<somevalue>;switch(arg){ case1:<statements> break;case2:<statements> break;default:<statements> break;} -注释- default块没有隐式结束点。break语句通常在每个case...

c语言switch的用法
在C语言中,switch语句是开关语句,一般与case、break、default配合使用,对流程进行控制。switch作为一个开关,当变量表达式的值对应case中的值时,执行case后面的语句后跳出switch语句,如果都不符合则执行default后面的语句后跳出switch语句。switch语句用法规则:1.在一个switch中可以有任意数量的case语句。

c语言switch语句中default是什么意思?
switch语句是一种在C语言中常用的流程控制语句,用于根据不同的条件执行不同的代码块。这个结构通常包含一个或多个case标签和一个可选的default标签。default标签是switch语句中的一个可选部分,用于在所有case标签都不匹配时执行特定操作。如果在switch语句中没有匹配任何case标签,则会执行default标签相关的...

相似回答