C语言 的default 顺序

int c=3;
switch(c)
{
case 1:c++;
default:c++;
case 2:c++;
}
printf("c=%d\n",c);
输出为5
这里default:c++;什么意思

    default一般是在switch语句里面,比如:
    switch(a)//判断a
    {
    case 1:   .....break;
    case 2:   .....break;
    case 3:   .....break;
    default :  ....break;//它的作用是在比较a和下面的1、2、3之后都不一致就执行。当然如果都不满足也可以不去做任何事,所以就可以省略不用
    }

    一般来说default语句都是放在最后一个case,假如default语句最为switch语句一个第一个case的时候:
    1.如果没有任何case匹配的时候,才会执行default语句,而且如果default语句里面不含break,将顺序执行下去。
    2.如果有case语句匹配时,运行结果是和default放在switch的最后是一样的。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-13
switch中的语句如果没break;的话,后面的语句是会执行的,例中因为c=3,所以判断之后执行default语句,c=4了此时,因为default后面并没有用break中断,所以其后面的case 2;c++就好不判断的执行。但是如果你初始设置c=2时,因为一开始就跳到case 2;c++执行,虽然后面没有break中断,但是后面已经没语句了,所以答案会是3。本回答被提问者和网友采纳
第2个回答  2008-08-25
不是所有的CASE就是Default,因为default:c++后没有break,所以程序继续运行case2:c++.最后答案是

code Result
c=3 3
default:c++ 4
case2: c++ 5
end
假如有break
int c=3;
switch(c)
{
case 1:c++; break;
default:c++; break;
case 2:c++; break;
}
答案就是
code Result
c=3 3
default:c++ 4
end
第3个回答  2008-08-25
就是switch的值和所有case后面的值都不同时,执行default里的语句.
另外,这里的default没写break;所以会继续执行case 2里面的语句.所以c++执行了2次.
第4个回答  2008-08-25
你既然没有把default放在switch语句的最后,那就一定要在后面补一个break;
因为如果没有break;
他就继续往下执行。这时,case语句就只起到一个标号的作用。
所以此题执行了两次c++
所以输出5

c语言中default怎么用?
\/\/C语言是顺序执行的,接下来会执行break,表明switch完成,跳出switch MessageBox(_T("你好C"));break;} case 2:{ \/\/如果iInput=2,则会进入case 2,这时会执行 MessageBox(_T("C是最强大的"));\/\/C语言是顺序执行的,没有发现break;则会进入default条件,接下来执行MessageBox(_T("C是最强大...

default什么意思c语言详情
switch a case1case2default 通过这个式子,你应该就会明白,这个语句是自上而下运行的,最后那个default是前面两种情况不满足时运行的。默认的意思通常在 在 switchvar case stat1breakcase stat2breakcase stat3breakcase stat4breakdefaultbreak 就是出现了,你能预知的情况之外的情况,对应的处理具体。pr...

c语言switch语句中的default放在前面是不是先执行他后面的语句,再执行...
default:break;} 习惯上把default写在最下面,但实际上就像写在中间的case的顺序与结果无关一样,default的位置一样也和结果无关。当执行switch语句时,无论default位于哪个位置,都会先检查每个case是否与expr的值相同,如果相同,就会执行对应分支的case,全不相同情况下,才会执行default。

计算机C语言中的关键字:default是什么意思?
default关键字是switch-case语句中,表明默认case处理的语句。例如下面的例程:switch(u8Flag){ case 0x55: DoAAA(); break;case 0xAA: DoBBB(); break;default: DoCCC(); break;} 其功能是根据u8Flag的值进行不同的处理:若u8Flag==0x55,则执行DoAAA(),之后跳出switch-case并顺序执行后面...

C语言 的default 顺序
default一般是在switch语句里面,比如:switch(a)\/\/判断a{case 1: ...break;case 2: ...break;case 3: ...break;default : ...break;\/\/它的作用是在比较a和下面的1、2、3之后都不一致就执行。当然如果都不满足也可以不去做任何事,所以就可以省略不用} 一般来说default语句都...

C语言中default 放在最后一个case前面则如何执行?
在C语言中 ,无论default在switch语句中的哪个位置,编译器都会先找case,程序从第1个找到的case开始执行,如果所有的case都不满足条件,才会执行default。因此,default的位置可以随便放。但是出于编码规范考虑,一般写在最后。比如下面的代码,运行程序后,输入2,依然正常执行,而并没有因为default放在case...

C语言switch语句中的default、
default语句始终是最后执行。测试程序如下:include <stdio.h> int main(void){ int num;while (1){ printf("please input :\\n");scanf("%d",&num);switch(num){ case -1:printf("the value is -1\\n ");break;case 1:printf("the value is 1 \\n");break;case 0:printf("the ...

C语言中的default是什么意思,怎么用?
C语言中的default关键字是switch语句中的一个重要组成部分,它在遇到所有case语句都无法匹配给定表达式(e)结果时发挥作用。switch的结构如下:c switch(e) \/\/ e的表达式结果必须是整型数据 { case XX: \/\/ XX和YY是整型常量,包括char XX_statements;[break;] \/\/ 如果这里没有break,会顺序执行后续...

这个C语言题怎么做?default在第一行怎么办,执行完跳出去吗
无论 default 位置在前在后,都是先判断 各个case, 最后进 default。而是否跳出循环则看是break k=1 先匹配case 发现没有,执行default,c=1 但是此时没有break没有跳出循环 执行下一条语句,case 2 的 语句 c=1+1=2,跳出 当k=2是后 匹配case 2 ;c++ c=3 跳出switch ...

default什么意思c语言
一般来说default语句都是放在最后一个case,假如default语句最为switch语句一个第一个case,如果没有任何case匹配的时候,才会执行default语句,而且如果default语句里面不含break,将顺序执行下去。如果有case语句匹配时,运行结果是和default放在switch的最后是一样的。资料拓展:C语言是一门面向过程、抽象化的...

相似回答