QQ网名大全

matlab 变量文件改名问题

Matlab语言编写的可以在Matlab环境中运行的程序称为 M 文件。M 文件用扩展名.m结尾,可在命令行中执行,也可被其它程序调用,我们可以使用任何文本编辑器编辑M文件。
M文件分为两种:命令文件和函数文件,它们有各自的特点。
1.5.1 命令文件
命令文件没有输入参数也没有输出参数,只是一些Matlab命令和函数的组合。命令文件可以操作工作空间的变量,也可以生成新的变量,但是当命令文件执行结束后新变量将保存在工作空间中,不会被自动清除。
例2-20:编写命令文件test_com.m,用于求解小于2000且为2的整数次幂的正整数。
解:
%test_com.m
F(1)=2;
k=1;
while F(k)<1000
F(k+1)= 2*F(k);
k=k+1;
end
F,k
为了能够在命令窗口执行test_com命令,可以建立一个\MySample子目录,然后用命令窗口的【File】|【Set Path】菜单将该目录加入的Matlab的搜索目录中。这样就可以直接在Matlab命令窗口键入test_com执行这个命令,其运行结果为:
F = Columns 1 through 6
2 4 8 16 32 64
Columns 7 through 10
128 256 512 1024
k =10
1.5.2 函数文件
函数接收输入参数,返回输出参数。函数文件与程序文件类似也是以 逗.m地 为扩展名的文本文件,而程序文件与函数文件的主要区别在于,函数允许通过数值进行参数传递,而且函数使用局部变量而不是全局变量操作。另外函数文件的第一行必须包括 逗function地 这个关键字。函数文件的文件名必须和函数定义的函数名称相同。
MATLAB的函数M文件通常由以下几个部分组成:
1 函数定义行
函数M文件的第一行用关键字逗function地把M文件定义为一个函数,并指定它的名字,并且与文件名必须相同,同时定义了函数的输入和输入参数。输入参数的定义用小括号(),如果有多个输入参数则用逗号分隔;输出参数的定义用中括号[],如果有多个输出参数则用逗号分隔。
2 H1行
所谓H1行指帮助文本的第一行,它紧跟在定义行之后并以逗%地符号开头,用于概括说明函数名和函数的功能。在命令窗口用 lookfor 命令时将显示所寻求函数的H1行。
3 函数帮助文本
帮助文本指位于H1行之后函数体之前的说明文本,它同样以逗%地符号开头,一般用来比较详细地介绍函数的功能和用法。在命令窗口用help命令时将显示函数的H1行和所有帮助文本。
4 函数体
是函数的主体部分,包括进行运行和赋值操作的所有MATLAB程序代码,其中可以有流程控制、输入输出、计算、赋值、注释以及函数调用等操作。
5 注释
除了函数开始独立的帮助文本外,还可以在函数体中添加对语句的注释。注释必须以逗%地符号开头,MATLAB在编译执行M文件时把每一行中逗%地后面的全部内容作为注释不进行编译。
1.5.3 子函数
  一个 M 文件中可以定义多个函数,其中第一个定义的函数称为主函数,主函数名必须与M文件名相同,其它函数称为子函数。子函数只能被定义它的文件中的函数调用,其它函数和文件不能调用。
1.5.4 局部函数
  把一些文件放在private目录下,那么这些文件中定义的函数就是局部函数。局部函数只能被其父母目录中的函数或文件调用,其它函数和文件无权调用。
1.5.5 M文件的执行
  当Matlab遇到一个新的名称(命令、函数、变量)时,按如下次序查找这个名称:
(1) 当前的工作空间;
(2) 子函数名称;
(3) 局部函数名称;
(4) set path指定的路径。
要想使自己编写的函数或命令能够在命令窗口自由的使用,一个比较好的处理方法是建立一个目录,并把这个目录加到Set Path指定的目录中,将自己编写的 M 文件都存放到这个目录中。
例1-21:编写函数求。
解:function r=AddJc(n)
%AddJc.m 函数AddJc(n)求1到n的阶乘的和
% n为输入参数,Jc为子函数
r=0; k=1;
while k<=n
r=r+Jc(k);
k=k+1;
end
%Jc(m)求解m的阶乘,是文件内部函数(子函数)
function s=Jc(m)
s=1; k=1;
while k<=m
s=s*k;
k=k+1;
end
将AddJc.m保存到工作目录中,在命令窗口可以直接使用AddJc函数,但是不能使用子函数Jc。
佚名
2024-05-18 23:42:55
最佳回答
类似问题(10)
  • 佚名
    2024-05-18 22:30:35

    获取matlab 中mat文件变量名字

    p=load('文件名.mat');s=whos('-file','文件名.mat');如果你的数据结构里不止一个数据p.(s.name)(i).x和p.(s....

  • 佚名
    2024-05-18 19:55:20

    可作为matlab合法变量名的是

    MATLAB变量命名规则:变量名对大小写敏感,就是说: abc 和Abc代表的是不一样的变量; 变量名的第一个字符必须为英文字母,其长度不能超过31个字符; ...

  • 佚名
    2024-05-18 05:44:22

    matlab怎将文件名称设为变量

    如果文件可以直接用load读取,那么比较简单:N=100;  % 文件数量for i=1:N    filename = sprintf('asskil_%04...

  • 佚名
    2024-05-18 20:45:08

    matlab怎么获取变量的名称

    matlab怎么获取变量的名称变量名的第一个字符必须是英文字母,最多包含31个字符(包括英文字母、数字和下画线),变量中不得包含空格和标点符号,不得包含加减号。...

  • 佚名
    2024-05-18 10:08:28

    matlab如何实现通过变量来命名文件?

    str=input('str=','s'); %其中's'是输入字符串的意思filename=['c:\' str '.txt']这样你就可以使用filena...

  • 佚名
    2024-05-18 16:49:13

    matlab 变化变量名

    虽然不知道你这么做的目的是什么,可以用eval这个命令。可参考help eval例如:eval(['A_',num2str(i),'_',num2str(j),...

  • 佚名
    2024-05-18 09:03:50

    matlab怎么获取变量的名称

    变量名的第一个字符必须是英文字母,最多包含31个字符(包括英文字母、数字和下画线),变量中不得包含空格和标点符号,不得包含加减号。MATLAB定义多个符号变量%...

  • 佚名
    2024-05-18 08:00:00

    python 以变量内容为文件名的访问

    你所谓的打开是什么意思?读取到memory?f = open('/root/tmp/time','rb').read()print f f.closepatte...

  • 佚名
    2024-05-18 08:00:00

    matlab中变量和m文件名由什么组成?

    Matlab语言编写的可以在Matlab环境中运行的程序称为 M 文件。M 文件用扩展名.m结尾,可在命令行中执行,也可被其它程序调用,我们可以使用任何文本编辑...

  • 佚名
    2024-05-18 08:00:00

    matlab中m文件如何改名

    在命令行里执行:!move 原文件名.m 新文件名.m