哈乐和保列治价格:matlab输入输出
来源:百度文库 编辑:偶看新闻 时间:2024/04/26 18:07:44
matlab输入输出
输入语句
·
· 输入数值
x=input('please input a number:')
please input a number:22
x = 22
· 输入字符串
x=input('please input a string:','s')
please input a string:this is a string
x = this is a string
· 输出语句
· 输出显示命令
· 自由格式 (disp)
disp(23+454-29*4)
361
disp([11 22 33; 44 55 66; 77 88 99])
11 22 33
44 55 66
77 88 99
disp('this is a string')
this is a string
· 格式化输出 (fprintf)。
fprintf('The area is %8.5f\n', area) % 注意输出格式前须有%符号,
%跳行符号须有\符号
The area is 12.56637 % 输出值为8位数含5位小数
在这里你如果学过c语言就能很好的理解了。
· 错误消息显示命令
error('this is an error')
this is an error
save
将 Matlab 环境内的变量储存到磁盘档案中,输出 MAT 档案。
load
读入 MAT 档案内的变量。
diary
将 Matlab 的工作过程一五一十的记录在一个纯文字文件内。
Matlab 提供非常一般性的档案输出输入功能,它有类似 C 语言的 fopen, fclose, fread, fwrite, fscanf, fprintf 函式。但是我们不在此介绍。
先谈输出。除非档案的名称指明了路径,否则 Matlab 一律将档案写在目前定义的工作区内。用 save 指令输出的档案是 MAT 檔。它的最简单用法就是
>> save
它将目前 Matlab 环境内的所有变量都储存到 matlab.mat 档案内,而且是以原始的数据型态储存。例如所有的数都是 double,占有 8 拜或 64 毕的资料量。所以 MAT 档案的大小,差不多就是变量本身的数据含量 (会稍微大一点,因为要加上 MAT 档案的文件头数据)。例如
>> whos
Name Size Bytes Class
A 80x100 64000 double array
s 1x13 26 char array
x 1x15 120 double array
Grand total is 8028 elements using 64146 bytes
>> save
Saving to: matlab.mat
所有变量的数据含量是 64,146 拜,而储存后的 matlab.mat 档案含量是 64,344 拜。
以下略为解释 save 指令的其它用法。
save filename
将所有变量存盘,输出的档案是 filename.mat。
save filename a b c ...
将变数 a b c ... 储存到 filename.mat 内。
save filename a b c ... -append
一般来说新档案会覆盖 (overwrite) 同名的旧档案,若加了参数 -append 则新档案会增修同名的旧档案。增修的意思是,如果一个变量只在旧档案里面、或是只在新档案里面,则都会被储存起来;如果一个变量在新、旧档案里面都有,新档案中的变量会覆盖旧档案的同名变量。
利用 diary 指令,不但可以将工作流程记录下来,还可以趁机将数据数据以纯文字的形式储存。纯文字的数据数据比较浪费磁盘空间,但是比较方便转入其它程序,做其它的处理。例如一个双精度的浮点数
7.38905609893065
如果以原始数据型态储存,只需要 8 拜;如果以字符储存,则每个数目字需要一个 ASCII 码,加上小数点,共要 16 拜。如果在这个数目字的前面写四个空格,后面写一个折行符号,则又要加上 5 拜或 6 拜。但是若以纯文字形式储存,则所有编辑器或文字操作接口都可以看到这个数,它的意义一目了然。若以双精度浮点数的二进制数据型态储存,则必须用 Matlab 或其它类似 C 或 FORTRAN 这些程序语言,才能读到它的值。
我们用以下这个例子来说明 diary 的用法。
>> diary Jan08.txt
>> 1+1
ans =
2
>> diary off
>> 2+2
ans =
输入语句
·
·
x=input('please input a number:')
please input a number:22
x = 22
·
x=input('please input a string:','s')
please input a string:this is a string
x = this is a string
·
·
·
disp(23+454-29*4)
361
disp([11 22 33; 44 55 66; 77 88 99])
11 22 33
44 55 66
77 88 99
disp('this is a string')
this is a string
·
fprintf('The area is %8.5f\n', area) % 注意输出格式前须有%符号,
%跳行符号须有\符号
The area is 12.56637 % 输出值为8位数含5位小数
在这里你如果学过c语言就能很好的理解了。
·
error('this is an error')
this is an error
save
将 Matlab 环境内的变量储存到磁盘档案中,输出 MAT 档案。
load
读入 MAT 档案内的变量。
diary
将 Matlab 的工作过程一五一十的记录在一个纯文字文件内。
Matlab 提供非常一般性的档案输出输入功能,它有类似 C 语言的 fopen, fclose, fread, fwrite, fscanf, fprintf 函式。但是我们不在此介绍。
先谈输出。除非档案的名称指明了路径,否则 Matlab 一律将档案写在目前定义的工作区内。用 save 指令输出的档案是 MAT 檔。它的最简单用法就是
>> save
它将目前 Matlab 环境内的所有变量都储存到 matlab.mat 档案内,而且是以原始的数据型态储存。例如所有的数都是 double,占有 8 拜或 64 毕的资料量。所以 MAT 档案的大小,差不多就是变量本身的数据含量 (会稍微大一点,因为要加上 MAT 档案的文件头数据)。例如
>> whos
Name
A
s
x
Grand total is 8028 elements using 64146 bytes
>> save
Saving to: matlab.mat
所有变量的数据含量是 64,146 拜,而储存后的 matlab.mat 档案含量是 64,344 拜。
以下略为解释 save 指令的其它用法。
save filename
将所有变量存盘,输出的档案是 filename.mat。
save filename a b c ...
将变数 a b c ... 储存到 filename.mat 内。
save filename a b c ... -append
一般来说新档案会覆盖 (overwrite) 同名的旧档案,若加了参数 -append 则新档案会增修同名的旧档案。增修的意思是,如果一个变量只在旧档案里面、或是只在新档案里面,则都会被储存起来;如果一个变量在新、旧档案里面都有,新档案中的变量会覆盖旧档案的同名变量。
利用 diary 指令,不但可以将工作流程记录下来,还可以趁机将数据数据以纯文字的形式储存。纯文字的数据数据比较浪费磁盘空间,但是比较方便转入其它程序,做其它的处理。例如一个双精度的浮点数
7.38905609893065
如果以原始数据型态储存,只需要 8 拜;如果以字符储存,则每个数目字需要一个 ASCII 码,加上小数点,共要 16 拜。如果在这个数目字的前面写四个空格,后面写一个折行符号,则又要加上 5 拜或 6 拜。但是若以纯文字形式储存,则所有编辑器或文字操作接口都可以看到这个数,它的意义一目了然。若以双精度浮点数的二进制数据型态储存,则必须用 Matlab 或其它类似 C 或 FORTRAN 这些程序语言,才能读到它的值。
我们用以下这个例子来说明 diary 的用法。
>> diary Jan08.txt
>> 1+1
ans =
>> diary off
>> 2+2
ans =