C语言switch的问题

来源:百度知道 编辑:UC知道 时间:2024/05/17 06:43:47
请问下边这个程序会输出什么??为什么输出这个呢?

#include<stdio.h>
main90
{int x=1,a=0,b=0;
seitch(x){
case 0: b++;
case 1: a++;
case 2: a++;b++;
}
printf("a=5d,b=%d\n",a,b);
}

结果为a=2,b=1因为switch里面没有含有break所以执行完case1后继续执行case2a 一共++了2次,b 一共++了1次

因为没有break

所以执行case 1: a++;
case 2: a++;b++;
所以结果为a=2,b=1

好多拼写错误~先执行case 1: a++;
case 2: a++;b++;
所以结果为a=2,b=1
你没有break语句,所以a++了两次,b++了一次,结果是a=2,b=1.