3.3 选择结构2 用switch语句实现选择结构

写在前面:作者本人是纯纯的菜鸟,学习的内容来自于 中国大学MOOC 中南大学 《科学计算与MATLAB语言》,欢迎各位大佬或新手在这里和平讨论,如果我有错误请各位不吝赐教,提前感谢各位捧场!


switch语句的用法

switch 表达式
    case 结果表1
        语句组1
    case 结果表2
        语句组2
    ...
    case 结果表n-1
        语句组n-1
    otherwise
        语句组n
end

%switch语句按照1~n的顺序依次进行判断,直到结果表为真,执行对应的语句组中的命令
%当进行到任意一次判断结果为真时,无论是否满足剩下的结果表中的条件,都不会执行其他的语句组
%若判断n-1次还是没有真,则执行otherwise对应语句组
%结果表为是switch表达式的取值,当取值有多个时,用单元数据表示,表达式的值只要等于其中的某一个即可

例题:输入一个英文单词,判断其首字母是否为元音字母

思路:判断该字母储存在的字符c中第一个元素,使用switch语句

方案1:判断首字母是否存在以下字符;

c=input('请输入英文单词:','s');

%判断第一个字符
switch c(1)
    case {'A','E','I','O','U','a','e','i','o','u'}
        disp([c,'以元音字母开头'])
    otherwise
        disp([c,'以辅音字母开头'])
end

方案2:使用if语句,判断首字母在AEIOUaeiou组成的字符串中的具体位置,若存在,值必定大于1;若不存在,其值为0。

c=input('请输入英文单词:','s');

%第二种方案
if findstr(c(1),'AEIOUaeiou')>0
    disp([c,''以元音字母开头])
else
    disp([c,'以辅音字母开头'])
end

例题:PM2.5是指大气中直径小于或等于2.5微米的可入肺颗粒物,是衡量空气质量的重要指标。假定空气质量等级以PM2.5数值划分为6级。

PM2.5数值在[0,35)空气质量为优,[35,75)为良,[75,115)为轻度污染,[115,150)为中度污染,[150,250)为重度污染,大于等于250为严重污染。

编写程序,输入PM2.5数值,输出空气质量等级。

思路:因为PM2.5数值存在小数点,所以数据量非常庞大,因此在进行判断前可以用fix函数进行取整,将每种情况下的数值变少再进行判断。

g=input('请输入数据:');
switch fix(g)
    case num2cell(0:34)
        disp('优')
    case num2cell(35:74)
        disp('良')
    case num2cell(75:114)
        disp('轻度污染')
    case num2cell(115:149)
        disp('中度污染')
    case num2cell(150:249)
        disp('重度污染')
    otherwise
        disp('严重污染')
end

%num2cell 函数:将数值矩阵转化为单元矩阵,因为case的判断条件只能是单元数据

以上就是今天分享的全部内容了,再次感谢各位耐心看到这里!

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值