main() { int x=1,a=0,b=0; switch(x){ case 0:b++; case 1:a++;

1个回答

  • 1. switch结构分支没加break;跳出语句,开始执行后,程序由x=1调到case 1 分支 a++(a由0自己加为1),由于没有break语句,程序继续执行到case 2 分支 a++ b++(a由1自加变2,b由0自加为1),之后程序printf输出 a=2 ,b=1

    2.添加break后,结果是a=1,b=0

    #include "stdio.h"

    main()

    {

    x09int x=1,a=0,b=0;

    x09switch(x)

    x09{ case 0 : b++ ; break ;

    x09 case 1 : a++ ; break ;

    x09 case 2 : a++ ; b++ ; break ;

    x09}

    printf("a=%d,b=%dn",a,b);

    }