1、第一章 2.在命令窗口输入‘’w=3+2‘’,然后依次使用clear和clc命令,分别观察命令窗口、工作空间窗口和历史命令窗口的变化。 使用clear命令时,命令窗口无变化,工作空间窗口中的内容被删除,历史命令窗口多出一条命令记录。 使用clc命令时,命令窗口中的内容被删除,工作空间窗口无变化,历史命令窗口中多出一条命令记录 3.将硬盘上一已有目录,加入到搜索路径,并将其设置为当前工作目录。 File-set path-add folder-save 第二章 1.计算复数3+4i与5-6i的乘积。 a=3+4i b=5-6i c=a*b 2.构建结构
2、体Students,属性包含Name、age和Email,数据包括{’Zhang’,18,*‘Zhang@’,’Zhang@’+}、{’Wang’,21,[]}和{’Li’,[],[]},构建后读取所有Name属性值,并且修改’Zhang’的Age属性值为19。 Students(1).Name='Zhang' Students(1).Age=18 Students(1).Email='Zhang@','Zhang@' Students(2).Name='Wang' Students(2).Age=21 Students(2).Email=[] Students(3
3、).Name='Li' Students(3).Age=[] Students(3).Email=[] Students.Name Student(1).Age=19 Student(1).Age 3.用满矩阵和稀疏矩阵存储方式分别构造下属矩阵: A=[0 1 0 0 0;1 0 0 0 0;0 0 0 0 0;0 0 0 1 0] ; F=full(A) S=sparse(A) S=sparse([2,1,4],[1,2,4],[1,1,1],4,5) 4.采用向量构造符得到向量[1,5,9....,41]. A=1:4:41 5.按水
4、平和竖直方向分别合并下述两个矩阵: A=[1 0 0;1 1 0;0 0 1],B=[2 3 4;5 6 7;8 9 10] A=[1 0 0;1 1 0;0 0 1] ; B=[2 3 4;5 6 7;8 9 10] ; C=[A B] D=[A;B] 6.分别删除第五题两个结果的第2行。 A=[1 0 0;1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] C=[A B] D=[A;B] C(2,:)=[] D(2,:)=[] 7.分别将第5题两个结果的第2行最后3列的数值改为[11 12 13]。 A=[1 0 0
5、1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] C=[A B] D=[A;B] C(2,4:6)=[11 12 13] D(2,:)=[11 12 13] 8.分别查看第5题两个结果的各方向长度 A=[1 0 0;1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] C=[A B] D=[A;B] a=size(C) b=size(D) 9.分别判断pi是否为字符串和浮点数。 tf=ischar(pi) tf=isfloat(pi) 10.分别将第5题两个结果均转换为2*9的矩阵。
6、 A=[1 0 0;1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] C=[A B] D=[A;B] E=reshape(C,2,9) F=reshape(D,2,9) 11.计算第5题矩阵A的转秩。 A=[1 0 0;1 1 0;0 0 1] B=transpose(A) 12.分别计算第5题矩阵A和B的A+B、A.*B和A\B。 A=[1 0 0;1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] C=A+B D=A.*B E=A\B 13.判断第5题矩阵A和B中哪些元素值不小
7、于4。 A=[1 0 0;1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] A>=4 B>=4 14.分别用函数strcat()和矩阵合并符合并如下字符串:’The picture is’和’very good’。 a=' The picture is ' b=' very good ' c=strcat(a,b) d=[a b] 15.创建字符串数组,其中元素分别为’Picture’和’Pitch’。 a=char('Picture','Pitch') 16.在第14题结果中查找字符串’e’。 a=' The p
8、icture is ' b=' very good ' c=strcat(a,b) d=[a b] e=strfind(c,'e') f=strfind(d,'e') 17.在第15题结果中匹配字符串’Pi’。 a=char('Picture','Pitch') x=strmatch('Pi',a) 18.将字符串’very good’转换为等值的整数。 a=double('very good') 19.将十进制的50转换为二进制的字符串。 a=dec2bin(50) 20将十六进制的字符串’50’转换为三进制的整数。 a
9、hex2dec('50') b=dec2base([a],3) c=str2num(b) 第三章 1.计算矩阵A的二范数、行列式、秩、化零空间和正交空间。 A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56] N=norm(A) A_det=det(A) Z=null(A) Q=orth(A) b=rank(A) 2.求解线性方程组AX=B,其中A如第1题所示,B=[1 1 1 1 1]的转秩。 A=[17 24 1 8 50;23 5 7 14 49
10、4 6 13 20 43;10 12 19 21 62;11 18 25 2 56] B=transpose([1 1 1 1 1]) X=A\B 3.对矩阵A进行LU分解和Schur分解,其中A如第1题。 A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56] [L1,U1]=lu(A) [U2,L2]=schur(A) 4对矩阵A的前4行进行QR分解和奇异值分解,其中A如第1题。 A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;
11、10 12 19 21 62;11 18 25 2 56] B=A(1:4,:) [Q,R]=qr(B) [U S V]=svd(B) 5计算矩阵A的特征值及对应的特征向量,判断矩阵A是否可对角化,其中A如第1题。 A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56] [V,D]=eig(A) a=inv(V)*A*V-D 6.计算矩阵A的指数、开平方和余弦值,其中A如第1题。 A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;1
12、0 12 19 21 62;11 18 25 2 56] Y1=expm(A) Y2=sqrtm(A) Y3=funm(A,@cos) 7.计算矩阵A每个元素的指数、开平方和余弦值(元素单位为度),其中A如第1题。 A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56] Y1=exp(A) Y2=sqrt(A) Y3=cosd(A) 8.计算复数矩阵C每个元素的模、相角和共轭。C=[3+4i 2–i -i;2 -2 0]。 C=[3+4i 2-i -i;2
13、 -2 0] Y1=abs(C) Y2=angle(C) Y3=conj(C) 9.分别使用函数fix()、floor()、ceil()和round(),计算第8题中的相角结果。 C=[3+4i 2-i -i;2 -2 0] Y1=fix(C) Y2=floor(C) Y3=ceil(C) Y4=round(C) 10.将2-i的模结果近似为有理数,并以数值形式显示。 a=2-i Y1=abs(a) Y2=rats(Y1) 11.计算 ,其中m=4!和n是42与35的最大公因式。 n=gcd(42,35) m=factori
14、al(4) c=nchoosek(m,n) 12.将球坐标系中的点(1,1,1)分别转换到笛卡尔坐标系和极坐标系。 [a,b,c]=sph2cart(1,1,1) [d,e,f]=cart2pol(a,b,c) 第六章 1. 将多项式A的系数向量形式[1 2 4 2 1]转换为完整形式,并将多项式B的完整形式 2x^5+x^2+3x+5表示为系数向量形式。 syms x; A=[1 2 4 2 1] [s,len]=poly2str(A,'x') B=2*x^5+x^2+3*x+5; b=[2 0 0 1 3] 2. 针对第一题A,计算自变
15、量为1~10 A=[1 2 4 2 1]; p=[1 2 3 4 5 6 7 8 9 10]; r_A=polyval(A,p) 3.针对第一题A 和B,计算A和B的乘法和除法。 p1=[1 2 4 2 1]; p2=[2 0 0 1 3 5]; w=conv(p1,p2) [q,r] = deconv(p2,p1); sq=poly2str(q, 'x') sr=poly2str(r, 'x') 4.针对第一题A 和B,计算A/B的微分。 A=[1 2 4 2 1]; B=[2 0 0 1 3 5]; [q,d]=polyder
16、A,B) 5.针对第一题A,计算其积分。 A=[1 2 4 2 1]; s1=polyint(A) 8.针对函数f(x)=exp(x)在x{0,0.1,0.2,……,5}上的取值,采用多项式进行拟合并对x{0.15,0.45,0.75}分别采用最邻近、双线性和三次样条插值方法进行插值。 x=0:0.1:5; y=exp(x); p=polyfit(x,y,5) y=polyval(p,x) plot(x,y,'ro') xlabel('x'); ylabel('y'); x=0:0.1:5; y=exp(x); xi = [0.
17、15,0.45,1.75] yi_nearest = interp1(x,y,xi,'nearset'); yi_linear = interp1(x,y,xi); yi_spline = interp1(x,y,xi,'spline '); figure; hold on; subplot(1,3,1); plot(x,y,'ro',xi,yi_nearest,'r-'); title('最邻近法'); subplot(1,3,2); plot(x,y,'ro',xi,yi_linear,'b-'); title('双线性法'); su
18、bplot(1,3,3); plot(x,y,'ro',xi,yi_spline,'g--'); title('三次样条插值法'); 9.针对二维函数f(x)=exp(xy)在x{0,0.1,0.2,……,5};y{0,0.1,0.2,……,5}上的取值,对(x,y){(0.15,0.15),(0.45,0.45),(0.75,0.75)}分别采用最邻近、双线性和三次样条插值方法进行插值。 x=0:0.1:5; y=exp(x); xi = [0.15,0.45,1.75] yi_nearest = interp1(x,y,xi,'nearset
19、'); yi_linear = interp1(x,y,xi); yi_spline = interp1(x,y,xi,'spline '); figure; hold on; subplot(1,3,1); plot(x,y,'ro',xi,yi_nearest,'r-'); title('最邻近法'); subplot(1,3,2); plot(x,y,'ro',xi,yi_linear,'b-'); title('双线性法'); subplot(1,3,3); plot(x,y,'ro
20、',xi,yi_spline,'g--'); title('三次样条插值法'); 10.产生40个服从正态分布N(-1,4)的随机数,计算它们的最大值、最小值、平均值、中间值、元素和、标准差和方差,斌按照绝对值大小进行排序,同时标出原来的序列号。 y=normrnd(-1,4,1,40); y_max=max(y) y_min=min(y) y_mean=mean(y) y_sum=sum(y) y_s=std(y) y_var=var(y) x=abs(y) [z,iz]=sort(x) 15.针对函数y=sin()x[0,10],
21、绘制其图像,并计算最大值、最小值和零点。 f = @(x)sin((x+1)./(x.^2+1)); fplot(f,[0 10],1e-4,'r-'); title('y=sin((x+1)/(x^2+1))'); xlabel('x'); ylabel('y'); grid; x_min=fminbnd(f,0,10) x_zero = fzero(f,[-5,10]) 16.针对第十五题的函数,计算在[0,10]上的积分。 f = @(x)sin((x+1)./(x.^2+1)); q = quad(f,0,10) 17.计算 expx
22、ydxdy0y -101òò。 f=@(x,y) exp(x*y).*(x+y<=1) dblquad(f,0,1,0,1,1e-6,@quadl) 18.通过在功能函数中使用含参函数,实现计算函数f(x)=x^2+ax+b的零点。 (1).function y=fzero_nestedfun(a,b,x0) options=optimset('display','off'); y=fzero(@para_fun,x0,options); function y=para_fun(x) y=x^2+a*x+b; end end (2) a=1; b=-10:
23、10; x=zeros(size(b)); for i=1:length(b) x(i)=fzero_nestedfun(a,b(i),0); end plot(b,x); xlabel('b'); ylabel('零点') 19. 计算微分方程y’’’+2y’’+y=e(t[0,2])且初始值为0的解。 function dydt=ivpodefun(t,y) dydt=zeros(3,1); dydt(1)=y(2); dydt(2)=y(3); dydt(3)=exp(t)-2*y(3)-y(1); end [t,y]=ode45(@ivpodefun,[0 2],[0;0;0]); plot(t,y(:,1),'-',t,y(:,2),'--',t,y(:,3),'*') title('常微分方程的解'); xlabel('t'); ylabel('y'); legend('y','y的一阶导数');






