MATLAB期末考试试卷及其复习资料.docx
MATLAB期末考试试卷及其参考答案一、填空题(每空1分,20分)1、MATLAB常用操作界面包括、工作空间窗口、内存数组编辑器、M文件编辑/调试器、帮助导航/阅读器、图形窗口等。2、MATLAB中Inf或inf表示、NaN或nan表示、nargout表示。3、MATLAB中逗号主要用作;用作输入量与输入量之间的分隔符;O4、工作空间阅读器主要用于内存变量的、和O5、MATLAB实现将全下标转换为单下标的指令为、据单下标换算出全下标的指令为。6、二维数组的标识有、“逻辑1”标识。7、在一个元胞数组A中寻访第2行第3列元胞元素用;寻访数组第2行第3列元胞中所存的内容用。8、4、MATLAB中CIf用于、clc用于、clear用于。二、简答题(每题5分,共20分)1、简述MATLAB历史指令窗的主要作用。2、简述空数组的功用。3、简述MATLAB函数的基本结构。4、简述绘制二维图形的一般步骤。三、阅读程序并回答问题(每题4分,共28分)1、写出下列指令运行结果。A=zeros(2,4);A(:)=l:8;s=235;A(s)Sa=102030,A(s)=Sa2、写出下列指令运行结果。A=reshape(1:16,2,8)reshape(A,4,4)s=l3689111416;A(三)=O3、写出下列指令运行结果。A=l,2;3,4;B=-l,-2;2;l;S=3;A.*BA*BS.*AS*B4、下面的函数主要完成什么功能?functionf=factor(n)ifn<=lf=l;elsef=factor(n-l)*n;end5、写出下列指令运行结果。ch=tABcl23d4e56Fg9,;subch=ch(l:5)revch=ch(end:-l:l)k=find(ch>=ta,<fcch<=tz,);ch(k)=ch(k)-(4a,-tA,);char(ch)6、写出下列指令运行结果。A(l,l)='thisiscell');Al,2=123j456;A2,l=l+2*i;A2,2=A1,21+(A1,21(1,1)+A1,21(2,2);CeIldisp(八)7、下面的程序完成功能是什么?t=0:pi/50:4*pi;y=exp(-t3);y=exp(-t3).*sin(3*t);plot(t,y,'-r,t,yOb,t,-yOb,)xlabel(4bitt,);ylabel(*bfity,);gridon;四、编程题(32分)1、1、在同一图上分别用红色实线和绿色虚线绘制yl=sin(x)和y2=cos(x)在区间0,4*pi的曲线,并用星号*标出两条曲线的交点以及建立图例。(5分)2、分别在同一图形窗的不同子图绘制y=sin(t)sin(9t)和y=sin(t)sin(9t)及其包络线。(4分)3、某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):price<200没有折扣200<price<5003%折扣500<price<10005%折扣1000<price<25008%折扣2500<price<500010%折扣5000<price14%折扣输入所售商品的价格,求其实际销售价格。(5分)4、编写程序实现f(n)=f(nl)+f(n-2)(f(l)=l和f(2)=2)函数。(6分)5、编写一个学生成果管理的程序(12分)A.构造一个学生结构,包括学生的学号,姓名,课程名称(限五门),考试成果和平均值等域;(4分)B.从键盘上,连续输入N个学生的状况,分别将这些学生的状况填入到相应的域,若域中没有值即为空或0并计算平均成果写入到平均值域。(4分)C.依据平均值排序,并输出学生的姓名、学号和平均成果。(4分)参考答案一、填空题(每空1分,20分)1、MATLAB常用操作界面包括叮嘱窗口、工作空间窗口(阅读器)、叮嘱历史窗口、当前书目窗口、内存数组编辑器、M文件编辑/调试器、帮助导航/阅读器、图形电口等。2、MATLABInf或inf表示无穷大、NaN或nan表示不是一个数、nargout表示函数输出宗量数目。3、MATLAB中逗号主要用作要显示计算结果的指令与其后指令的分隔;用作输入量与输入量之间的分隔符;用作数组元素分隔符号。4、工作空间阅读器主要用于内存变量的查阅、保存和编辑。5、MATLAB实现将全下标转换为单下标的指令为Sub2inck据单下标换算出全下标的指令为Ind2subo6、二维数组的标识有“全下标”标识、“单下标”标识、“逻辑1”标识。7、在一个元胞数组A中寻访第2行第3列元胞元素用A(2,3);寻访数组第2行第3列元胞中的内容用A2,3o8、MATLAB中CIf用于清除图形窗、ClC用于清除指令窗中显示内容、clear用于清除MATLAB工作空间中保存的变量。二、简答题(每题5分,共20分)1、简述MATLAB历史指令窗的主要作用。历史指令窗记录着用户在MATLAB指令窗中所输入过的全部指令。历史记录包括:每次开启MATLAB的时间,每次开启MATLAB后在指令窗中运行过的全部指令。应用功能有单行或多行指令的复制和运行、生成M文件等。2、简述空数组的功用。“空”数组的功用:在没有“空”数组参与的运算时,计算结果中的“空”可以合理地说明“所得结果的含义”;运用“空”数组对其他非空数组赋值,可以变更数组的大小,但不能变更数组的维数。3、简述MATLAB函数的基本结构。典型M函数文件的结构:函数申明(定义)行(FUnCtiOndeclarationline)>Hl行(ThefirStheIPteXtline)、在线帮助文本(HelPteXt)区、编写和修改记录、函数体(FUnCtiOnbody)o4、简述绘制二维图形的一般步骤。绘制二维图形的一般步骤为:曲线数据准备、选定图形窗及子图位置、调用二维曲线绘图指令、设置轴的范围、坐标分格线、图形注释、图形的精细操作。三、阅读程序并回答问题(每题4分,共28分)1、写出下列指令运行结果。A=zeros(2,4);A(:)=l:8;S=235;A(三)Sa=102030,A(三)=Saans=235Sa=102030A=1203010462、写出下列指令运行结果。A=reshape(1:16,2/8)A=13151416135791124681012ans =1234reshape(A,4,4)5913610147111581216s=l 36 8 9 11 14 16;A(三)=OO 13IO 12 O15O3、写出下列指令运行结果。A=U23,4;B=-l,-2;2,l;S=3;A.*BA*BS.*AS*Bans二-1-464ans二3O5-236912ans=-3-6634、下面的函数主要完成什么功能?functionf=factor(n)ifn<=lf=l;elsef=factor(n-l)*n;end利用函数的递归调用,求n!。5、写出下列指令运行结果。ch=fcABc123d4e56Fg9,;subch=ch(k5)revch=ch(end:-l:l)k=find(ch>=ta,<fech<=z,);ch(k)=ch(k)-(4a,-4A,);char(ch)length(k)subch=ABc12revch=9gF65e4d321cBAans=ABC123D4E56FG96、写出下列指令运行结果。A(1,1)='thisiscell');A1,2=123;456);A2,l=l+2*iJ;A2,2=A1,21+(A1,21(1,1)+A1,2)1(2,2);celldisp(八)Ai,l=thisiscellA2,l=1.0000+2.0000iAl,2)l)=123456A2,2)=7891011127、在同一个图中绘制两个函数,这两个函数分别是:y=e(-"3)yO=e(t/3)*sin(3t)其中y是用红色的细实线,而y是用兰色的虚线绘制,t的区间是(0:4兀),t的步长为50,t轴和y轴分别用斜粗题指示,图中有网格表示。四、编程题1、答案clfx=0:pi/200:2*pi;yl=sin(x);y2=cos(x);zz=x(find(abs(y1-y2)<0.005)z=min(zz)plot(x,yl;r-x,y2,'g-7)holdonplot(zz,sin(zz),(*')legend('sin',cos')2、答案t=(0:pi/100:pi)*;yl=sin(t)*l,-l;y2=sin(t).*sin(9*t);t3=pi*(0:9)/9;y3=sin(t3).*sin(9*t3)jsubplot(1,2,1)plot(t,y1,rr,t,y2,tbt3,y3,'bo,)subplot(1,2,2)plot(t,y2,b,)axis(O,pi,-l,l)3、答案PriCe=input。请输入商品价格);fab (n-2);switchfix(price100)case0,lrate=0;case2,3,4rate=3100;casenum2cell(5:9)rate=5100;casenum2cell(10:24)rate=8100;casenum2cell(25:49)rate=10/100;otherwiserate=14/100;endprice=price*(1-rate)4、答案functionf=fab(n)if(n=1)f=1;eIseif(n=2)f=2;eIsef=fab(n-1)+end5、答案str1=',;str2="str3=',;vaI=ceII(5,2)a=zeros(5,1);ave=0;student=struct('Name',str1,n=input(,pIeaseinputstudentsfori=1:nstr1=input('Name:,);%价格小于200%价格大于等于200但小于500%价格大于等于500但小于1000%价格大于等于100O但小于2500%价格大于等于2500但小于5000%价格大于等于5000%输出商品实际销售价格tstr2,Scores',vaI,Ave',ave);number:,);str2=input(,No.:,);%fork=1:2%vaI(k,:)=input(,CurricuIumsandScores:');%a(k,1)=vaIk,2;%end%vaI(1f:)