输入输出
使用input获取键盘输入:
str=input('请输入您的内容')
使用disp打印内容到屏幕:
disp(['这是您的内容',num2str(s)])
>> s=input('请输入您的内容')
请输入您的内容22
s =
22
>> s=input('请输入您的内容:')
请输入您的内容:22
s =
22
>> disp(['这是您的内容',num2str(s)])
这是您的内容22
使用fprintf命令带引格式化内容:和c语言类似
fprintf('您的成绩是:%.2f',score) %表示保留两位小数打印
fprintf('您的成绩是:%.2e',score) %表示保留两位小数按科学计数法打印
变量的保存和加载:
>> Data=randn(10)
>> save('data.mat','Data')
>> load data.mat 或者>> load('data.mat')
fopen函数操作文件对象
r:读模式;w:写模式;a:追加模式;r+:读写模式;w+:创建模式读写;a+:追加模式
>> fp=fopen('test.txt','a+');
>> fprintf(fp,'this is a test string.');
>> fclose(fp);
这样就创建了一个test文件,并在文件内写入了this is a test string.
逻辑运算
关系运算符:<、>、>=、<=、==、~=,真为1,假为0
逻辑运算符:与或非,&、|、~,and、or、not
内置逻辑运算函数
any(A):向量中任意元素非零返回True,矩阵以列为基准进行判断
xor:异或
all:所有元素非零时才为真
find(A>b):找出矩阵正满足条件元素的位置
>> N=[1 2 3 0;0 0 0 0;-1 -2 -3 0]
N =
1 2 3 0
0 0 0 0
-1 -2 -3 0
>> find(N>0)
ans =
1
4
7
条件结构
function z=f(x,y)
if x>0 && y>0
z=x+y;
elseif x>0 && y<=0
z=x+y.^2;
elseif x<=0 && y>0
z=x.^2+y;
else
z=x.^2+y.^2;
end
end
for循环结构
e^x的泰勒展开
function y=new_exp(x)
n=100;
y=1;
for i=1:n
y=y+x^i/factorial(i);
end
end
%%factorial(i); 表示i的阶乘
while循环结构
e^x的泰勒展开
function [n,y]=new2_exp(x)
diff=0.001;
y=1;
n=0;
while abs(exp(x)-y)>diff
n=n+1;
y=y+x^n/factorial(n);
end
end