函数的递归调用
- 定义:一个函数调用它自身成为函数的递归调用。递归是一个大型的问题层层转化为一个与原问题相似的规模较小的问题来求解。
- 优点:大大减少代码量
- 缺点:加大存储空间和执行时间的开销
递归调用的两种格式
- 直接调用:
- 间接递归调用:
函数参数的可调性
- Matlab的两个预定义变量
- nargin:调用函数时输入实参的个数
- nargout:输出实参的个数
function fout = test(a, b, c)
if nargin == 1
fout = a;
elseif nargin == 2
fout = a +b;
elseif nargin == 3
fout = (a + b + c)/2;
end
函数参量的作用域
- 局部变量:在程序中只在特定过程或函数中可以访问的变量。
- 全局变量
- 作用域为整个Matlab工作空间,也就是全程有效,所有的函数都可以对它进行存取和修改。
- 定义格式:
global 变量名
- 必须在函数文件和命令行中同时定义全局变量