以下哪个switch-case是错误的?
A.boolean b; switch (b) { case...}
B.int i; switch (i) { case...}
C.String s; switch (s) { case...}
D.char c; switch (c) { case...}
- · 有3位网友选择 B,占比33.33%
- · 有2位网友选择 A,占比22.22%
- · 有2位网友选择 D,占比22.22%
- · 有2位网友选择 C,占比22.22%
A.boolean b; switch (b) { case...}
B.int i; switch (i) { case...}
C.String s; switch (s) { case...}
D.char c; switch (c) { case...}
B.在when/else中,关键宇switch被when取代。
C.在when/else中,判断语句“case 常量值:”被新语句“常量值 ->”取代。
D.在when/else中,每个分支后面的break语句取消了,因为Kotlin默认一个分支处理完就直接跳出多路 语句,所以不再需要break。
A、3
B、4
C、6
D、程序运行有错
A、当case中出现的条件取值范围较小时,可以用跳转表的方式实现
B、每个case 至少对应一条条件转移指令,因而一定会包含多条条件转移指令
C、当case的条件值相差较大时,编译器还是生成分段跳转代码,不会采用跳转表的方式进行跳转
D、可以用连续的if ~ else ~ if ~ else ~ if …语句对应的机器代码来实现switch语句
A、Three
B、Over
C、Three Over
D、One Two Three Over
A、4
B、5
C、6
D、7
E、8
F、9
G、11
H、0
A、case后的“常量表达式”的类型只能是整型。
B、若case后面的语句省略不写,则表示它什么也不做。
C、switch语句中的break和default可有可无。
D、每个case后的“常量表达式”的类型应该与switch后括号内表达式的类型一致。
E、程序执行到switch语句时,先计算表达式的值,然后自上而下寻找与该值匹配的case常量,找到后则按顺序执行此case后的所有语句,而不再进行判断,直到遇break语句或右花括号}为止。
F、若所有的case常量都不能与表达式的值相匹配,那么就执行default后面的语句。通常用于处理不在合理区间内的非法数据。
G、每个case后的常量只起语句标号的作用,所以case常量的值必须互不相同,而且在每个case的语句序列后都有break的情况下,改变case常量出现的次序,不影响程序的运行结果。
H、case后面的表达式不能是含有变量的关系表达式和逻辑表达式,它不能像if语句那样起到判断表达式真假的作用。
A、scanf(“%d%o%f”, &a,&b,&x);
B、scanf(“%3d%*3d%lf”,&a,&b,&x);
C、scanf(“%o%f%lo”,&a,&b);
D、scanf(“%ld%lo%o”,&a,&b,&x);
A、在switch-case语句中,终止一个语句序列
B、可作为一种先进的goto语句
C、退出一个循环体(break所在的循环全部推出)
D、一个循环中不能有一个以上的break语句
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!