matlab 中if和switch的差别是什么?

我现在才初学,感觉很多问题两个方程都能解决。。。。
2025-03-23 02:48:47
推荐回答(3个)
回答1:

if转移结构
if 表达式1
语句1
elseif 表达式2
语句2
...
else
语句n
end
程序先判断表达式1 ,若成立,执行语句1,终止(即使后面条件成立);若1不成立,对语句2判断,...,若所有都不成立,执行语句n。当然else 语句n可省略。

switch开关结构
switch 表达式
case 常量表达式1
语句组1
case 常量表达式2
语句组2
...
otherwise
语句组n+1
end

matlab中当其中一个case为真时,switch-case不对下边的case进行判断,即使满足条件。这样不用C中的case后加break语句。
与if不同,各个case与otherwise先后顺序不会影响程序结果。

回答2:

if转移结构
if 表达式1
语句1
elseif 表达式2
语句2
...
else
语句n
end
程序先判断表达式1 ,若成立,执行语句1,终止(即使后面条件成立);若1不成立,对语句2判断,...,若所有都不成立,执行语句n。当然else 语句n可省略。

switch开关结构
switch 表达式
case 常量表达式1
语句组1
case 常量表达式2
语句组2
...
otherwise
语句组n+1
end

matlab中当其中一个case为真时,switch-case不对下边的case进行判断,即使满足条件。这样不用C中的case后加break语句。
与if不同,各个case与otherwise先后顺序不会影响程序结果。

回答3:

if是适用于比较简单的选择项,两三个那种,switch适合多项的,六七个,十来个之类的