MATLAB - switch 语句

switch 块有条件地执行多个选择中的一组语句。 每个选择都包含在一个 case 语句中。

计算的 switch_expression 是标量或字符串。

求值的 case_expression 是标量、字符串或者标量或字符串的单元数组。

switch 块测试每种情况,直到其中一种情况为 true。 A case is true when −

  • 对于数字,eq(case_expression,switch_expression)

  • 对于字符串,strcmp(case_expression,switch_expression)

  • 对于对象, eq(case_expression,switch_expression)

  • 对于单元数组 case_expression,单元数组中至少有一个元素与 switch_expression 匹配,如上面针对数字、字符串和对象所定义的那样。

当情况为真时,MATLAB 执行相应的语句,然后退出 switch 块。

otherwise 块是可选的,仅当没有 case 为 true 时才执行。

语法

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

❮ matlab_decisions.html