基本信息
文件名称:《通信系统中MATLAB基础与仿真应用》课件_第5章.ppt
文件大小:816 KB
总页数:111 页
更新时间:2025-03-08
总字数:约2.14万字
文档摘要

此种格式的执行方式为:·switch指令后面的表达式可以为任何类型,如字符串和标量等。对于标量,可按规则:表达式值==检测值i;而对于字符串,MATLAB将调用函数stremp来完成比较:stremp(表达式,检测值i)。有时表达式还可以是单元数组,此时MATLAB将把表达式的值和单元数组中的所有元素进行比较,如果单元数组中的某个元素和表达式的值相等,则MATLAB认为此次比较结果为真,从而执行与该检测值相应的语句。·当遇到switch语句时,MATLAB将表达式的值依次和各个case指令后面的检测值进行比较,如果比较结果为真,MATLAB将执行case后面的语块,然后跳出该结构;如果比较结果为假,MATLAB则取下一个检测值再比较。如果所有的结果都为假,即表达式的值与所有的检测值都不相等,MATLAB将执行otherwise后面的语块。由此可见,上述结构保证了至少有一组命令会得到执行。·每个case后面的检测值可以有多个,而且类型可以不同;每个case后面的检测值可以重复,这在语法上没有错误,只是在执行时后面符合条件的case语句将被忽略,不起作用。·与if语句不同的是,各个case和otherwise语句出现的前后顺序并不会影响程序的执行结果。【例5-13】查找字符串类型。其程序段为:str=put(′pleaseinputastringofMethod′)switchlower(str)case(′linear′,′bilinear′}disp(′Methodislinear′)case′cubic′disp(′Methodiscubic′)′case′nearest′disp(′Methodisnearest′)otherwisedisp(′Unknownmethod.′)end运行结果:pleaseinputastringofMethod%MATLAB命令窗口显示′linear′%输入字符串str=%运行结果linearMethodislinear5.6程序流控制语句在MATLAB的程序设计中,有时需要提前终止循环、跳出子程序、显示错误或警告信息以及显示批处理文件的执行过程等,这就要用到程序流控制命令。MATLAB中提供了以下几条流控制命令及错误显示。1)return指令通常在被调函数执行完后,MATLAB会自动把控制转到主函数或命令窗口,如果在被调函数中插入return指令,即可强制MATLAB结束执行该函数并把控制转出。2)pause指令pause指令可使程序运行停止,等待用户按任意键继续。该指令在程序调试及需要看中间结果时特别有用。pause指令有两种用法:·pause:暂停执行程序,等待用户按任意健继续。·pause(n):在继续执行前,暂停n秒。[HJ]3)break指令break指令包含最内层while、for、if语句终止循环。通过使用break指令,可以不必等循环自然结束,而是根据循环内部另设的某种条件是否满足来决定是否退出循环或是否结束if语句。在很多情况下,该指令是必须的。4)input指令input指令能够提示用户从键盘输入数值、字符串或表达式,并接受输入。其常用的调用格式为:·R=input(′Message′):将用户从键盘键入的内容Message赋值给变量R。Message可以是数字或表达式,也可以是字符串(此时字符串两端必须输入单引号),按Enter键后就可把输入内容赋值给变量R。·R=input(′Message′,′s′):将用户从键盘键入的内容Message作为字符串形式赋给变量R,此时输入的任何内容(不论是数字还是字符)一律被当作字符串赋给变量R。提示:当输入字符串需要转行时,可用符号“\”(“\n”的含义是转行,也就是代表按Enter键)。如果要输入“\”,则要用“\\”。5)keyboard指令keyboard指令与input指令一样。在遇到keyboard指令时,MATLAB将会暂停程序的运行,并调用键盘命令进行处理,用户可以从键盘输入各种MATLAB的合法命令。只要输入return指令,按Enter键后,程序将继续运行。提示:keyboard指令与input指令的不同之处在于,它允许输入任意多个MATLAB指令,而input指令只能输入赋给变量的“值”,即数值、字符串或单元数组。6)error和warnin