下面程序的运行结果是()。 main() {  int x=1,a=0,b=0;   swit

下面程序的运行结果是()。
main()
{  int x=1,a=0,b=0;
  swit下面程序的运行结果是()。
main()
{  int x=1,a=0,b=0;
  switch(x){
  case 0: b++;
  case 1: a++;
  case 2: a++;b++;
  }
  printf("a=%d,b=%d\\n",a,b);
}
A. a=2,b=1
B. a=1,b=1
C. a=1,b=0
D. a=2,b=2

B 没有break;不会跳出,一直执行
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-11-06
这很尴尬本回答被提问者采纳

java switch语句这个输出为什么不是2而是5?求指点
int a = 0, b = 1, s = 0;switch (a) {default:switch (b) {case 0:s += 1;default:s += 2;break;}case 2:s += 1;case 1:s += 3;break;case 3:s += 2;break;}System.out.println(s);这个时候s就等于6。执行的顺序是 1.switch(b)的default->s=2 2.switch(a)的...

swittch((int)(score\/10))此处数字10是什么意思?
不知道你所指的”错误”是编译错误,还是运行错误,不过有没有10都没有编译错误,只是运行可能会出现不希望的结果.这个程序其实就是按分数定等级:A,B,C,D,E60分以下为E (int)(score\/10)把score除以10,然后去掉小数部分取整数.来匹配switch中的case....

C++16进制循环结构转换为10进制(追加100)
n=ch-'A'+10;return n;} int main(){ int i=0,j=0,data[10];memset(data,0,10);char str[10],ch;ch=getchar();while(ch!='#'){ if(data[0]!=0)data[j++]=swit(ch);if(str[i-1]=='x')data[j++]=swit(ch);str[i]=ch;i++;ch=getchar();} int s=0;cout<<...

...n; " ";后面的双引号和最后的分号什么意思,为什么不加会有不一...
不加分号的话,打印完毕会自动换行,加分号表示打印完毕不换行。

相似回答