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.程拘序的鹊暂停暂停压程序遥的执段行可雄以使悠用pa环us亦e函数肢,其贷调用智格式斩为:pa幻玉us谋e(延迟繁秒数)如果宰省略宁延迟国时间居,直育接使抱用pa昏us贼e,则重将暂绍停程庙序,陪直到派用户睡按任岁一键矿后程密序继辞续执武行。若要潮强行拉中止望程序童的运纳行可伯使用Ct需rl脆+C命令诞。例:求一盆元二疮次方液程ax2+b亚x+罩c=英0的根膏。程序阻如下驾:a=症in宜pu塔t(疲'a壮=?使')炊;b=贵in算pu播t(词'b友=?厅')趴;c=翼in帝pu愚t(建'c均=?菊')轿;d=滨b*咳b-网4*狗a*副c;x=棋[(排-b老+s坟qr包t(芬d)判)/戴(2盛*a翠),酿(-云b-即sq顾rt库(d薯))精/(功2*际a)意];di关sp调(x论);计算辨分段敏函数安的值陶。程序科如下宪:x=缸in跨pu做t(尾'请输菊入x的值:'鼻);if台x拣<=铲0y=小(广x+旺sq挎rt驳(p提i)某)/答ex满p(低2)椅;el锅sey=等lo许g(若x+牙sq警rt促(1傅+x哀*x席))代/2且;en治dY数据者的输盏入与锯输出2.数据走的输竖出di刃sp函数格式思:di银sp跑(变量必名)功能语:显口示指秩定的末变量娱的内羊容ex跟p:k=臭1:纸5;di酬sp弓(k街)di寒sp芽('一维耗数组')2.挑6定MA稿TL寻AB控制雁语句2.践6.包1循环拦结构1.fo危r语句通常扛用来夺执行顽循环均次数楚已知年的情衡况,驱可按榜指定慎次数扣来重奴复执局行循傻环体猪中的玩内容侍。基本矩调用款格式洁为:fo贴r循环绣变量=表达墨式1:表达挑式2:表达晃式3循环危体语潜句en菠d其中任表达左式1的值贝为循锤环变糖量的阻初值挎,表踩达式2的值父为步楼长,讽表达箩式3的值羡为循皮环变蠢量的资终值此。步榜长为1时,做表达谋式2可以跃省略炉。ex鸡p:fo师r邻n=伴1:话10x(信n)给=s挖in研(n歼*p旱i/絮10监);en骆dx为提捆高处铜理速之度,裤在fo淋r循环露被执们行之假前,通应预阻先分阅配数炭组。x=役ze终ro溜s(返1,凭10苍)fo尚r盼n=枣1:沫10x(尼n)肝=s咐in腹(n纽奉*p长i/筐10限);en住dx当有迟一个退有效清的数枪组方形法来饱解答祖给定灶的问愉题时庭,应析避免雷用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在执堤行过朱程中速

温馨提示

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

评论

0/150

提交评论