1.p=[2,0,-3,71,-9,13];%建立多项式系数向量x=roots(p);%求根2.a=[2,3,-1;8,2,3;45,3,9];%建立系数矩阵ab=[2;4;23];%建立列向量bx=inv(a)*b3.基本运算sin(45*pi/180)sqrt(2*exp(4.92+0.5)+1)4.常用命令命令含义clc清除命令窗口的显示内容clear清除Matlab工作空间中保存的变量who或whos显示Matlab工作空间中的变量信息dir显示当前工作目录的文件和子目录清单cd显示或设置当前工作目录type显示指定m文件的内容help或doc获取在线帮助quit或exit关闭/推出MATALB5.matlab组成菜单栏、工具栏、文件编辑窗口、命令窗口、工作空间、历史命令窗口、命令提示符、Start菜单6.MATLAB提供的帮助信息有两类简单纯文本帮助信息Helplookfor(条件比较宽松)例:inverse窗口式综合帮助信息(文字、公式、图形)Dochelpwin7.符号计算symsxyz%建立符号变量[x,y,z]=solve(2*x+3*y-z-2,8*x+2*y+3*z-4,45*x+3*y+9*z-23)8.求解定积分xxxx53223719130xyzxyzxyz2328234453923求解I=quad('x.*log(1+x)',0,1)或symsxnt(x*log(1+x),0,1)ans=9.多项式曲线拟合x=[1,2,3,4,5,6,7,8,9,10]y=[1.2,3,4,4,5,4.7,5,5.2,6,7.2]注:一次多项式拟合:p1=polyfit(x,y,1)三次多项式拟合:p3=polyfit(x,y,3)plot原始数据、一次拟合曲线和三次拟合曲线x2=1:0.1:10;y1=polyval(p1,x2)y3=polyval(p3,x2)plot(x,y,’*’,x2,y1,‘:’,x2,y3)10.复数及其运算MATLAB中复数的表达:z=a+bi,其中a、b为实数。MATLAB把复数作为一个整体,象计算实数一样计算复数。11.矩阵是Matlab最基本的数据对象,并且矩阵的运算是定义在复数域上的。12.Matlab程序控制结构顺序结构分支结构if-then-else语句if判断语句语句1endif判断语句语句1else语句2endswitch-case语句switch判断值case判断值1ln()xxdx10132[1205(25])yxxxInMAByTLA语句1case判断值2语句2…otherwise语句nend循环结构for-end语句for循环控制变量=起始值:步长:终止值循环体endwhile-end语句while循环判断语句循环体end其他语句break和continue语句break:跳出循环continue:提前结束当前循环return语句:终止程序try-catch语句:异常处理13.M文件(函数文件)建立、编辑、保存、调用14.创建一维数组变量行:第一种方法:使用方括号“[]”操作符a=[13pi3+5*i]%ora=[1,3,pi,3+5*i]a=1.00003.00003.14163.0000+5.0000i第二种方法:使用冒号“:”操作符b=1:10%x=Start:Increment:Endb=12345678910第三种方法:利用函数linspace函数linspace的基本语法x=linspace(x1,x2,n)该函数生成一个由n个元素组成的行向量;x1为其第一个元素;x2为其最后一个元素;x1、x2之间元素的间隔=(x2-x1)/(n-1)。如果忽略参数n,则系统默认生成100个元素的行向量键入并执行x=linspace(1,2,5)x=1.00001.25001.50001.75002.0000第四种方法:利用函数logspace列:使用方括号“[]”操作符,使用分号“;”分割行。键入并执行x=[1;2;3]X=12315.创建二维数组变量第一种方法:使用方括号“[]”操作符键入并执行a2=[123;456;789]a2=123456789第二种方法:函数方法函数ones(生成全1矩阵)、zeros(生成全0矩阵)、reshapereshape的使用演示a=-4:4a=-4-3-2-101234b=reshape(a,3,3)b=-4-12-303-214单下标的使用a=zeros(2,5);a(:)=-4:5a=-4-2024-3-1135注意数组的排列顺序。16.元素与子数组的寻访与赋值一维数组元素与子数组的寻访与赋值:a=linspace(1,10,5)a=1.00003.25005.50007.750010.0000a(1:3)%寻访前3个元素组成的子数组a([125])%寻访a的第1、2、5个元素组成的子数组a(3:-1:1)%由前3个元素倒序构成的子数组a([12355321])ans=1.00003.25005.500010.000010.00005.50003.25001.0000数组元素可以被任意重复访问,构成长度大于原数组的新数组。二维数组元素与子数组的寻访与赋值:a_2=zeros(2,4)%创建2x4的全0数组a_2=00000000a_2(:)=1:8a_2=13572468a_2([258])%单下标方式寻访多个元素ans=258a_2([258])=[102030]a_2=13207104630a_2(:,[23])=ones(2)%双下标方式寻访并修改a_2=1117101130size函数返回变量的大小,即变量数组的行列数length函数返回变量数组的最大维数sub2ind函数-双下标转换为单下标sub2ind(size(A),2,1,2)ind2sub函数-双下标转换为单下标[I,J]=ind2sub(size(b),IND)17.矩阵算术运算运算运算符含义说明加+相应元素相加减-相应元素相减乘*矩阵乘法点乘.*相应元素相乘幂^矩阵幂运算点幂.^相应元素进行幂运算左除或右除\或/矩阵左除或右除左点除或右点除.\或./A的元素被B的对应元素除18.Matlab提供了6种关系运算符:、、=、=、==、~=(不等于)P=rem(A,3)==0%被3除,求余Matlab提供了3种逻辑运算符:&(与)、|(或)、~(非)算术运算优先级最高,逻辑运算优先级最低。19.求向量的最大值和最小值:(1)y=max(X):返回向量X的最大值存入y,如果X中包含复数元素,则按模取最大值;(2)[y,I]=max(X):返回向量X的最大值存入y,最大值的序号存入I,如果X中包含复数元素,则按模取最大值。求矩阵的最大值和最小值:求矩阵A的最大值的函数有3种调用格式,分别是:(1)max(A):返回一个行向量,向量的第i个元素是矩阵A的第i列上的最大值;(2)[Y,U]=max(A):返回行向量Y和U,Y向量记录A的每列的最大值,U向量记录每列最大值的行号;(3)max(A,[],dim):dim取1或2。dim取1时,该函数和max(A)完全相同;dim取2时,该函数返回一个列向量,其第i个元素是A矩阵的第i行上的最大值。求最小值的函数是min,其用法和max完全相同。求和与求积:sum(X):返回向量X各元素的和。prod(X):返回向量X各元素的乘积。sum(A):返回一个行向量,其第i个元素是A的第i列的元素和。prod(A):返回一个行向量,其第i个元素是A的第i列的元素乘积。sum(A,dim):当dim为1时,该函数等同于sum(A);当dim为2时,返回一个列向量,其第i个元素是A的第i行的各元素之和。prod(A,dim):当dim为1时,该函数等同于prod(A);当dim为2时,返回一个列向量,其第i个元素是A的第i行的各元素乘积。平均值与中值:求数据序列平均值的函数是mean,求数据序列中值的函数是median。两个函数的调用格式为:mean(X):返回向量X的算术平均值。median(X):返回向量X的中值。mean(A):返回一个行向量,其第i个元素是A的第i列的算术平均值。median(A):返回一个行向量,其第i个元素是A的第i列的中值。mean(A,dim):当dim为1时,该函数等同于mean(A);当dim为2时,返回一个列向量,其第i个元素是A的第i行的算术平均值。median(A,dim):当dim为1时,该函数等同于median(A);当dim为2时,返回一个列向量,其第i个元素是A的第i行的中值。20.字符串1)Matlab用「单引号」来界定一个字符串。可以使用方括号“[]”直接连接多个字符串变量,得到一个新字符串变量。str1=‘IlikeMATLAB,’;%建立字串变量str1str2='JavaScript,andPerl!';%建立字串变量str2str3=[str1str2]%直接连接str1及str2,以建立str3str3=IlikeMATLAB,JavaScript,andPerl!2)如要输入的字符串中有单引号,则由两个连续的单引号来表示。若要计算字符串变量的长度(即组成字符串的个数),可用length指令。sentence='I''vegotadate!';length(sentence)%计算字字符串sentence的长度3)double指令:查看字符串变量的存储內容(即ASCII内码)char指令:将ASCII內码转换为字符串形式sentence='I''vegotadate!';sentenceAscii=double(sentence)%查看sentence的ASCII码sentence2=char(sentenceAscii)%将ASCII码恢复成字符串形式4)class或ischar指令:可以用来判断一个变量的类型或它是否为字符串变量。chinese=‘今日事,今日毕';out1=class(chinese)%out1的值是“char”x=chinese+1;out2=ischar(x)%out2的值是0,代表x不是字符串变量21.一个字符数组变量存储多行字符串1)第一种方法是使用二维字符数组(TwoDimensionalCharacterArrays)必须先确认每个字符串(即每一行)的长度一样,否则就必须在短字符串结尾补齐空格departments=[‘ee’;‘cs’;‘econ’]注意上述语句中空格字符的使用。departments=eecsecon2)用char指令存储多字符串departments=char(‘ee’,‘cs’,‘econ’)%注意空格及「,」的使用3)从二维字符数组访问字符串时,切记要使用deblank指令来清除字符串尾部的空格字符departments=char('ee','cs','econ');dept1=departments(1,:);%(1,:)代表第一行的全部元素dept2=deblank(dept1);%使用deblank指令清除尾部的空格字符len1=length(dept1)%显示变量dept1的长度=4len2=length(dept2)%显示变量dept2的长度=222.字符串的操作strcmp指令:用于比较字符串的內容的异同不相等返回0,相等返回1out1=strcmp(str1,str2)%比较字符串str1和str223.空数组(emptyarray)有一维是0的数组即为空数组空数组不占据存储空间最简单的空数组:0x0的矩阵复杂的空数组:0x5or10x0例如:a=[];b=ones(0,5);察看空数组:a,b,c%orwhosabc空数组并非全0数组数组维数的减小删除数组的某列和行a=magic(4),a(:,2)=[]删