3.6 matlab函数文件的定义与调用

1、函数文件的基本结构

function 输出形参表=函数名(输入形参表)
注释说明部分
函数体语句

当有多个形参时,形参之间用逗号分隔,组成形参表。当输出形参多于一个时,应该用方括号括起来,构成一个输出矩阵。

函数文件名和函数名:
(1)函数文件名通常由函数名再加上扩展名.m组成,函数文件名与函数名也可以不相同。
(2)return语句表示结束函数的执行。

函数调用
调用格式:
[输出实参表=函数名(输入实参表)

在调用函数时,函数输入输出参数称为实际参数,简称实参。

例1:编写函数文件,求半径为r的圆的面积和周长。

function [S,C] = circle(r)
S = pi*r*r;  %圆的面积
C = 2*pi*r;  %圆的周长

%在命令行窗口调用函数
>> [S,C] = circle(10)

%输出结果
S =
  314.1593
  
C =
   62.831

2、匿名函数
基本格式:

(1)函数句柄变量=@(匿名函数输入参数)匿名函数表达式
其中@为函数句柄的运算符

>> f = @(x,y)x^2+y^2

f =

  包含以下值的 function_handle:

    @(x,y)x^2+y^2

%输出结果
>> f(1,2)
>
ans =
     5

(2)函数句柄变量=@函数名
函数名可为:内部函数或自定义函数

>> f = @sind

f =

  包含以下值的 function_handle:

    @sind

>> f(30)

ans =
    0.5000

3.6 matlab函数文件的定义与调用_第1张图片

%用匿名函数定义f
f = @(n)n+10*log(n*n+5);
y = f(40)/[f(30)+f(20)]

%输出结果
y =
    0.6390


%用函数文件定义函数f
function y = f2(n)
y = 0;
for i=1:n
    y = y + i*(i+1);
end

%在命令行窗口调用f2函数,其输出结果
>> f2(40)/[f2(30)+f2(20)]

ans =
    1.7662

你可能感兴趣的:(matlab基础知识,matlab)