switch结构实例(1)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

switch 结构实例

switch 结构是另一种形式的选择结构。程序员可以根据一个单精度整形数,字符或逻辑表达式的值来选择执行特定的代码语句块。

switch (switch_expr)

case case_expr_1,

⎭⎬⎫Statement 1Statement 2...

Block 1 case case_expr_2

⎭⎬⎫Statement 1Statement 2...

Block 2 ...

otherwise,

⎭⎬⎫Statement 1Statement 2...

Block n end

如果switch_expr 的值与case_expr_1相符,那么第一个代码块将会被执行,然后程序将会跳到switch 结构后的第一个语句。如果switch_expr 的值与case_expr_2相符,那么第二个代码块将会被执行,然后程序将会跳到switch 结构后的第一个语句。在这个结构中,用相同的方法来对待其他的情况。otherwise 语句块是可选的。如果它存在的话,当switch_expr 的值与其他所有的选项都不相符时,这个语句块将会被执行。如果它不存在,且witch_expr 的值与其他所有的选项都不相符,那么这个结构中的任何一个语句块都不会被执行。这种情况下的结果可以看作没有选择结构,直接执行MA TLAB 语言。

如果说switch_expr 有很多值可以导致相同代码的执行,那么这些值可以括在同一括号内,如下所示。如果这个switch 表达式和表中任何一个表达式相匹配,那么这个语句块将会被执行。

switch (switch_expr)

case {case_expr_1, case_expr_2, case_expr_3},

⎭⎬⎫Statement 1Statement 2...

Block 1 otherwise,

⎭⎬⎫Statement 1Statement 2...

Block n end

switch_expr 和每一个case_expr 既可以是数值,也可以是字符值。

注意在大多情况下只有一个语句块会被执行。当一个语句块被执行后,编译器就会跳到end 语句后的第一个语句开始执行。如果switch 表达和多个case 表达式相对应,那么只有他们中的第一个将会被执行。

例:

下面的语句用来判断1到10之间的数是奇数还是偶数。它用来说明一系列的case 选项值的应用和otherwise 语块的应用。

switch (value)

case {1, 3, 5, 7, 9},

disp('The value is odd.');

case {2, 4, 6, 8, 10},

disp('The value is even.');

otherwise,

disp('The value is out of range.'); end

相关文档
最新文档