lc;
clear all;
%创建三维数组
% A=zeros(2,2,3)
% A(:,:,1)=[1,2;3,4]
% A(:,:,2)=[5,6;7,8]
% A(:,:,3)=[9,10;11,12]
A=[1,2;3,4]
B=[5,6;7,8]
C=cat(3,A,B)%按照第三维将A,B链接起来
A=randn(3,4,5,2);%随机函数产生四维数组
n1=length(A(:,4,5,2))%第一维长度
n1=length(A(3,:,5,2))%第二维长度
n1=length(A(3,4,:,2))%第三维长度
n1=length(A(3,4,5,:))%第四维长度
ns=ndims(A)
A(3)%单下标索引第三个元素,第三行第一列元素,默认为列方向开始
A(1:2)%但下标索引第一到第二个元素,默认为列方向。
A(2,1:3)
A(:,[1,3,4])
A=magic(6)%产生魔方数组
B=A(1:2,1:2:5)%提取数组A第一到二行1,3,5列给B
C=A(1,[2,4,6])%将数组A第一行中第2,4,6列元素給C
D=A(3:8)%将数组A第3到8元素给D
A([2,4,5,6],:)=[]%将A数组的2,4,5,6行删除
B=[1 2;3 4];
A=[A B]%数组的扩展,将B数组添加到A数组的后面
A=[1 2;3 4]
A'%转置
A=[1 2 3;4 5 6;7 8 9]
B=diag([3 2 1])
A-B%数组减法
A+B
A*B
A^3%数组乘方
A/B
A*inv(B)%与A/B等价
A=rand(1,5)
sort(A)%数组排序 默认升序
station(1).name='s1', station(1).x=100,station(1).y=120;%对结构体创建和赋值
station(2).name='s2', station(2).x=101,station(2).y=121;
xx=station(1).x
StationGroup=struct('name',{'s1','s2','s3'},'x',{100,101,102},'y',{120,121,122})
%station.position.x=10l;
% A(1,2)={[1 2]}%元组,含有多个元素,需要用中括号,表示一个数组。
x=10,fx=0;
if x<(-1)*pi
fx=1
elseif x>pi
fx=3*x
else
fx=sin(x)
end
n=4
switch(n)
case 2
result=28
case 4
result=30
case 6
result=30
case 11
result=30
otherwise
result=31
end
sum=0
for n=1:10
sum=sum+n
end
sum=0;n=0;%初始化
while sum<=100
n=n+1
sum=sum+n
end
%从100个随机整数(0-50)中挑出大于25的数,并求和,当大于150可以停止,并打印出跳出的整数
A=randi([0 50],100);
sum=0;
B=[];
for i=1:100
if A(i)<=25
continue;
else
sum=sum+A(i);
B=[B A(i)];
end
if sum>150
break;
end
end
%以下语句不加分号
sum
B
%在书写函数时候,函数名与M文件名保持,在运行时候,一定要将他们放在同一个目录之下。
myfun=@(x,y)(x+y^2)
myfun(1,2)
% function main %主函数
A1=randn(1,10);
A2=randn(1,10);
A3=randn(1,10);
%画图1
figure
box on
hold on%在同一个figure中多次调用plot,需要hold
plot(A1,'-r')%红色的实线
plot(A2,'-.g')%绿色的点画线
plot(A3,'-b.')%蓝色的实线,数据点为黑实点
xlabel('X-axis')
ylabel('Y-axis')
%画图2
figure
box on
hold on;
plot(A1,'-ko','MarkerFaceColor','r')%黑色实线,红色圆圈数据点
plot(A2,'-cd','MarkerFaceColor','g')%蓝绿色实线,绿色菱形数据点
plot(A3,'-bs','MarkerFaceColor','r')%蓝色实线,蓝色方形数据点
% end