MALAB编程控制语句_第1页
MALAB编程控制语句_第2页
MALAB编程控制语句_第3页
MALAB编程控制语句_第4页
MALAB编程控制语句_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

M文件程序控制结构函数文件程序举例程序调试2.1M文件2.1.1M文件概述用MATLAB语言编写的程序,称为M文件。M文件可以根据调用方式的不同分为两类:命令文件(ScriptFile)和函数文件(FunctionFile)。例1分别建立命令文件和函数文件,将华氏温度f转换为摄氏温度c。程序1:首先建立命令文件并以文件名f2c.m存盘。clear;%清除工作空间中的变量f=input('InputFahrenheittemperature:');c=5*(f-32)/9然后在MATLAB的命令窗口中输入f2c,将会执行该命令文件,执行情况为:InputFahrenheittemperature:73c=22.7778程序2:首先建立函数文件f2c.m。functionc=f2c(f)c=5*(f-32)/9然后在MATLAB的命令窗口调用该函数文件。clear;y=input('InputFahrenheittemperature:');x=f2c(y)输出情况为:InputFahrenheittemperature:70c=21.1111x=21.1111

例3-14编写函数文件求半径为r的圆的面积和周长。函数文件如下:function[s,p]=fcircle(r)%CIRCLEcalculatetheareaandperimeterofacircleofradiir%r圆半径%s圆面积%p圆周长%2004年7月30日编s=pi*r*r;p=2*pi*r;3.1.2M文件的建立与打开

M文件是一个文本文件,它可以用任何编辑程序来建立和编辑,而一般常用且最为方便的是使用MATLAB提供的文本编辑器。1.建立新的M文件为建立新的M文件,启动MATLAB文本编辑器有3种方法:

(1)菜单操作。从MATLAB主窗口的File菜单中选择New菜单项,再选择M-file命令,屏幕上将出现MATLAB文本编辑器窗口。

(2)命令操作。在MATLAB命令窗口输入命令edit,启动MATLAB文本编辑器后,输入M文件的内容并存盘。

(3)命令按钮操作。单击MATLAB主窗口工具栏上的NewM-File命令按钮,启动MATLAB文本编辑器后,输入M文件的内容并存盘。2.打开已有的M文件打开已有的M文件,也有3种方法:

(1)菜单操作。从MATLAB主窗口的File菜单中选择Open命令,则屏幕出现Open对话框,在Open对话框中选中所需打开的M文件。在文档窗口可以对打开的M文件进行编辑修改,编辑完成后,将M文件存盘。

(2)命令操作。在MATLAB命令窗口输入命令:edit文件名,则打开指定的M文件。

(3)命令按钮操作。单击MATLAB主窗口工具栏上的OpenFile命令按钮,再从弹出的对话框中选择所需打开的M文件。数据的输入与输出1.键盘输入input格式:u=input(‘提示内容’)功能:在屏幕上显示提示内容,等待从键盘输入,将输入值赋给数据变量u。exp:x=input('请输入变量x的值?')运行后输入:[1,2,3;4,5,6;7,8,9]再回车。

输入x,y的值,并将它们的值互换后输出。程序如下:

x=input('Inputxplease.');y=input('Inputyplease.');z=x;x=y;y=z;disp(x);disp(y);3.程序的暂停暂停程序的执行可以使用pause函数,其调用格式为:

pause(延迟秒数)

如果省略延迟时间,直接使用pause,则将暂停程序,直到用户按任一键后程序继续执行。若要强行中止程序的运行可使用Ctrl+C命令。例:求一元二次方程ax2+bx+c=0的根。程序如下:a=input('a=?');b=input('b=?');c=input('c=?');d=b*b-4*a*c;x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)];disp(x);

计算分段函数的值。程序如下:x=input('请输入x的值:');ifx<=0y=(x+sqrt(pi))/exp(2);elsey=log(x+sqrt(1+x*x))/2;endY数据的输入与输出2.数据的输出disp函数格式:disp(变量名)功能:显示指定的变量的内容exp:k=1:5;disp(k)disp('一维数组')2.6MATLAB控制语句2.6.1循环结构1.for语句通常用来执行循环次数已知的情况,可按指定次数来重复执行循环体中的内容。基本调用格式为:for循环变量=表达式1:表达式2:表达式3

循环体语句

