- 程序结构
按照程序设计的观点, 任何算法功能都可以通过由程序模块组成的三种基本程序结构的组合来实现:
顺序结构:程序按程序语句或模块在执行流中的顺序逐个执行。
选择结构:程序按设定的条件实现程序执行流的多路分支。
循环结构:程序按给定的条件重复地执行指定的程序段或模块。
- 顺序结构
顺序结构是最简单的程序结构,用户在编写好程序之后,系统将按照程序的物理位置顺次执行。
如Example1, Example2。
- 选择结构
在MATLAB中,选择结构由两种语句结构实现:
- if语句
只有一种选择时的情况
if 条件
执行语句
end
有两种选择时的情况
if 条件
执行语句1
else
执行语句2
end
if 条件1
条件1为真时的执行语句1
elseif条件2
条件2为真时的执行语句2
elseif条件3
条件3为真时的执行语句3
elseif ……
……
else
所有条件都为假时的执行语句
end
Example 4 计算三角形的面积
function triangle_area(a,b,c)
%输入三条边的边长,先判断是否构成三角形,如果是三角形,利用公式计算面积
if a+b>c & a+c>b & b+c>a
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
['该三角形的面积为' num2str(s)]
else
['不能构成三角形!']
end
%在MATLAB的命令窗口中输入triangle_area(4,5,6),将会执行该函数文件。
(2)switch语句
Switch表达式
Case数值1
程序模块1
Case数值2
程序模块2
……
otherwise,
其他程序模块
end
Example 5 根据输入的数值显示内容(保存文件名example5.m)
num=input('请输入一个数');
switch num
case -1
disp('I am a teacher.');
case 0
disp('I am a student.');
case 1
disp('You are a teacher.');
otherwise
disp('You are a student.');
end
%在MATLAB的命令窗口中输入example5,将会执行该命令文件。
- 循环结构
在MATLAB中,选择结构由两种语句结构实现:
- for语句循环结构
for循环变量=起始值:步长(默认步长1):终止值
循环体
end
Example 6 求和1+2+…+100(保存文件名example6.m)
clear
sum=0;
for i=1:1:100
sum=sum+i;
end
sum
%在MATLAB的命令窗口中输入example6,将会执行该命令文件。
- while语句循环结构
与for循环不同,while循环的判断控制可以是逻辑判断语句,因此,它的循环次数可以是一个不定数。这样就赋予了它比for循环更广泛的用途。当表达式成立时,执行循环体。
while表达式
循环体
end
Example 7 利用while语句计算1+2+…+100(保存文件名example6.m)
clear
sum=0;
i=0;
while i<100
i=i+1;
sum=sum+i;
end
sum
%在MATLAB的命令窗口中输入example7,将会执行该命令文件。