文档

转变,案例,否则

执行几组语句中的一组

语法

转变开关表达式案例case_表达式陈述案例case_表达式陈述... 否则陈述结束

描述

例子

转变开关表达式案例case_表达式,完计算表达式并选择执行多组语句之一。每个选择都是一个案例。

这个转变块测试每个案例,直到其中一个案例表达式为真。在下列情况下,情况为真:

  • 对于数字,case_表达式==开关表达式.

  • 对于字符向量,strcmp(case_表达式,开关表达式) == 1.

  • 对于支持金宝app情商功能,case_表达式==开关表达式.

  • 对于单元数组case_表达式,单元格数组中至少有一个元素匹配开关表达式,如上文对数字、字符向量和对象的定义。

当案例表达式为真时,MATLAB®执行相应的语句并退出转变

评价开关表达式必须是标量或字符向量。评价case_表达式必须是标量、字符向量或标量或字符向量的单元格数组。

这个否则块是可选的。MATLAB仅在没有任何情况为真时才执行这些语句。

例子

全部崩溃

根据在命令提示下输入的值,有条件地显示不同的文本。

n=输入('输入一个数字:');转变N案例-1显示(“负一”)案例0显示('零')案例1显示(“积极的一面”)否则disp('其他价值')结束

在命令提示下,输入数字1。

正数

重复代码并输入数字3。

其他价值

根据的值确定要创建的打印类型打印类型. 如果打印类型要么“馅饼”要么'pie3',创建一个三维饼图。使用单元格数组包含这两个值。

x=[12 64 24];打印类型='pie3';转变打印类型案例“酒吧”酒吧(x)标题(“条形图”)案例{“馅饼”,'pie3'}pie3(x)标题(“饼图”)否则警告('意外的打印类型。没有创建任何情节。”)结束

提示

  • A.case_表达式不能包含关系运算符,例如<要么>以便与开关表达式. 要测试不平等性,请使用如果,elseif,else声明。

  • MATLAB转变语句不像C语言那样失败转变陈述如果第一个案例声明是真的,Matlab没有执行另一个案例声明。例如:

    结果= 52;转变(结果)案例52显示(“结果是52”)案例{52,78}disp(“结果是52或78”)结束
    结果是52
  • 定义特定情况下代码所需的所有变量。因为MATLAB只执行一种情况转变语句中定义的变量不适用于其他情况。例如,如果当前工作区不包含变量x,仅定义x您可以使用它:

    转变选择案例1 x=-pi:0.01:pi;案例2.%对x一无所知结束
  • 不要使用打破内部声明转变打破未在外部定义对于要么虽然

扩展能力

在R2006a之前引入

这个话题有用吗?