0%

MATLAB程序结构

MATLAB语言有三种常用的程序控制结构:顺序结构、选择结构和循环结构。本文主要记录与这三种程序控制结构相关的部分内容作为笔记 (っ・Д・)っ 。

顺序结构

MATLAB语言的数据输入、数据处理和数据输出命令都是按照顺序结构执行的。

数据的输入

MATLAB语言可使用input函数从键盘输入数据,其调用方式如下:

方法一

x=input('提示信息')

提示信息表示字符串,用于提示用户应该输入什么数据,等待用户从键盘输入数据,赋值给变量x

>> x=input('输入变量:')
输入变量:3

x =

3

执行该语句时,命令行窗口显示输入变量:,然后等待用户从键盘输入x的值。

方法二

str=input('提示信息','s')

用于用户输入一个字符串,赋值给字符变量str

>> str=input('NAME:','s')
NAME:NIMITIZ

str =

'NIMITIZ'

数据的输出

MATLAB语言可以使用disp函数实现在命令行窗口显示输出信息,其调用方式如下:

disp('输出信息')

输出信息既可以是字符串,也可以是矩阵。

>> disp('NIMITIZ')
NIMITIZ
>> A=[1 2;3 4];
>> disp(A)
1 2
3 4

选择结构

MATLAB语言中的选择结构有三种常用语句:if语句、switch语句和try语句。

if语句

与C语言很类似,但是ifend必须配对使用end置于循环体的末尾。

if 条件
语句组
end
if 条件1
语句组1
else
语句组2
end
if 条件1
语句组1
elseif 条件2
语句组2
...
elseif 条件m
语句组m
else
语句组n
end

switch语句

在MATLAB语言中,switch语句也用于多项选择。

switch 表达式
case 表达式1
语句组1
case 表达式2
语句组2
...
case 表达式m
语句组m
otherwise
语句组n
end

try语句

在MATLAB语言中,try语句是一种试探性执行语句,其格式为:

try
语句组1
catch
语句组2
end

try语句先试探执行语句组1,如果语句组1在执行过程中出现错误,则将错误信息赋值给系统变量lasterr,并转去执行语句组2

举个栗子

try语句求解函数y=x*sin(x)的值,自变量x的取值范围[0,pi],步长为pi/10

>> x=0:pi/10:pi;
>> try
y=x*sin(x);
catch
y=x.*sin(x);
end
>> y

y =

0 0.0971 0.3693 0.7625 1.1951 1.5708 1.7927 1.7791 1.4773 0.8737 0.0000

>> lasterr

ans =

'错误使用 *
用于矩阵乘法的维度不正确。请检查并确保第一个矩阵中的列数与第二个矩阵中的行数匹配。要执行按元素相乘,请使用 '.*'。'

循环结构

MATLAB语言有两种循环结构语句:for循环语句和while循环语句。其使用方式都与C语言类似。

for循环语句

for 循环变量=表达式1:表达式2:表达式3
循环体语句
end

while循环语句

while 条件表达式
循环体语句
end