Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2011-04-29, 15:51   #1
shengmiaomiao
初级会员
 
注册日期: 2009-09-16
年龄: 37
帖子: 4
声望力: 0
shengmiaomiao 正向着好的方向发展
默认 switch case语句

这段程序的目的是找出s属于哪一个数组,如果s属于a,则d=1;s属于b,则d=2;s属于c,则d=3这个功能如何用switch实现?s是已知的
a=[1 2 3 5 6 8];
b=[10 11 13];
c=[15 16 78];
switch s
case {a}
d=1;
case {b}
d=2;
case {c}
d=3;
end
这段程序中无法进入case 语句,请问各位大侠该怎样实现啊?谢谢各位的帮助~~
shengmiaomiao 当前离线   回复时引用此帖
旧 2011-05-01, 15:10   #2
libralibra
初级会员
 
libralibra 的头像
 
注册日期: 2007-12-07
帖子: 22
声望力: 18
libralibra 正向着好的方向发展
默认 回复: switch case语句

这种情况就别switch啦,用if..else吧

代码:
a=[1 2 3 5 6 8];
b=[10 11 13];
c=[15 16 78];

s = 78; % 测试

if any(ismember(a,s))
    d=1;
elseif any(ismember(b,s))
    d=2;
elseif any(ismember(c,s))
    d=3;
end

d
__________________
接MATLAB图像处理项目,毕设.也可作vb作业.
QQ: 790404545
libralibra 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 15:20


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.