写m如级高 计算机仿真与模拟自个靓 912 在 switch语句之后的表达式可以是一个数值类型表达式或 者是一个数值类型的变量,当这个表达式的值同case后面的某 一个常量表达式相等时,则执行该case后面的常量表达式后面 的语句。 注意: MATLAB的 switch和C语言的 switch语句结构不同。在C语 言中,每一个case后面的语句中必须包含类似 break语句的流 程控制语句,否则程序会依次执行符合条件的case语句后面的 每一个cas分支。但是在 MATLAB中就不必如此,程序仅仅执 行符合条件的case分支
第三章 matlab 提高 计算机仿真与模拟 在switch语句之后的表达式可以是一个数值类型表达式或 者是一个数值类型的变量,当这个表达式的值同case后面的某 一个常量表达式相等时,则执行该case后面的常量表达式后面 的语句。 注意: MATLAB的switch和C语言的switch语句结构不同。在C语 言中,每一个case后面的语句中必须包含类似break语句的流 程控制语句,否则程序会依次执行符合条件的case语句后面的 每一个case分支。但是在MATLAB中就不必如此,程序仅仅执 行符合条件的case分支
写m如级高 计算机仿真与模拟自个靓 912 例子3 switch结构使用示例_ switch examp. m 001 clear a ll 002 003 algorithm input('Enteran algorithm in quotes(ode23, ode15s, etc: )',S) 004 005 switch algorithm 006 case 'ode 23 007 str= 2nd/reorder 008 case 'ode15s,ode23s,) 009 str=stiff system 010 otherwise 011 str=other algorithm 012 ene 013 disp(str)
第三章 matlab 提高 计算机仿真与模拟 例子3 switch结构使用示例——switch_examp.m。 001 clear all 002 003 algorithm = input(‘Enter an algorithm in quotes (ode23, ode15s,etc:) ’ , ’s’); 004 005 switch algorithm 006 case 'ode23' 007 str = '2nd/3rd order'; 008 case {'ode15s', 'ode23s'} 009 str = 'stiff system'; 010 otherwise 011 str = 'other algorithm'; 012 end 013 disp(str);
写m如级高 计算机仿真与模拟自个靓 7912 该文件的运行方法和效果如下: > switch examp Enter an algorithm in quotes(ode23, ode15s, etc: )ode23 2nd/3rd order Switch examp Enter an algorithm in quotes(ode23, ode 15s, etc: )'ode4 other algorithm
第三章 matlab 提高 计算机仿真与模拟 该文件的运行方法和效果如下: >> switch_examp Enter an algorithm in quotes (ode23, ode15s, etc:) 'ode23' 2nd/3rd order >> switch_examp Enter an algorithm in quotes (ode23, ode15s, etc:) 'ode4' other algorithm
写m如级高 计算机仿真与模拟自个靓 例了3中需要用户在执行程序的过程中输入一个字符 switch语句根据用户的输入判断执行相应的case分支。若没有符 合条件的case分支,则 switch执行 otherwise后面的语句。若 switch结构中没有定义 otherwise及其相应的代码,则程序不会进 行任何操作,而是直接退出 switch结构 提示 在处理以字符串变量或者常量参与的关系判断操作时,使 用 switch结构要比 if-else结构效率高一些。 由于 MATLAB的 switch结构没有C语言的 fall-through特性, 所以,如果需要针对多个条件而使用同一个case分支的时候, 需要使用元胞数组与之配合,参见例子4
第三章 matlab 提高 计算机仿真与模拟 例子3中需要用户在执行程序的过程中输入一个字符串, switch语句根据用户的输入判断执行相应的case分支。若没有符 合条件的case分支,则switch执行otherwise后面的语句。若 switch结构中没有定义otherwise及其相应的代码,则程序不会进 行任何操作,而是直接退出switch结构。 提示: 在处理以字符串变量或者常量参与的关系判断操作时,使 用switch结构要比if-else结构效率高一些。 由于MATLAB的switch结构没有C语言的fall-through特性, 所以,如果需要针对多个条件而使用同一个case分支的时候, 需要使用元胞数组与之配合,参见例子4
写m如级高 计算机仿真与模拟自个靓 例子4 switch结构使用示例— switch examp2m 7912 001 clear all 002 003 var= input(Input a Numer 004 switch var 005 case 006 007 case{2,3,4} 008 disp (2 or 3 or 4) 009 case 010 disp( 5) 011 otherwise 012 disp(something else,) 013 end
第三章 matlab 提高 计算机仿真与模拟 例子4 switch结构使用示例——switch_examp2.m。 001 clear all 002 003 var = input('Input a Numer:'); 004 switch var 005 case 1 006 disp('1') 007 case {2,3,4} 008 disp('2 or 3 or 4') 009 case 5 010 disp('5') 011 otherwise 012 disp('something else') 013 end