这是代码
#include<stdio.h>
int main()
{
int a=1;
switch(a)
{
case 1:
printf("Case A");
default: printf("Default");
}
}
输出: 案例A默认
为什么打印默认情况?
答案 0 :(得分:5)
case 1
之后没有break语句,因此控制执行default
语句。
switch(a)
{
case 1: printf("Case A");
break;
default: printf("Default");
}
答案 1 :(得分:1)
您尚未为case1
添加break语句。
case 1:
printf("Case A");
break;
答案 2 :(得分:0)
请尝试这些:
switch(a)
{
case 1: printf("Case A");
break;
default: printf("Default");
}
它的工作方式如下:switch计算表达式并检查它是否等于1;如果是,则执行printf(“案例A”);直到它找到break语句。当它找到这个break语句时,程序跳转到整个switch语句的结尾(结束括号)。 参考:http://www.cplusplus.com/doc/tutorial/control/
答案 3 :(得分:0)
正如其他人提到的那样,你忘了发表一份中断声明 break语句是阻止其他情况被使用的原因。
switch(a)
{
case 1: printf("Case A");
case 2: printf("Case B");
break;
default: printf("Default Case");
}
有人说它有时会很有用。如果你想要两个案例,那么在交换机中运行就可以完成这个任务:
total
在这个例子中,1产生“Case ACaseB”而2产生“Case B”。