一、选择题(有10个题,共20分)1.有一个4×4矩阵A,表示取得矩阵A的第一行和第二行的第二列至第四列所有元素的命令是(A)(A)A(1:2,2:4)(B)A(2:4,1:2)(C)A(1:2:4)(D)A(4:2:1)2.将一个图形窗口分成3×4个子区并表示第一个子区的命令是(C)A.subplot(12,1)B.subplot(1,12)C.subplot(3,4,1)D.subplot(1,3,4)3.利用Matlab的符号计算功能计算微分方程初值问题2)1(42yxxydxdy在区间[1,2]上的解析解时所用到的函数是(D)(A)ode23(B)ode45(C)solve(D)dsolve4.以下有关Matlab子函数的性质中不正确的是(D)(A)子函数只能被处于同一个文件的主函数或其他子函数调用;(B)在M函数文件中,任何指令通过“名字”对函数进行调用时,子函数的优先级仅次于内装函数;(C)在M函数文件内,主函数的位置不可改变,但子函数的排列次序可以任意改变;(D)help,lookfor等帮助指令都能提供关于子函数的任何帮助信息。5.以下语句中生成按钮控件的语句是(B)(A)h_1=uimenu(gcf,'Label','&Blue');(B)h_1=uicontrol(gcf,'style','push','string','gridoff','callback','gridoff');(C)h_1=uicontrol(gcf,'style','text','horizontal','left','string',{'输入'});(D)h_1=axes('unit','normalized','position',[0,0,1,1],'visible','off');6.以下有关Matlab函数及其句柄的说法中正确的是(A,C)(A)在该函数的目录下可定义该函数的句柄,句柄定义后,可用feval函数和句柄在任何目录下调用该函数;(B)函数不在Matlab的当前工作目录下不可执行,但可以用feval函数和句柄调用该函数;(C)函数不在Matlab的当前工作目录下时,可以定义函数的句柄;(D)函数不在Matlab的当前工作目录下时,不可以定义函数的句柄。7.以下4种语句中Matlab独有的语句是(C)(A)if语句(B)for语句(C)try语句(D)switch语句8.以下Matlab程序的运行结果是(B)(A)p=34(B)p=23(C)p=234(D)p=24m=4;p=2:m;fori=2:sqrt(m)n=find(rem(p,i)==0&p~=i);p(n)=[];endp9.利用Matlab的符号计算功能求2)2(xx的解的命令是(A)(A)symsx;(B)s=solve('(x+2)^x=2',x)s=solve('(x+2)^x=2',x)(C)symsx;(D)symsx;s=dsolve('(x+2)^x=2',x)s=ode23('(x+2)^x=2',x)10.根据一组给定的采样点x0=0:0.1:1;y0=[-.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22];,求3阶拟合多项式的Matlab命令是(B)(A)P=polyval(x0,y0,3)(B)P=polyfit(x0,y0,3)(C)P=interp1(x0,y0,3)(D)P=spline(x0,y0,3)二、搭配题(有20个,共10分)要求:第一组给出了Matlab命令、变量或函数,第二组给出了命令、变量或函数的含义,从第二组的含义中选择正确的添到第一组命令、变量或函数后面的括号中。第一组:(1)who(o)(2)whos(r)(3)clear(t)(4)clf(i)(5)rand(g)(6)disp(m)(7)nargin(a)(8)nargout(f)(9)ans(k)(10)inf(p)(11)i(j)(12)eps(l)(13)nan(c)(14)gcf(h)(15)gca(b)(16)gco(s)(17)sym(e)(18)syms(d)(19)input(q)(20)pause(n)第二组:(a)记录函数的输入参数的个数(b)获取当前轴对象的句柄(c)非数(d)定义多个符号变量(e)定义一个符号变量(f)记录函数的输出参数的个数(g)产生0和1之间均匀分布的随机数(h)获取当前图形窗口的句柄(i)清除当前图形窗口(j)虚单位(k)计算结果的缺省变量名(l)机器零(m)显示数组内容(n)暂停(o)显示工作空间中的所有变量的变量名(p)无穷大(q)提示用户输入数据(r)显示工作空间中的所有变量的详细信息(s)获取当前对象的句柄(t)清除工作空间中保存的所有变量三、填空题:(有15个空,每空1分,共15分)2.MatLab是_______MatrixLaboratory__________的缩写,是CleverMoler博士最初用______Fortran_____语言编写的。3.表示复数iez62的Matlab表达式为_____2*exp(pi*i/6)___________。4.Matlab命令linspace(0,2*pi,50)产生的是____0:(2*pi/49):2*pi_____。5.若矩阵A=[123;456;789],则zeros(size(A))产生的矩阵是_[000;000;000],diag(diag(A))产生的矩阵是_[100;050;009]_,若有命令B=A([3,1],:),则B=_[789;123]_。6.在Matlab命令窗口中运行命令X=(0:2*pi)/10,Y=2*exp(-0.5*X).*sin(2*pi*X),subplot(2,2,2),plot(X,Y)后得到的结果是__在当前图形窗口的右上角区域绘制一条蓝色折线_____________,其中subplot函数的作用是____划分并选定绘图区域____________________。7.Matlab命令int(sym('6+0.3*x'),0,10)计算的是___100)3.06(dxx______的值。8.Matlab的基本功能有____数值计算____,____符号计算_____,___绘图____,____编程____,_____GUI开发____。四、判断题(有5个题,每题1分,共5分)1.在Matlab中,直接用命令r=(-8)^(1/3)计算38得到的是-2。(×)2.在Matlab中,meshgrid函数的作用是绘制三维曲面图形。(×)3.在Matlab中,使用变量时不需要说明变量的类型。(√)4.在Matlab中,命令inline('a*exp(x)*cos(y)','a','x','y')的含义是建立符号表达式yaexcos(其中,a,x,y是符号变量)。(×)5.在Matlab中,eval函数不能执行函数句柄指定的计算。(√)五、简答题(有3个题,每题4分,共12分)1.Matlab有两种M-文件类型,一是命令文件,二是函数文件,分别用这两种M-文件类型编写程序实现两个变量的值的交换。(1)clear;a=input('a=');b=input('b=');t=a;a=b;b=t;(2)function[a,b]=vch(a,b)t=a;a=b;b=t;2.用两种方法建立符号表达式62532xyyx。(1)symsxyf=3*x^2+5*y+2*x*y+6(2)f=sym(‘3*x^2+5*y+2*x*y+6’)3.语句h_submenu1=uimenu(gcf,'Label','&Blue','Callback','set(gcf,''color'',''blue'')');生成什么对象?解释该对象的各属性。答:语句h_submenu1=uimenu(gcf,'Label','&Blue','Callback','set(gcf,''color'',''blue'')');生成用户菜单对象。该对象的各属性如下:句柄名:h_submenu1父句柄:gcf菜单项字符:’Blue’(其中B为快捷键)回调属性:set(gcf,'color','blue')六、编写Matlab代码(有3个题,共18分)1.看图完成以下的程序代码:(6分)x=linspace(0,2*pi,60);y=sin(x);z=cos(x);subplot(1,2,1)%将图形窗口分割成1×2个小区并选择1号区plot(x,y);_______(1)_title(‘sin(x)’)__%标注标题_______(2)__axes([0,2*pi,-1,1])__%生成坐标轴_______(3)__legend(‘sin’)_________%标注图例subplot(1,2,2)%将图形窗口分割成1×2个小区并选择2号区plot(x,z);_______(4)__title(‘cos(x)’)__%标注标题_______(5)__axes([0,2*pi,-1,1])_%生成坐标轴_______(6)__legend(‘cos’)__%标注图例2.写出求多项式1)1)(4)(2(32sssss的商及余多项式的Matlab命令。(6分)p1=conv([1,0,2],conv([1,4],[1,1]));p2=[1011];[q,r]=deconv(p1,p2);cq='商多项式为';cr='余多项式为';disp([cq,poly2str(q,'t')])disp([cr,poly2str(r,'t')])4.编写一个函数文件,当有一个输入参数时作平方运算,当有两个输入参数时作两个参数的相加运算。(6分)functionf=fun1(x,y,z)ifnargin==1f=x*x;end;ifnargin==2f=x+yend;七、阅读程序:(有3个程序,共20分)1.阅读以下程序,并回答问题(10分)%%%circle.m文件%%%functionsa=circle(r,s)ifnargin2error('Toomanyinputarguments!!!');elseifnargin==0error('musthaveoneortwoinputarguments!!!');end;ifnargin==1s='b';end;clf;t=0:pi/100:2*pi;x=r*exp(i*t);ifnargout==0plot(x,s);elsesa=pi*r*r;fill(real(x),imag(x),s)endaxis('square')问题:(1)circle函数文件有几种调用格式?(2)如果在命令窗口中输入circle(3,'r')命令,则得到什么样的结果?(3)如果输入ss=circle(3)呢?(4)解释fill函数和最后一行。答:(1)circle(3)或s=circle(3)或circle(3,'r')或s=circle(3,'r')(2)画一中心在原点,半径为3的红色空心圆;(2)画一中心在原点,半径为3的蓝色填充圆,并返回圆面积给ss;(4)将以real(x)为自变量,imag(x)为因变量构成的封闭多边形用s的颜色填充axis('square')的作用是使绘图区域呈正方形2.阅读以下程序并在指定位置上写注释(6分)t=(0:0.02:2)*pi;x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z,'r-',x,y,z,'bd')%___(1)_绘制一条红色连续曲线和蓝色菱形离散点view([-82,58])%___(2)__以方位角-82度,俯角58度观察视图boxon%显示坐标轴的矩形框legend('图形','视角')%__(3)_标注图例______holdon%__(4)_保持图形_____x=-4:4;y=x;[X,Y]=meshgrid(x,y)