MATLAB - switch 语句



switch 块根据条件从多个选项中执行一组语句。每个选项都由一个 case 语句覆盖。

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

计算后的 case_expression 是一个标量、字符串或标量或字符串的元胞数组。

switch 块测试每个 case,直到其中一个 case 为真。当以下情况发生时,case 为真:−

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

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

  • 对于支持 eq(case_expression,switch_expression) 的对象。

  • 对于元胞数组 case_expression,元胞数组的至少一个元素与 switch_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
matlab_decisions.htm
广告