
matlab基础练习题.doc
3页三、阅读程序并回答问题(每题4分,共28分)1、写出下列指令运行结果A=zeros(2,5); A(:)=-4:5; L=abs(A)>3 islogical(L) X=A(L)2、写出下列指令运行结果A=reshape(1:9,3,3); A(5,5)=111 A(:,6)=222 AA=A(:,[1:6,1:6]) 3、写出下列指令运行结果A=[1,2;3,4]; B=[-1,-2;2;1];S=3;A.*BA*BS.*AS*B4、写出下列程序的执行结果A=[1,2,3;4,5,6]; B=[7,8,9;10,11,12];tryC=A*B;catchC=A.*B;endC5、写出下列程序的执行结果 s=0; a=[12,13,14;15,16,17;18,19,20;21,22,23]; for k=a s=s+k; enddisp(s');6、写出下列指令运行结果x=-8^(1/2);y1=x^(2/3)y2=(x^2)^(1/3)y3=(x^(1/3))^27、下面的程序完成功能是什么?t=0:pi/50:4*pi;y0=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,'-r',t,y0,':b',t,-y0,':b')label(‘\bf\it t’);ylabel(‘\bf\it y’);xgrid on;二、阅读程序,回答问题(共42分)1、写出下列指令运行结果。
3分)A=zeros(2,4); A(:)=1:8 s=[2 3 5]; A(s) Sa=[10 20 30]'; A(s)=Sa A(:,[2 3])=ones(2) 2、写出下列指令运行结果3分)A=reshape(1:9,3,3); A(5,5)=111 A(:,6)=222 AA=A(:,[1:6,1:6]) 3、写出下列指令运行结果4分)A=[1,2;3,4]; B=[-1,-2;2;1];S=3;A.*BA*BS.*AS*B 4、写出下列指令运行结果4分)A=[1,2,3;4,5,6]; B=[7,8,9;10,11,12];tryC=A*B;catchC=A.*B;endC5、写出下列指令运行结果5分) s=0; a=[12,13,14;15,16,17;18,19,20;21,22,23]; for k=a s=s+k; enddisp(s');6、写出下列指令运行结果3分)x=-8^(1/2) ;y1=x^(2/3)y2=(x^2)^(1/3)y3=(x^(1/3))^27、下面的程序完成功能是什么?(5分)p1=conv([1,0,2],conv([1,4],[1,1])); p2=[1 0 1 1]; [q,r]=deconv(p1,p2);disp(poly2str(q,'s')),disp(poly2str(r,'s'))8、下面的程序完成功能是什么?(5分)t=0:pi/50:4*pi;y0=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,'-r',t,y0,':b',t,-y0,':b')xlabel(‘\bf\it t’);ylabel(‘\bf\it y’);xgrid on;9、下面的函数完成功能是什么?(4分)function fout=charray(a,b,c) if nargin==1 fout=a; elseif nargin==2 fout=a+b; elseif nargin==3 fout=(a*b*c)/2; end10、下面的函数完成功能是什么?(6分)clear,a=30;t=(0:a)/a*2*pi;sss={'base','caller','self'};for k=1:3 y0=evalinzzy(8,sss{k}); subplot(1,3,k) plot(real(y0),imag(y0),'r','LineWidth',3),axis square imageend function y1=evalinzzy(a,s)t=(0:a)/a*2*pi;y1=subevalinzzy(4,s);%------- subfunction --------function y2=subevalinzzy(a,s)t=(0:a)/a*2*pi;ss='a*exp(i*t)';switch scase {'base','caller'} y2=evalin(s,ss);case 'self' y2=eval(ss);end三、阅读程序并回答问题(每题4分,共28分)1、写出下列指令运行结果。
A=zeros(2,4); A(:)=1:8; s=[2 3 5]; A(s) Sa=[10 20 30]' A(s)=Sa 2、写出下列指令运行结果A=reshape(1:16,2,8) reshape(A,4,4) s=[1 3 6 8 9 11 14 16]; A(s)=0 3、写出下列指令运行结果A=[1,2;3,4]; B=[-1,-2;2;1];S=3;A.*BA*BS.*AS*B4、下面的函数主要完成什么功能? function f=factor(n)if n<=1 f=1;else f=factor(n-1)*n; end5、写出下列指令运行结果ch=‘ABc123d4e56Fg9’;subch=ch(1:5) revch=ch(end:-1:1) k=find(ch>=‘a’&ch<=‘z’); ch(k)=ch(k)-(‘a’-‘A’); char(ch) 6、写出下列指令运行结果s=0; a=[12,13,14;15,16,17;18,19,20;21,22,23]; for k=a s=s+k; enddisp(s');7、下面的程序完成功能是什么?t=0:pi/50:4*pi;y0=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,'-r',t,y0,':b',t,-y0,':b')xlabel(‘\bf\it t’);ylabel(‘\bf\it y’);grid on;四、编程题(32分)1、1、在同一图上分别用红色实线和绿色虚线绘制y1=sin(x)和y2=cos(x)在区间[0,4*pi]的曲线,并用星号*标出两条曲线的交点以及建立图例。
5分)2、分别在同一图形窗的不同子图绘制y=sin(t)sin(9t)和y=sin(t)sin(9t)及其包络线4分)4、编写程序实现f(n)=f(n-1)+f(n-2)(f(1)=1和f(2)=2)函数6分)四、编程题(32分)1、分别在同一图形窗的不同子图绘制y=sin(t)sin(9t)和y=sin(t)sin(9t)及其包络线4分)2、在同一图上分别用红色实线和绿色虚线绘制y1=sin(x)和y2=cos(x)在区间[0,4*pi]的曲线,并用星号*标出两条曲线的交点以及标注图例5分)3、编写程序实现f(n)=f(n-1)+f(n-2)(f(1)=1和f(2)=2)函数5分)三、编程题(共23分)1、在同一图上分别用红色实线和绿色虚线绘制y1=sin(x)和y2=cos(x)在区间[0,4*pi]的曲线,并用星号*标出两条曲线的交点以及标注图例5分)2、编写程序实现f(n)=f(n-1)+f(n-2)(f(1)=1和f(2)=2)函数5分)3、编写一个实现n阶乘的函数。
