目录
1.输入
格式:A=input(提示信息,选项);
输入字符串时可在后面加上's' 如不加则输入时需要加上单引号
x=input('请输入你的名字','s')
2.输出
(1).disp函数
A=[1 2 3;4 5 6;7 8 9];
disp(A)
>> project_of_matlab
1 2 3
4 5 6
7 8 9
(2).fprintf()函数
>> fprintf(‘the value is %5d, for %6.2f\n’,4^3,0.0232)
the value is 64, for 0.02
%5d 占用5个字符宽度;
%6.2f 2个小数位,占用6个字符宽度
%d 整数
%f 浮点数
%c 单个字符
%s 字符串
\n 换行符 (避免下一个提示符出现在与输出同一行的结尾处)
3.文件的保存与加载
save 函数用来将矩阵中的数据保存到一个文件中,格式为:
save filename(文件名) variables(要保存的变量名)
比如, save testfile.mat A
save BER.txt Pe -ascii
4.从文件中读数据
load 函数用来将一个文件中的某个变量数据加载工作空间,格式为:
load filename variables
5.实例演示
写一个求fibonacci数的程序。它是一个数列,从[1,1]开始,由数列的最后两个元素之和生成新的元素,依次递推。
R=input('请输入fibonacci的最大范围');
f=[1 1];
i=1;
while f(i)+f(i+1)<R
f(i+2)=f(i)+f(i+1);
i=i+1;
end
f,plot(f);
请输入fibonacci的最大范围200
f =
1 1 2 3 5 8 13 21 34 55 89 144
6.matlab中的函数
function [输出形参表] = 函数名(输入形参表)
注释说明部分;
函数体语句;
end
编写函数文件,实现直角坐标(x,y)与极坐标(ρ,θ)之间的转换。
函数文件:
function [rho,theta] = tran(x,y)
rho=sqrt(x*x+y*y);
theta=atan(y/x);
主程序:
x=input('请输入x的值');
y=input('请输入y的值');
%% 调用函数
[rho_1, theta_1] = tran(x,y)
请输入x的值2
请输入y的值3rho_1 =
3.6056
theta_1 =0.9828
Matlab在函数调用上有一个与一般高级语言不同之处:
函数所传递参数数目的可变性,即参数的数量可以改变。在调用函数时,Matlab用两个预定义变量nargin和nargout分别记录调用该函数时的输入实参和输出实参的个数。
示例:
function fout = examp (a,b,c)
if nargin == 1
fout = a;
end
if nargin == 2
fout = a+b;
end
if nargin == 3
fout = (a*b*c)/2;
end
x = 1;
y = 2;
examp(x)
examp(x,y)
examp(x,y,3)
结果如下:
ans =
1
ans =3
ans =3