matlab 编程入门(M文件函数)

转载请注明来自:黄朝辉的博客

前言

MATLAB是一个包括数据结构、函数、控制流、输入输出和面向对象特性的高级语言。

快速入门

下面是一个快速入门的例子。

>> a = 12;
>> b = 20;
>> c = a + b;
>> c

c =

    32

>> 

对,就是这么简单,这是直接在命令行窗口中进行编程。
下面我们通过建立一个M-File来实现它。
选择新建 脚本
输入以下内容

function c = add(a,b)
c = a+b;

保存一个文件名默认为add.m即可。
关闭文件,在命令行窗口中输入以下名称即可调用。

>> c=add(12,10)

c =

    22

>> 

简单吧,好了现在应该说下这个M文件了。

两种M文件

M文件即可是一个简单的,用来执行一系列MATLAB语句的脚本,也可以是一个有着输入输出功能函数,就像上面的那个例子所示。(输入:a、b,输出:c)。
由此,有两种M文件,比较如下表所示:

脚本M文件函数M文件
既不接受输入也不返回输出可接受输入和返回输出
在工作空间对数据进行处理默认情况下变量属于函数内部
主要用来执行一系列需要执行很多次的操作主要用来扩展自己应用程序

下面给出一个脚本的列子:

fingerImg=imread('finger_noise.jpg');
for i =1:4
    figure;imshow(fingerImg);
    pause
end

这个脚本只读入一张图片,然后根据用户的操作,将图片绘制四次。

函数M文件的组成

一个函数M文件由五部分组成:函数定义行H1行帮助文本函数体注释
下面为一个求平均数的函数代码:

function y = average(x)
% AVERAGE Mean of vector elements.
% AVERAGE(X), where X is a vector, is the mean of vector elements.
% Non-vector input results in an error.
[m,n] = size(x);
if (~((m == 1) | (n == 1)) | (m == 1 & n == 1))
error('Input must be a vector')
end
y = sum(x)/length(x); % Actual computation

在上面的函数中,函数第一行function y = average(x)即为函数定义行
x为输入参数,average为函数名,y是输出参数,
H1行为:% AVERAGE Mean of vector elements.这个H1行是紧跟在函数定义行后的注释行的第一行。当在命令行窗口中输入help 函数名,这一行会出现在提示内容的第一行。
以下:

% AVERAGE(X), where X is a vector, is the mean of vector elements.
% Nonvector input results in an error.

帮助文本主要用来说明函数的功能,以%开头。
函数体为:

[m,n] = size(x);
if (~((m == 1) | (n == 1)) | (m == 1 & n == 1)) % Flow control
error('Input must be a vector') % Error message display
end
y = sum(x)/length(x); % Computation and assignment

是用来实现函数功能的MATLAB代码。
所有以%开头的均为注释行,只不有些成为了函数的特定部分而已,就像那个H1行一样。注释行可以出现在一个函数的任意位置。

查看M文件内容

在命令行窗口,当你想要查看一个M文件的内容时,输入type 函数名即可。

>> type add

function c = add(a,b)
c = a+b;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值