switch
块有条件地执行来自多个选择的一组语句。每个选择由case
语句指定。
评估的switch_expression
是一个标量或字符串。
评估的case_expression
是标量,标量或字符串的字符串或单元格数组。
switch
块测试每种情况,直到其中一种情况为真(true
)。以下情况是真的 -
- 对于数字,
eq(case_expression,switch_expression)
。 - 对于字符串,
strcmp(case_expression,switch_expression)
。 - 对于对象,支持
eq(case_expression,switch_expression)
。 - 对于单元格数组
case_expression
至少有一个。
当情况(case
)为真时,MATLAB会执行相应的语句,然后退出switch
块。
otherwise
块是可选的,并且仅在没有case
为真时执行。
语法
MATLAB中switch
语句的语法是 -
switch <switch_expression>
case <case_expression>
<statements>
case <case_expression>
<statements>
...
...
otherwise
<statements>
end
例子
创建脚本文件并在其中键入以下代码 -
grade = 'B';
switch(grade)
case 'A'
fprintf('Excellent!\n' );
case 'B'
fprintf('Well done\n' );
case 'C'
fprintf('Well done\n' );
case 'D'
fprintf('You passed\n' );
case 'F'
fprintf('Better try again\n' );
otherwise
fprintf('Invalid grade\n' );
end
执行上面示例代码,得到以下结果 -
Well done