MATLAB switch 语句

返回 MATLAB 决策


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

一个被求值的 switch_expression 是一个标量或字符串。

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

switch 块会依次测试每个 case,直到某个 case 成为 true。当 case 成为 true 时,有以下情况:

  • 对于数字,eq(case_expression,switch_expression) 为 true。
  • 对于字符串,strcmp(case_expression,switch_expression) 为 true。
  • 对于支持 eq(case_expression,switch_expression) 的对象,也为 true。
  • 对于单元数组 case_expression,至少有一个单元数组的元素与 switch_expression 匹配,如上所述,用于数字、字符串和对象。

当一个 case 成为 true 时,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 决策

查看笔记

扫码一下
查看教程更方便