发布网友 发布时间:2022-04-23 07:56
共2个回答
热心网友 时间:2022-05-20 17:14
switch语句用于多分支选择, 其一般形式为:
switch(表达式){
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
…
case 常量表达式n: 语句n;
default: 语句n+1;
}
其语义是:计算表达式的值。 并逐个与case后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行case后的语句,然后不再进行判断,继续执行后面所有case后的语句,直到遇到break或switch语句结束。如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。
break专用于跳出switch语句,break 语句只有关键字break,没有参数。
#include <stdio.h>在使用switch语句时还应注意以下几点:
在case后的各常量表达式的值不能相同,否则会出现错误。
在case后,允许有多个语句,可以不用{}括起来。
各case和default子句的先后顺序可以变动,而不会影响程序执行结果。
default子句可以省略不用。
热心网友 时间:2022-05-20 18:32
在C语言中break的意思就是执行到这一步下面的都不执行了。
比如从case 1开始执行,如果没break,则下面的语句都会执行,直到遇到下一个break或者当前代码块运行完毕。下面以学生管理系统的代码块为例。
int main(){
while(true){
int cmd;
printMenu();
scanf("%d",&cmd);
switch(cmd){
case 0:exit(0); break;
case 1:addAthlete();break;
case 2:alterAthelete();break;
case 3:searchAthlete();break;
case 4:printStudentList();break;
case 5:sortAthelete();break;
default:printf("非法命令\n");break;
}
}
return 0;
}
在上述代码中每选择case后就会执行函数,执行完后会结束这个case;但是不会结束程序,而在case0中exit(0)才会结束程序。