Main Content

编程和脚本

脚本是一种最简单的 MATLAB® 程序。脚本是一个包含多行连续的 MATLAB 命令和函数调用的文件。在命令行中键入脚本名称即可运行该脚本。

脚本

要创建脚本,请使用 edit 命令。

edit mysphere

该命令会打开一个名为 mysphere.m 的空白文件。输入代码,以创建一个单位球、将半径加倍并绘制结果图:

[x,y,z] = sphere; 
r = 2;
surf(x*r,y*r,z*r)
axis equal

接下来,添加代码以计算球的表面积和体积:

A = 4*pi*r^2;
V = (4/3)*pi*r^3;

编写代码时,最好添加描述代码的注释。注释能够让其他人员理解您的代码,并且有助于您在稍后返回代码时再度记起。使用百分比 (%) 符号添加注释。

% Create and plot a sphere with radius r.
[x,y,z] = sphere;       % Create a unit sphere.
r = 2;
surf(x*r,y*r,z*r)       % Adjust each dimension and plot.
axis equal              % Use the same scale for each axis. 
 
% Find the surface area and volume.
A = 4*pi*r^2;
V = (4/3)*pi*r^3;

将文件保存在当前文件夹中。要运行脚本,请在命令行中键入脚本名称:

mysphere

还可以使用编辑器中的运行按钮 运行脚本。

实时脚本

您可以使用实时脚本中的格式设置选项来增强代码,而不是以纯文本编写代码和注释。实时脚本有助于您查看代码和输出并与之交互,还可以包含格式化文本、方程和图像。

例如,通过选择另存为并将文件类型更改为 MATLAB 实时代码文件 (*.mlx),将 mysphere 转换为实时脚本。然后,用格式化文本替换代码注释。例如:

  • 将注释行转换为文本。选择以百分比符号开头的每一行,然后选择文本。删除百分比符号。

  • 重写文本以替换代码行末尾的注释。要将等宽字体应用于文本中的函数名,请选择 M。要添加方程,请在插入选项卡上选择方程

Text and font options are in the Text section of the Live Editor tab.

要使用 edit 命令创建新的实时脚本,请在文件名中包含 .mlx 扩展名:

edit newfile.mlx

循环及条件语句

在任何脚本中,您都可以定义按循环重复执行或按条件执行的代码段。循环使用 forwhile 关键字,条件语句使用 ifswitch

循环在创建序列时很有用。例如,创建一个名为 fibseq 的脚本,该脚本使用 for 循环来计算斐波那契数列的前 100 个数。在这个序列中,最开始的两个数是 1,随后的每个数是前面两个数的和,即 Fn = Fn-1 + Fn-2

N = 100;
f(1) = 1;
f(2) = 1;

for n = 3:N
    f(n) = f(n-1) + f(n-2);
end
f(1:10)

运行该脚本时,for 语句定义一个名为 n 的计数器,该计数器从 3 开始。然后,该循环重复为 f(n) 赋值,n 在每次执行中递增,直至达到 100。脚本中的最后一条命令 f(1:10) 显示 f 的前 10 个元素。

ans =
     1     1     2     3     5     8    13    21    34    55 

条件语句仅在给定表达式为 true 时执行。例如,根据随机数的大小为变量赋值:'low''medium''high'。在本例中,随机数是在 1 和 100 之间的一个整数。

num = randi(100)
if num < 34
   sz = 'low'
elseif num < 67
   sz = 'medium'
else
   sz = 'high'
end

语句 sz = 'high' 仅在 num 大于或等于 67 时执行。

脚本位置

MATLAB 在特定位置中查找脚本及其他文件。要运行脚本,该文件必须位于当前文件夹或搜索路径中的某个文件夹内。

默认情况下,MATLAB 安装程序创建的 MATLAB 文件夹位于此搜索路径中。如果要将程序存储在其他文件夹,或者要运行其他文件夹中的程序,请将其添加到此搜索路径。在当前文件夹浏览器中选中相应的文件夹,右键点击,然后选择添加到路径