switch-case语句我用的不太多,但是在某些情况下它还是非常适用的。但是,对于我们这样的初学者,有些关于它的东西还是得弄明白。
#include<stdio.h>
int main()
{
int type;
scanf("%d",&type);
switch(type)
{
case 1:
printf("hello\n");
break;
case 2:
printf("good bye\n");
break;
case 3:
printf("good moning\n");
case 4:
printf("nice day\n");
break;
default:
printf("I don't known\n");
}
return 0;
}
当我们编程这段代码时,我并没有每个case后都加了break,那么运行会咋样呢?
当你分别给type赋初值为1,2,3,4,5时,你会发现在赋初值3时程序给出了case 3和case 4要打出的结果,而我在case 3后面没有加上break,这就是为什么程序没有在case 3的那里跳出switch语句。
也就是说当程序找到了你赋的初值所对应的语句后,它就会在哪里开始编译直到遇到break才会跳出switch。