if和switch语句的区别和效率

发布时间:2019-08-15 14:25:40

C语言中if语句和switch语句的效率如何,有什么区别补充:优缺点上

推荐回答

还没有选出推荐答案,请稍候访问或查看其他回答!

其他回答

两个的用法都不一样,一般if是写一个条件,switch是列举一些值来判断,看你需要哪种类型的,这两个一般没有说谁效率高的,像楼上说的那种情况,只要是正常人都会选择用if来写啦。如果是像那个经典的例子判断分数段来显示优良中差的,相信也没几个会用if来写。

if语句每次都需要判断,而switch则只判断一次,所以switch快,但也要看情况,一般5个选项(包括default)的情况下,switch和if/else if相同。低于5个选项if快,高于5给选项switch快。1 两者本质的区别是if语句更适合于对区间(范围)的判断,而switch语句更适合于对离散值的判断。2 示例判断65分到85分之间的学生有哪些适合用if语句,因为[65,85]是区间。而判断一个学生的班级是一班、二班还是三班适合用switch语句,因为一班、二班、三班是离散值。3 扩展所有的switch语句都可以用if语句来替换(因为if语句只需对每个离散值分别做判断即可),而并不是所有的if语句都可以用switch语句来替换(因为区间里值的个数是无限的并且switch所接受的值只能是整型或枚举型,所以不能用case来一一列举)。

以上问题属网友观点,不代表本站立场,仅供参考!