预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共33页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

程序控制结构 程序控制结构 一、顺序结构 1.数据的输入 从键盘输入数据,则可以使用input函数来进行,该函数的调用格式为:x=input(‘提示内容’) 功能:在屏幕上显示提示内容,等待从键盘输入,将输入值赋给数据变量x。 exp:x=input('请输入变量x的值?') 运行后输入:[1,2,3;4,5,6;7,8,9] 再回车 如果在input函数调用时采用's'选项,则允许用户输入一个字符串。例如,想输入一个人的姓名,可采用命令: x=input('What''syourname?','s');2.数据的输出 MATLAB提供的命令窗口输出函数主要有disp函数,其调用格式为 disp(输出项) 其中输出项既可以为字符串,也可以为矩阵。 exp: k=1:5; disp(k) disp(k(1:3)) disp('一维数组') 例:求一元二次方程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(['x1=',num2str(x(1)),',x2=',num2str(x(2))]); disp('x='); disp(x);3.程序的暂停 暂停程序的执行可以使用pause函数,其调用格式为: pause(延迟秒数) 如果省略延迟时间,直接使用pause,则将暂停程序,直到用户按任一键后程序继续执行。 若要强行中止程序的运行可使用Ctrl+C命令。二、选择结构 1.if语句 在MATLAB中,if语句有3种格式。 (1)单分支if语句: if条件 语句组 end 当条件成立时,则执行语句组,执行完之后继续执行if语句的后继语句,若条件不成立,则直接执行if语句的后继语句。exp: a=100; b=345; ifa<500 c=b/a end(2)双分支if语句: if条件 语句组1 else 语句组2 end 当条件成立时,执行语句组1,否则执行语句组2,语句组1或语句组2执行后,再执行if语句的后继语句。例:计算分段函数。 程序如下: 方法一: x=input('请输入x的值:'); ifx==10 y=cos(x+1)+sqrt(x*x+1); else y=x*sqrt(x+sqrt(x)); end y方法二: x=input('请输入x的值:'); y=cos(x+1)+sqrt(x*x+1); ifx~=10 y=x*sqrt(x+sqrt(x)); end y方法三: x=input('请输入x的值:'); ifx==10 y=cos(x+1)+sqrt(x*x+1); end ifx~=10 y=x*sqrt(x+sqrt(x)); end y(3)多分支if语句: if条件1 语句组1 elseif条件2 语句组2 …… elseif条件m 语句组m else 语句组n end 语句用于实现多分支选择结构。exp: x=[9,6,3,2,5,8,7,4,1]; i=2; j=3; ifi==j x(i,j)=0; elseifabs(i-j)==1 x(i,j)=-1; elsex(i,j)=10; end x2.switch语句 switch语句称为条件选择语句,根据表达式的取值不同,分别执行不同的语句,其语句格式为: switch表达式 case表达式1 语句组1 case表达式2 语句组2 …… case表达式m 语句组m otherwise 语句组n endMATLAB中的switch结构与C语言中的switch结构略有差别。在C语言中,检验某个case符合并执行其运算后,还会继续检验下一个case,直到全部检验完,所以一般会加入break,只运算第一个检验成功的运算式。但在MATLAB中只执行一个检验成功的case。exp: a=input('a=?'); switcha case1 disp('a=1'); case{2,3,4} disp('a=2or3or4'); case5 disp('a=5'); otherwise disp('othervalue'); end; 例:某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示): price<200没有折扣 200≤price<5003%折扣 500≤price<10005%折扣 1000≤price<25008%折扣 2500≤price<500010%折扣 5000≤price14%折扣 输入所售商品的价格,求其实际销售价格。程序如下: price=input('请输入商品价格'); sw