matlab中switch case语句例子
在Matlab中,switch case语句用于根据不同的条件执行不同的代码块。它可以比较一个变量的值与一系列的情况,并根据匹配结果执行相应的代码。本文将详细介绍Matlab中switch case语句的用法,以及提供一些例子帮助读者更好地理解。
一、基本用法
switch case语句的基本结构如下:
switch expression
    case case_expression
        statements
    case case_expression
        statements
    ...
    otherwise
        statements
end
其中,expression是要进行比较的变量或表达式,而case_expression是与expression进行比较的值。
在执行过程中,首先计算expression的值,然后将其与case_expression逐一进行比较。当expression与某个case_expression相等时,将执行对应的statements。如果没有与expression匹配的case_expression,就执行otherwise中的statements(否则情况下可省略otherwise)。
为了避免冗余,Matlab中的switch case语句中,通常不需要在每个case之后使用'break'语句,因为每个case执行完毕后会自动跳出switch case语句。如果需要继续执行后面的case,可以使用'continue'语句。
二、例子
为了更好地理解switch case语句的用法,下面将演示几个例子。假设我们要根据一周中的某一天输出相应的信息。首先定义一个变量day表示星期几,然后使用switch case语句根据day的值输出相应的字符串。
matlab
day = 3;
switch day
    case 1
        disp('星期一');
    case 2
        disp('星期二');
    case 3
        disp('星期三');
    case 4
switch语句表示范围        disp('星期四');
    case 5
        disp('星期五');
    case 6
        disp('星期六');
    case 7
        disp('星期日');
    otherwise
        disp('输入错误');
end
在上面的例子中,day的值为3,所以会执行第三个case,输出'星期三'。如果我们将day的值改为10,就会执行otherwise中的语句,输出'输入错误'。
在switch case语句中,case_expression可以是一个值,也可以是一个范围。接下来,我们来演示一个根据分数输出等级的例子。假设我们的分数按照以下规则进行划分:
90以上:优秀
80-89:良好
70-79:中等
60-69:及格
60以下:不及格
为了实现这个功能,我们定义一个变量score表示分数,并使用switch case语句来输出对应的等级。
matlab
score = 75;
switch score
    case 90:100
        disp('优秀');
    case 80:89
        disp('良好');
    case 70:79
        disp('中等');
    case 60:69
        disp('及格');
    otherwise
        disp('不及格');
end
在上面的例子中,score的值为75,会执行第三个case,输出'中等'。
除了常数值,case_expression还可以是字符串。接下来展示一个根据输入的动物名称输出相应的声音的例子。