- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验五 第3章 MATLAB程序设计
第二节程序控制结构
三、选择结构
选择结构是根据给定的条件成立或不成立,分别执行不同的语 句.Matlab用于实现选择结构的语句有
条件语句:if -end 和 开关语句:switch-end .
1.单分支结构if
1.单分支结构if—end语句
if-end语句的格式为:
if 条件表达式
语句组
end
3.多分支结构if — elseif —
2.双分支结构if—elsaend语句
if-else-end语句的格式为:
if 条件表达式
语句组1
else
语句组2
end
else — end 语句
if — elseif — else — end 语句的格式为:
1; x 0
■例11 求函数y 0; x ,输入x值,输出y值.
1; X 0
解: H―
function y=fuhao(x)
if x0
y=-1;
elseif x==0
y=0;
else
y=1;
解:程序如下end
解:程序如下
A=[];
for m=100:999
m1=fix(m/100); %求m的百位数子
m2=rem(fix(m/10),10); % 求 m 的十位数子
m3=rem(m,10); %求m的个位数子
if m==m1*m1*m1+m2*m2*m2+m3*m3*m3
A=[A,m];
end
end
disp(A)
■例12 一个三位正整数各位数字的立方和等于该数本身则称该数 为水仙花数.输出全部水仙花数.
以flower.m命名,运行结果:
153 370 371 407
switch-end 语句
根据表达式的不同取值,分别执行不同的语句 .其格式如下:
switch 表达式
case 值 1
语句组1
case 值 2
语句组2
......
case 值 m
语句组m
otherwise
语句组n
end
■例13阅读程序
method=input(请输入方法名:) switch method
case{linear,bilinear} disp(Method is linear) casecubic
disp(Method is cubic) casenearest
disp(Method is nearest) otherwise
disp(Unknown method.) end
■例14用switch-end语句编一程序,对于给定的一个百分制成绩, 输出相应的五分制成绩,设:90分以上为A , 889分为 B 70? 79分为60?69分为 60分以下为’E
function sctole(score) grade=fix(score/10);
switch grade
case {10,9} grade=A
case 8
grade=B
case 7
grade=C
case 6
grade=D
otherwise
grade=E
end
■关于switch-end语句的几点注解:
Matlab首先计算表达式的值,然后将它依次与各个 case指令
后的检测值进行比较,当比较结果为真时,就执行相应的语句
组,然后跳出switch-end结构
如果所有的比较结果都为假,则执行 otherwise后面的语句
组,然后跳出switch-end结构
otherwise指令可以不出现
switch后面的表达式的值可以是一个标量或字符串
case指令后的检测值超过一个时, 应用打括起来
习题:
一、阅读下列程序,并在计算机上运行.
control.m
function y=control(n)
a=20;
if n==0
y=a+1;
elseif n==1
y=a*(1+n);
elseif n==2
y=a+n;
else
y=a;
end
qhshzh.m
x=input(请输入x的值:);
if x==10
y=cos(x+1)+sqrt(x*x+1);
else
y=x*sqrt(x+sqrt(x));
end
y
wufen.m
clear
n=input(输入百分制分数n=);
if n=90
r=A
elseif n=80
r=B
elseif n=70
r=C
elseif n=60
r=D
else
r=E
end
chenji.m
s=0;
a=[65,76,56,78;98,83,74,85;76,67,78,79;98,58,42,73;67,89,76,87];
for k=a
s=s+k;
end
disp(s);
jituo.m
%鸡兔同笼问题:鸡和兔子关在一个笼子里,已知共有头 36个, 脚100个,求笼内关了多少只兔子和多少只鸡?
clear
chicken=1;
while 1
if rem(100-chicken*2, 4)==0(
您可能关注的文档
- (完整版)广州大学《物理化学》考试试题A卷参考答案-09级食品专业.docx
- (完整版)广东高考考试大纲——生物.docx
- (完整版)广东石油化工学院《市场营销学》试卷.docx
- (完整版)广东省广州市牛津深圳版七年级英语下册Unit1--8基础检测(f无答案).docx
- (完整版)广东省小升初考试卷(精编).docx
- (完整版)广东省各市2017年中考数学模拟试题分类汇编专题16:压轴题.docx
- (完整版)广东省助理物流师_专业英语与计算机基础_物流专业英语部分(含答案11).docx
- (完整版)广东省东莞市中考数学一模试题(含解析).docx
- (完整版)广东省2018年中考英语试题真题(word版有答案).docx
- (完整版)广东海洋大学电工期末试卷.docx
文档评论(0)