end其中表达式1的值为循环变量的初值,表达式2的值为步长,表达式3的值为循环变量的终值。步长为1时,表达式2可以省略。exp:forn=1:10x(n)=sin(n*pi/10);endx为提高处理速度,在for循环被执行之前,应预先分配数组。x=zeros(1,10)forn=1:10x(n)=sin(n*pi/10);endx当有霞一个雄有效行的数河组方妖法来储解答培给定双的问强题时挨,应岗避免差用fo窃r循环挺。n=竭1:柴10x=央si龙n(您n*阻pi禾/1幅0)例:罚已知筹,当n=驼10或0时,本求y的值尺。程序榴如下涌:y=道0;乞n=父10剂0;fo他r梳i=泽1:拍ny=授y+纹1/春i/通i;en驼dy在实准际MA坑TL纯AB编程翠中,碰采用陵循环圾语句极会降勇低其叠执行巡寿速度箱,所触以前狡面的拌程序针通常等由下恭面的盗数组借方法母来代射替:n=重10斩0;i=渔1:孔n;f=穿1.炼/i晒.^辨2;y=督su咳m(从f)fo绍r循环增可以突嵌套医使用ex傲p:fo祸r蕉i=萍1:派3fo说r旬j=咏1:捷4a(谣i,办j)扇=i薯*j受;en豪den撇dafo对r语句爪中的般变量富也可腰以是单任何香合法段的MA狡TL练AB数组外或矩斩阵。公对于障一个刑的矩勉阵A来说寻可以损有:fo违r哈k=降A循环觉体语绳句en形d执行吨过程槐是依锄次将催矩阵桐的各期列元醉素赋剑给循胞环变剃量,哥然后帖执行资循环液体语洋句,黑每次存执行丢循环航时,k为矩膀阵A中1列的飞所有客元素如,即A(智:,灭i),直镜至各郑列元粉素处驰理完献毕。例:荣写出末下列田程序暖的执妻行结喂果。s=伏0;a=落[1线2,妈13拌,1粮4;究15好,1费6,魔17卵;1悟8,潜19稳,2害0;稿21馋,2抵2,塘23凶];fo候r些k=敬as=菜s+链k;en饮ddi塘sp亡(s宁')荷;思考薪下列漂程序显,写削出其没运行拉结果务:A=隔[1止,2须,9百,1烫8;特24忆,3学1,乎12植,2朴1]愁;fo款r舰a=封Ab=盖a(家2)且-a蔑(1庄)en驱d2.wh预il辱e语句wh兽il惰e语句通也是乓一种隙循环脏语句衬,一电般用秩于事器先不辽能确豆定循勺环次铺数的涉情况兰。调用旱格式聚为:wh字il赔e表达删式循环商体语墨句en蚁d其执框行过长程为欺:若苏表达诱式成醒立,端则执脱行循稀环体现语句砍,执毅行后参再判逐断条颤件是撤否成丑立,挤如果铁不成和立则链跳出昨循环签。ex训p:i=桥0;wh槽il滴e传i<脱10i=以i+判1en险d2.舰6.辉2选择牧结构1.if语句在MA塌TL绩AB中,if语句里有3种格容式。(1心)单分袭支if语句止:if表达基式语句稀组en蜂d当表沉达式露成立盲时,鬼则执逐行语枯句组离,执妨行完崇之后姨继续按执行if语句虚的后股继语市句,樱若条受件不害成立聪,则砌直接步执行if语句递的后傻继语至句。ex茎p1:a=丢10贫0;b=护34山5;if始a距<5记00c=合b/闭aen垄dex亚p2:fo歉r湾i=绝1:允6a(挤i)脂=i恢;if大i眼>3a(渠i)筋=6分-i究;en框den皆da'(2录)双分处支if语句凝:if表达崇式语句纲组1el耀se语句吩组2en们d当表谎达式着成立排时,愉执行害语句梅组1,否将则执什行语铜句组2,语收句组1或语建句组2执行赤后,堪再执惹行if语句很的后者继语疲句。例:计算赖分段要函数订。程序铺如下友:方法壳一:x=涌in智pu曾t(梢'请输虚入x的值:'用);if粘x溉==蛙10y=轰co饶s(焦x+享1)共+s辫qr攀t(虽x*羽x+纵1)岗;el纵sey=晒x*双sq化rt绘(x刷+s待qr比t(御x)唉);en聪dy方法口二:x=惜in渐pu李t(号'请输怜入x的值:'忌);y=慈co因s(舞x+肥1)喂+s薪qr矛t(加x*她x+登1)霉;if减x础~=颜10y=射x*叫sq性rt沫(x粥+s烘qr行t(莫x)两);en俱dy方法尊三:x=碑in窑pu辅t(祝'请输档入x的值:'者);if呜x失==豪10y=夜co样s(炊x+蚀1)摄+s节qr嚷t(主x*虽x+羞1)箱;en亭dif胡x桶~=题10y=冰x*拒sq朴rt照(x晒+s伙qr纺t(境x)挤);en际dy(3禽)多分旋支if语句惯:if表达润式1语句财组1el仁se拨if表达毒式2语句拖组2……el展se信if表达更式m语句残组mel赶se语句鸟组nen尾d语句呀用于终实现首多分津支选公择结傍构。ex庸p:x=描[9脊,6毯,3盯,2星,5辨,8受,7路,4堆,1增];i=怠2;j=得3;if庄i肯==帜jx(每i,故j)现=0坝;el暴se蔑if跪a每bs迫(i栗-j砌)=催=1x(蛋i,记j)急=-滔1;el下se牌x灶(i砌,j宇)=吩10挠;en概dx2.sw溪it画ch语句sw倾it捞ch语句死称为慎条件划选择冠语句辈,根警据表喊达式约的取府值不粮同,碑分别鹅执行泡不同薪的语鸟句,殿其语幅句格尖式为般:sw宜it裙ch表达任式ca娇se表达局式1语句昼组1ca怖se表达碍式2语句富组2……ca豆se表达巨式m语句古组mot欧he兽rw矛is旺e语句得组nen需d当表邻达式排的值达等于射表达忆式1的值医时,恭执行采语句缩慧组1,当乒表达征式的豆值等领于表索达式2的值饭时,亦执行沃语句财组2,…,当情表达寒式的介值等杯于表桥达式m的值双时,勇执行钩语句眠组m,当愧表达场式的蹲值不辟等于ca久se所列座的表输达式洁的值叮时,谷执行状语句旱组n。MA摘TL效AB中的sw潮it英ch结构院与C语言饼中的sw似it巧ch结构珍略有退差别负。在C语言托中,择检验标某个ca邪se符合替并执饮行其疫运算歉后,寻还会麻继续都检验基下一工个ca包se,直汽到全弦部检娘验完捧,所的以一技般会轨加入br闹ea任k,只爬运算堆第一淘个检谣验成改功的涝运算浮式。梢但在MA蚁TL平AB中只妨执行漏一个郑检验敏成功黑的ca拜se。例某商话场对网顾客敢所购搁买的滑商品筹实行旧打折师销售掌,标比准如壮下(商品颗价格载用pr览ic温e来表照示):pr使ic狡e<摄20咬0没有墙折扣20殖0≤锤pr真ic贞e<侨50猜0泛3骆%折扣50再0≤言pr何ic航e<至10爸00舰5俯%折扣10腊00颠≤p辩ri点ce莲<2达50印0航8街%折扣25恒00雹≤p贿ri颂ce着<5贤00鼠0址1呜0%折扣50箭00涛≤p票ri技ce棕1泡4%折扣输入言所售究商品恨的价顿格,胖求其铁实际膀销售千价格皇。程序释如下默:pr和ic奏e=骂in盒pu络t(桌'请输不入商涝品价鸡格')刃;sw隆it补ch碧f窃ix生(p捉ri傻ce钩/1级00蛋)ca款se阳{杯0,性1}堆%价格舰小于20门0ra封te封=0绝;ca悲se鲜{抱2,吼3,度4}范%价格句大于耽等于20妈0但小钢于50帜0ra遥te肺=3无/1拔00充;ca水se佛n婆um方2c帜el急l(杏5:寨9)半%价格叉大于夜等于50读0但小赌于10请00ra够te涌=5离/1搅00秤;ca依se什n煌um递2c孔el沃l(愈10哨:2底4)裹%价格咬大于弹等于10霞00但小还于25叔00ra换te炼=8予/1澡00英;ca恳se旨n科um侍2c骂el迁l(叫25境:4朗9)押%价格或大于锤等于25督00但小考于50沃00ra尘te角=1揪0/垂10雹0;ot耐he被rw匙is根e太%价格项大于怒等于50嗓00ra脊te封=1教4/渠10吼0;en塞dpr卧ic算e=凤pr仔ic赤e*亏(1雾-r猎at待e)签%输出紫商品托实际雕销售目价格ex陕p:a=违in屈pu置t(腥'a涝=?蒙')宽;sw湿it觉ch俘aca传se耗1di屈sp度('扮a=饿1'劳);ca羡se陶{撑2,浆3,彼4}di币sp膝('移a=婶2o下r3屑or劝4'蜘);ca刮se页5di翠sp箱('担a=扎5'轨);ot极he乐rw衰is恼edi疤sp宴('那ot起he虽r连va阻lu郑e'疫);en出d;3.tr庸y语句语句五格式肉为:tr总y语句狐组1ca邮tc扯h语句也组2en海dtr因y语句律先试餐探性岭执行烘语句沿组1,如最果语遭句组1在执昏行过茂程中烂出现万错误屈,则渗将错组误信摄息赋贵给保照留的la遥st灾er凶r变量概,并普转去使执行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论