switch语句的用法例子?switch用法
其实switch语句的用法例子的问题并不复杂,但是又很多的朋友都不太了解switch用法,因此呢,今天小编就来为大家分享switch语句的用法例子的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
switch语句的例子有哪些
通过判断学生成绩来展示switch语句的使用,目标:判断学生成绩的等级,90-100分为A级,80-89为B级,70-79为C级,60-69为D级,60以下不及格。
packagemain
import"fmt"
funcmain(){StudentGrade(-50)}
funcStudentGrade(g int){
switch{
caseg>=90&&g<=100:
fmt.Println("A等级")
caseg>=80&&g<90:
fmt.Println("B等级")
caseg>=70&&g<80:
fmt.Println("C等级")
caseg>=60&&g<70:
fmt.Println("D等级")
caseg>=0&&g<60:
fmt.Println("不及格")
default:
fmt.Println("输入的成绩有误!!!")
break
}
}
扩展资料
switch语句使用规则
1、switch语句中的expression是一个常量表达式,必须是一个整型或枚举类型。
2、在一个 switch中可以有任意数量的 case语句。每个 case后跟一个要比较的值和一个冒号。
3、case的constant-expression必须与 switch中的变量具有相同的数据类型,且必须是一个常量或字面量。
4、当被测试的变量等于 case中的常量时,case后跟的语句将被执行,直到遇到break语句为止。
5、当遇到break语句时,switch终止,控制流将跳转到 switch语句后的下一行。
6、不是每一个 case都需要包含break。如果 case语句不包含break,控制流将会继续后续的 case,直到遇到 break为止。
7、一个switch语句可以有一个可选的defaultcase,出现在 switch的结尾。default case可用于在上面所有 case都不为真时执行一个任务。default case中的break语句不是必需的。
switch case用法举例
Switch case语句一般形式是这样的
在使用switch case的时候一定要注意不要把break给漏写了,如果没有break的活,程序在执行完所对应的代码块后会顺序执行下面的语句直到程序结束或者遇到下一个break为止。当表达式的值和下面哪一个常量相等就会执行那个常量所对应的代码块,如果没有与表达式相等的常量时就会执行default下面的代码块。
当多个常量对应同一个代码块时,我们也可以这样使用switch case。
这样写的话无论你输入的是0还是1它结果都是执行的遇到break之前的代码块。当多种情况对应同一种输出时,把代码块相同的case可以直接放到一起,这样可以有效减少重复代码,节省时间提升开发效率。
同一个Switch语句,所有case子句中的常量值互不相同。
switch case在什么情况中使用比较好呢?
如果判断的具体数值不多,而且符合byte、short、char、int、String、枚举等几种类型时建议使用swtich语句。
执行规则
1.swich后面括号内的'表达式必须是整数类型.也就是说可以是 int型变量、 char型变量,也可以直接是整数或字符常量,哪伯是负数都可以,但绝对不可以是实数, float型变量、double型变量、小数常量通通不行,全部都是语法错误。
2) switich下的 case和 defaut必须用一对大括号{}括起来
你只想执行这一个case语句,不想执行其他case,那么就需要在这个case语句后面加上break,跳出swich语句.
3)当switch后面括号内“表达式”的值与某个case后面的"常量表达式"的值相等时.就执行此case后面的语句。执行完一个case后面的语句后,流程控制转移到下一个case缕续执行,如果你只想执行这一个case语句,不想执行其他case,那么就需要在这个case语句后面加上break,跳出switch语句。
再重申一下: switch是"选择"语句,不是“循环”语句。很多新手看到break就以为是循环语句,因为break一般给我们的印象都是跳出"循环",但break还有一个用法,就是跳出switch。
4)若所有的 case中的常量表达式的值都没有与 switch后面括号内"表达式的值相等的,就执行 defaul后面的语句, defaut是"默认的意思。知果 defauit是最后一条语句的话,那么其
后就可以不加 break,因为既然已经是最后一句了,则执行完后自然就退出 switch了。
5)每个 case后面"常量表达式"的值必须互不相同,否则就会出现互相矛盾的现象,而且这样写造成语法错误。
6)"case常量表达式只是起语句标号的作用,并不是在该处进行判断。在执行 switch语句时,根据 switch后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断解。
7)各个 case和 default的出现次序不影响执行结果,但从阅读的角度最好是按字母或数字的顺序写。
switch语句的用法
switch(表达式){
case常量表达式1:语句1;
case常量表达式2:语句2;
…
case常量表达式n:语句n;
default:语句n+1;
}
意思是先计算表达式的值,再逐个和case后的常量表达式比较,若不等则继续往下比较,若一直不等,则执行default后的语句;若等于某一个常量表达式,则从这个表达式后的语句开始执行,并执行后面所有case后的语句。
与if语句的不同:If语句中若判断为真则只执行这个判断后的语句,执行完就跳出if语句,不会执行其他if语句;
而switch语句不会在执行判断为真后的语句之后跳出循环,而是继续执行后面所有case语句。在每一case语句之后增加break语句,使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。
switch语句的用法例子和switch用法的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!