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
廣告