C语言中if else语句与switch语句区别

如题所述

1 两者本质的区别是 if-else语句更适合于对区间(范围)的判断,而switch语句更适合于对离散值的判断
2 示例
判断65分到85分之间的学生有哪些适合用if-else语句,因为[65,85]是区间
而判断一个学生的班级是一班、二班还是三班适合用switch语句,因为一班、二班、三班是离散值
3 扩展
所有的switch语句都可以用if-else语句来替换(因为if-else语句只需对每个离散值分别做判断即可),而并不是所有的if-else语句都可以用switch语句来替换(因为区间里值的个数是无限的并且switch所接受的值只能是整型或枚举型,所以不能用case来一一列举)。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-10-22
if else 与 switch 可以相互转化,不过有时switch看起来比较好理解。有时有用if else比较好,但变量一定是用switch比较好,当变量不确定时用if else就比较好,慢慢学习就掌握了。~~~~本回答被提问者采纳
第2个回答  2011-10-22
switch用来根据一个整型值进行多路分支,并且编译器可以对多路分支进行优化,所以在多路分支时用switch比if..else if .. else结构要效率高。

C语言中if else语句与switch语句的区别在哪里?
1 两者本质的区别是 if-else语句更适合于对区间(范围)的判断,而switch语句更适合于对离散值的判断 2 示例 判断65分到85分之间的学生有哪些适合用if-else语句,因为[65,85]是区间 而判断一个学生的班级是一班、二班还是三班适合用switch语句,因为一班、二班、三班是离散值 3 扩展 所有的switc...

if语句和switch语句的区别有哪些?
if语句可以针对表达式的值进行计算和比较,而switch语句只能针对常量进行比较。switch语句的每个分支都有自己的缩进,更容易阅读和维护,而if语句可能需要更多的括号和缩进来实现同样的效果。if语句可以配合三元运算符使用,而switch语句不可以。总的来说,if语句更适合实现复杂的条件判断和转换,而switch语句更...

C语言中if和switch有什么区别?
if和switch的主要区别如下:1)if的括号内的表达式可以分别是布尔类型的合法表达式、可以是所有大于0的正整数为true,反之为小于等于0的正整数为false、可以是常量、枚举;而switch括号内也符合前面if提到的外,就是当圆括号内为正整数只能是0或1,其它的正整数属于 default范围。这点可以看如下代码:switc...

【揭秘】为什么switch...case比if...else执行效率高
在C语言编程中,switch...case...语句通常被认为比if...else if...else语句执行效率更高。尽管教科书如此教导,但其中的原因却鲜为人知。本文将深入探讨这一现象,并从汇编角度揭示其背后的奥秘。switch...case...与if...else...的根本区别在于,switch...case...会生成一个跳转表来指示实际ca...

c语言里面if和switch哪个效率高?同样比较整数的话
看情况。if判断条件,处理逻辑表达式。switch 通常处理算术表达式,或字符,当它等于什么什么,转向做什么。switch相当开关 如果“比较整数”,i1 是否大于 i2, 当然用if 如果决定转向,例如 i=1 画直线,i=2 画曲线,i=3 画圆,i=4 画虚线直线, i=5 画虚线曲线, i=6 画长方形 i=其他值 ...

C语言的分支语句有哪几种?C语言分支结构的基本形式是什么,区别是什么...
C语言中的分支结构有三种:1、单分支结构 单分支结构的基本形式是:if( <条件表达式> ){ (语句块)} 2、双分支结构 双分支结构的基本形式是:if( <条件表达式> ){ 语句块1;} else { 语句块2;} 3、多分支结构 多分支结构又分为:“分支结构的嵌套”与“switch语句”(1)分支结构的嵌套的...

C语言中switch和if的适用方面有什么区别
else if(a==c) \/\/ case c { } else \/\/default.{ } 但是switch 语句,仅能够处理整型数值,即switch()括号中的判断的值,必须是整型的,而且每个case后面跟的值,也必须是整型的。另外,对于大规模的连续数值,比如if(a>=1 && a<=100) 这样的语句,要用switch则需要连续写100个case,这种...

c语言里面if和switch哪个效率高?同样比较整数的话
最主要的还要看程序怎么写。不过switch看起来比较简洁,如果符合哪个条件就转向谁!if的话,如果是多层嵌套判断的话就比较麻烦了!

switch语句是什么意思?和if语句有什么区别?
语句n, default: 语句n+1。switch 是分支语句,就是比较强大的if集;default为不满足所有的switch条件则后面的句子被执行。一般将default写在switch中的最后。C语言虽然没有限制 if else 能够处理的分支数量,但当分支过多时;用 if else 处理会不太方便,而且容易出现 if else 配对出错的情况。

C语言程序设计
第二,一般来说,每个case中代码段后都必须有一个break;第三,case之后一般都会有default,虽然语法上允许没有default,但是建议写代码时一定要写;(3) if else和switch case的区别:if else适合对比条件较复杂,但是分支比较少的情况,switch case适合那种对比条件简单,但是分支较多的情况;通常的做法是...

相似回答