MATLAB期末考试试卷及答案
- 格式:pdf
- 大小:267.78 KB
- 文档页数:7
matlab期末复习题及答案1. MATLAB基础操作在MATLAB中,如何创建一个名为"myMatrix"的3x3矩阵,其元素分别为1, 2, 3, 4, 5, 6, 7, 8, 9?答案:在MATLAB中,可以通过直接输入矩阵元素来创建矩阵。
例如,要创建一个名为"myMatrix"的3x3矩阵,可以使用以下命令:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```这样,MATLAB就会创建一个3x3的矩阵,其元素按照行顺序排列。
2. 矩阵运算给定两个矩阵A和B,其中A = [1 2; 3 4],B = [5 6; 7 8],计算矩阵A和B的和。
答案:在MATLAB中,可以使用加号(+)来计算两个矩阵的和。
对于给定的矩阵A和B,可以使用以下命令来计算它们的和:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A + B;```执行上述命令后,矩阵C的结果将是:```C = [6 8;10 12];```3. 条件语句编写一个MATLAB脚本,判断一个给定的数n是否为质数,并输出相应的信息。
答案:在MATLAB中,可以使用if-else语句来判断一个数是否为质数。
以下是一个简单的脚本示例:```matlabn = input('请输入一个数:');if mod(n, 2) == 0 && n > 2disp('该数不是质数');elseif n == 1disp('1不是质数');elseisPrime = true;for i = 2:sqrt(n)if mod(n, i) == 0isPrime = false;break;endendif isPrimedisp('该数是质数');elsedisp('该数不是质数');endend```该脚本首先接收用户输入的数n,然后通过一个for循环检查n是否有除了1和它自身以外的因数,从而判断n是否为质数。
模拟试题3一、填空题(2’×15=30’)1、在Matlab开发环境是一个集成的工作环境,包括、、、和等。
2、Matlab命令窗口中的“>>”符号表示。
3、clc表示:;more表示:;who表示:。
4、文件编辑器中的赋值语句后面的冒号“;”表示:;“%”表示:。
5、求矩阵行列式的函数:;求矩阵特征值和特征向量的函数。
6、在Matlab命令窗口中运行命令可以打开Simulink模块库浏览器窗口。
二、简答题(6’×4=24’)1、如何实现退出Matlab环境?2、在Matlab中绘制一个图形的步骤有哪些?3、Matlab提供了哪四类程序控制结构方式?4、说明进入到Matlab开发环境的方法?三、程序设计及分析(6’×7+4’=46’)1、在命令窗口中执行“>>x=ones(3,2)”的结果是:2、编程实现连接str1和str2,str1='My name is LI ming',str2='your name'?3、把2行3列矩阵A变成1行6列的矩阵B。
(123456A⎡⎤=⎢⎥⎣⎦)?4、设随机变量X~N(0,1),求概率P{X<=0.4}?5、求3()25f x x x=--在[0,5]内的最小值点?6、对表达式31f a=-进行因式分解?7、分析以下程序执行后的效果?x=-2:0.2:2;y=x;[x,y]=meshgrid(x,y);z=x.*exp(-x.^2-x.^2);mesh(x,y,z);模拟试题3及答案一、填空题(2’×15=30’)7、在Matlab开发环境是一个集成的工作环境,包括Matlab命令窗口、文件编辑调试器、工作空间、数组编辑器和在线帮助文档等。
8、Matlab命令窗口中的“>>”符号表示命令提示符。
9、clc表示:清空命令窗口中的显示内容;more表示:在命令窗口中控制其后每页的显示内容行数;who表示:查阅Matlab内存变量名。
matlab考试题及答案【篇一:matlab期末考试试卷及参考答案】lass=txt>1.设有程序a=[2,0,1,0;1,0,1,5;0, 6 ,2, 3];b=[1,2,-1;1,3,1];c=a(1:3,[1,2]);d=size(c)- length(b(2,:));f= c.*b’将下列命令的运行结果填在横线上0*、02. a=[2,3,2,1;1,2,2,1; 1,2,3,-2];a1=sum(aa(2,1));a(2,:)=[],a2=a.^2-4a1=; a2=;3.p=[1,2,5,4;2,2,1,3];max(p;mean(p3??x?sint(1).?(0?t?2?);3??y?cost二、(本题满分10分)试编写计算程序画出曲线与曲面图形(2).z?(x2?1)e?x?y22?xy,?2?x?2,?2?y?2.2%1 %2t=0:0.1: 2*pi; [x,y]=meshgrid(-2:0.1:2);x= sin(t).^3;z=(x.^2+1).* exp(-x.^2- y.^2+)+x.^2.*y; y= cos (t).^3;mesh(x,y,z) plot(x,y)三、(本题满分12分)编写程序解决下列问题:(1)试产生100?4阶矩阵使其元素在0—100之间的随机整数,可将此矩阵理解为100名同学的四门课程(课程1, 课程2, 课程3, 课程4)的成绩. (2)计算出每门课程和每位同学的平均成绩; (3)统计出总的优秀人次(90分及以上为优秀);(4)统计出四门课程成绩至少有两门课程不及格的人数. 解:(1) a=fix((100-0+1)*rand(100,4));(2) mean(a)mean(a,2) (3)sum(sum(a=90,2)==4)(4)sum(sum(a60,2)=2)四、(本题满10分)n设f(x)??k?1(?1)kk?1sinkx,返回该函数并保存y?fun1(x,n));(1)试编写函数式文件程序(程序的第一句为:function(2)用子图画出该函数在[0,2?]内图形(分别取n?20,50).(1). function y=fun1(x,n)(2). x=0:0.1:2*pi; y=0; y1= fun1 (x,20); for k=1:n y2= fun1 (x,50);y=y+ ((-1)^(k+1)*sin(k*x))/k; subplot(2,1,1),plot(x,y1)endsubplot(2,1,2),plot(x,y2) y五、(本题满分10分)试利用微分方程的数值解法写出下列微分方程的求解步骤和matlab程序. x???3tx??x?t,x(0)?2,x?(0)?0.(t的变化区间为[0,10]). 第一步:先将高阶微分方程转化为一阶微分方程组:选择状态变量x1?x?,x2?x,则原方程化为???3tx1?x2?t,?x1???x1.?x2x1(0)?0,x2(0)?2dxdt = [-3*t*x(1)+ x(2)+t; x(1)];第三步:求解微分方程,命令如下:[t,x]=ode45(@fun2,[0,10],[0;2])六、运用符号运算功能计算1.求方程ex下列各题,:?x2?2的根;?xsinxa???xe??lnx?da21?,并计算,?a(x)dx,a;dxs?x??;t?x?2e,x(0)?x?(0)?x??(0)?x???(0)?1的解2.生成符号矩阵3.计算极限limcosx?x(esinxcosx?x)x?04.用dsolve函数求解微分方程x六、参考程序: 1. solve(exp(x)=x^2+2) 2.syms x sa=[x*sin(x),log(x);exp(-x),1/(s+x)] diff(a) int(a) a*a 3.syms x limit((cos(x)-cos(x)^(1/2))/x/(exp(sin(x))-1))4.dsolve(d4x+x=2*exp(t),x(0)=1,dx(0)=1,d2x(0)=1,d3x(0)=1)七.用fsolve函数以及符号运算功能22??4x1?x2?2x1x2?x2?2?0?22??2x1?x2?3x1x2?3?0求解下面的非线性方程组:解一:function y=fc(x)y(1)=4*x(1).^2+x(2).^2+2*x(1).*x(2)-x(2)-2y(2)=2*x(1).^2+x(2).^2+3*x(1).*x(2)-3 y=[y(1) y(2)];x0=[1 1];fsolve(@fc,x0)解二: syms x1 x2[x1 x2]=solve(‘4*x1^2+ x2^2+2* x1* x2- x2-2=0’,’ 2*x1^2+x2^2+3* x1* x2-3=0’,’ x1’,’ x2’)《matlab程序设计》参考程序一、 (30分)1. d =0 -1 f =2 0 2 0 0 6 2. a1 =1 3 3 0 a2 =0 5 0 -3-3 0 5 0 3. max(p,[ ],1)=2 2 5 4mean(p,2)=32 4. x=15 5.0 1 4 -1 0 1 -4 -1 0 6.z =2010 7.285二、(10分)%1t=0:0.1: 2*pi; x= sin(t).^3; y= cos (t).^3; plot(x,y) %2[x,y]=meshgrid(-2:0.1:2);z=(x.^2+1).* exp(-x.^2- y.^2+)+x.^2.*y; mesh(x,y,z)三、(16分)syms xlimit((x-1)*log(x)/(exp(x-1)-1),x,1) %2solve(exp(x)-3*cos(x)+1=0) %3 syms xm=[ exp(-x), x;sin(x),exp(-0.1*x)* cos(3*x)] diff(m,2) int(m,x,0,pi) %4 syms t xdsolve(dx-6*x=exp(-t) ,x(0)=1)四、(12分)x=0.5:9.5;y=[ 0.16, 0.40, 0.66, 0.75, 0.88, 1.0, 1.1, 1.1, 1.2, 1.3];x1=1./x;y1=1./y; p=polyfit(x1,y1,1); a=p(2); b= p(1);ye=x./(a*x+b); plot(x,y,ro, x, ye, b-)grid onxlabel(自变量x ) ylabel(因变量y )title(因变量 y与自变量 x的拟合曲线图)五、(12分)%参考程序cj=round(normrnd(70,10,100,4)); for i=1:100 for j=1:4if cj(i,j)100 cj(i,j)=100;elseif cj(i,j)0 cj(i,j)=0;end end endkmean=round(mean(cj))disp(课程1课程2课程3课程4)disp(sprintf( %4d%7d%8d%8d ,kmean(1),kmean(2),kmean(3),k mean(4))) studentmean=round(mean(cj,2));studentnumber=[1:100];[studentnumber, studentmean] c=sum(sum(cj=90))【篇二:matlab习题及答案】241?b?1,计算a??与?468?的数组乘积。
模拟试题B一、填空题(2’×18=36’)1、Matlab系统由、、、和5大部分组成。
2、Matlab的基本运算符包括、、等。
3、在Matlab编辑器中运行程序的快捷键是:。
4、函数rand表示:;randn函数表示:;size函数表示:。
5、实现Fourier变换在Matlab中的对应函数为:;Laplace变换的函数:。
6、函数M文件的有效第一行的执行标识为:。
7、通常程序调试有两种方法:和利用。
8、Matlab提供的图形用户界面开发环境是:。
二、简答题(6’×4=24’)1、在命令行中输入“save Filename1a b”表示?2、分析以下函数执行过程,回答问题:function c=testarg1(a,b)if(nargin==1)c=a.^2;elseif(nargin==2)c=a+b;end如果用户使用一个参数调用函数testarg1,函数执行什么功能?如果使用两个参数调用函数testarg1,函数又执行什么?3、打开和关闭文件的函数是什么?分别说明其作用。
4、新建Simulink仿真模型文件的方法是什么?三、程序设计及分析(6’×6+4’=40’)1、编程实现函数3()25f x x x =--的根?2、将下列字符矩阵S 转换为数字矩阵('1''2''3''4'S ⎡⎤=⎢⎥⎣⎦)?3、把矩阵A ,B 分别在垂直方向,水平方向连接,A=[123],B=[456]?4、求()1020x f x x =-+=在00.5x =附近的根?5、编程实现一元二次方程20ax bx c ++=?6、绘制函数图形:1sin(),2cos()y x y x ==。
要求:(1)[]0,2x π∈;(2)数据采样间隔/50π?(3)设置网格;(4)添加图形标注;(5)两幅图叠加在一张图中。
模拟试题B及答案一、填空题(2’×18=36’)9、Matlab系统由Matlab开发环境、Matlab语言、Matlab数学函数库、Matlab图形处理系统和Matlab应用程序接口5大部分组成。
MATLAB期末考试试卷及其参考答案一、填空题1、MATLAB常用操作界面包括、工作空间窗口、、、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。
2、MATLAB中Inf或inf表示、NaN或nan表示、nargout表示。
3、MATLAB中逗号主要用作;用作输入量与输入量之间的分隔符;。
4、工作空间浏览器主要用于内存变量的、和。
5、MATLAB实现将全下标转换为单下标的指令为、据单下标换算出全下标的指令为。
6、二维数组的标识有、、“逻辑1”标识。
二、简答题1、简述MATLAB历史指令窗的主要作用。
2、简述空数组的功用。
3、简述MATLAB函数的基本结构。
4、简述绘制二维图形的一般步骤。
三、阅读程序并回答问题(每题4分,共28分)1、写出下列指令运行结果。
A=zeros(2,4);A(:)=1:8;s=[2 3 5];A(s)Sa=[10 20 30]'A(s)=Sa2、写出下列指令运行结果。
A=reshape(1:16,2,8)reshape(A,4,4)s=[1 3 6 8 9 11 14 16];A(s)=03、写出下列指令运行结果。
A=[1,2;3,4];B=[-1,-2;2;1];S=3;A.*BA*BS.*AS*B4、下面的函数主要完成什么功能?function f=factor(n)if n<=1f=1;elsef=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、写出下列指令运行结果。
A(1,1)={'this is cell'};A{1,2}={[1 2 3;4 5 6]};A{2,1}=[1+2*i];A{2,2}=A{1,2}{1}+(A{1,2}{1}(1,1)+A{1,2}{1}(2,2));celldisp(A)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]的曲线,并用星号*标出两条曲线的交点以及建立图例。
一、 选择题(有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(42y x x y dx dy 在区间 [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','grid off','callback','grid off');(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 的当前工作目录下时,不可以定义函数的句柄。
一、填空题(每空1分,20分)1、MATLAB常用操作界面包括、工作空间窗口、、、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。
2、MATLAB中Inf或inf表示、NaN或nan表示、nargout表示。
3、MATLAB中逗号主要用作;用作输入量与输入量之间的分隔符;。
4、工作空间浏览器主要用于内存变量的、和。
5、MATLAB实现将全下标转换为单下标的指令为、据单下标换算出全下标的指令为。
6、二维数组的标识有、、“逻辑1”标识。
、在一个元胞数组A中寻访第2行第3列元胞元素用;寻访数组第2行第3列元胞中所存的内容用。
8、4、MATLAB中clf用于、clc用于、clear用于。
二、简答题(每题5分,共20分)1、简述MATLAB历史指令窗的主要作用。
2、简述空数组的功用。
3、简述MATLAB函数的基本结构。
4、简述绘制二维图形的一般步骤。
三、阅读程序并回答问题(每题4分,共28分)、写出下列指令运行结果。
=zeros(2,4);(:)=1:8;=[2 3 5];(s)a=[10 20 30]'(s)=Sa、写出下列指令运行结果。
=reshape(1:16,2,8)eshape(A,4,4)=[1 3 6 8 9 11 14 16]; (s)=0、写出下列指令运行结果。
=[1,2;3,4];=[-1,-2;2;1];=3;.*B*B.*AS*B4、下面的函数主要完成什么功能?function f=factor(n)f n<=1f=1;lsef=factor(n-1)*n;nd、写出下列指令运行结果。
(1,1)={'this is cell'};{1,2}={[1 2 3;4 5 6]};{2,1}=[1+2*i];{2,2}=A{1,2}{1}+(A{1,2}{1}(1,1)+A{1,2}{1}(2,2)); elldisp(A)、下面的程序完成功能是什么?=0:pi/50:4*pi;0=exp(-t/3);=exp(-t/3).*sin(3*t);lot(t,y,'-r',t,y0,':b',t,-y0,':b')label(‘\bf\it t’);label(‘\bf\it y’);rid on;四、编程题(32分)price<200 没有折扣200≤price<500 3%折扣500≤price<1000 5%折扣1000≤price<2500 8%折扣2500≤price<5000 10%折扣000≤price 14%折扣入所售商品的价格,求其实际销售价格。
大学专业试题-Matlab期末考试及答案一、填空题(一题3分,共15分)1、标点符号可以使命令行不显示运算结果。
答案:%2、x为0〜4,步长为0.1pi的向量,使用命令创建。
答案:x=0:0.1*pi:4。
3、输入矩阵A=[1 2 3;7 -5 8;9-1-7],使用全下标方式用A(2,2)取出元素“-5 ”,使用单下标方式用取出元素“-5 ”。
答案:A (5)。
4、在while表达式,语句体,End循环语句中,表达式的值__时表示循环条件为真,体语句将被执行,否则跳出该循环语句。
答案:非零。
5、要从键盘读入一个字符串并赋值给变量x,且给出提示“Hello",应使用命令—答案:x=input(‘Hello,;s')b二、选择题(一题3分,共15分)1、下列表示可以作为MATLAB的变量的是(D )A. abcd-2B. xyz_2#C. @hD. X_1_a2、如果x=1: 2 : 8,则U x(1)和x(4)分别是(B )A. 1, 8B. 1,7C. 2,8D. 2,73、指出下列错误的指令(B)。
A.symsa b;B. symsa, b;C.syms('a',’b');D. syms('a','b','positive');4、下列哪条指令是求矩阵的行列式的值(C)。
A .inv B. diag C. det D.eig5、清空Matlab工作空间内所有变量的指令是(C)。
A. clcB.clsC.clearD. clf三、程序分析题(一题10分,共20分)1、分析下面程序运行后s1,n1,s2,n2,m的值。
s1=0;s2=0;n1=0;n2=0;x=[1,-4,-8,3,10,-9,7,-3,10, 8,-5,-2,2,0 ]; m=length(x); fori=1:mif x(i)<0s1=s1+x(i); n1=n1+1; elses2=s2+x(i); n2=n2+1;end ends1,n1,s2,n2,m请回答s1,n1,s2,n2,m的结果。
第一套华东交通大学2015-2016学年第一学期Matlab期末考试一、填空题(4*6=24分)1、在MATLAB^令窗口中的“ >>”标志为MATLAB勺_提示符,标志为提示符。
2、符号表达式sin(2*a+t)+m 中独立的符号变量为__ 。
3、在通常情况下,左除x=a\b是—的解,右除x=b/a是—的解,一般情况下,_______________ 。
4、为了使两个plot的图形在同一个坐标显示,可以使用 _______ 令进行图形保持;可以使用—命令为图形添加网格。
5、倘若要是对x进行赋值,从5到25,间隔是0.1,为_________ ;倘若要是对x进行赋值,从2到20,中间间隔100个点,为 ______6、A=[1,2;3,4];B=[1,0;0,1]; A*B= _ , A.*B=_ _ ;二、选择题(4*6=24分)7、如果x=1: 2 : 8,则x(1)和x⑷分别是()A. 1,8B. 1, 7C. 2, 8D. 2, 78、运行如下程序后,输入9回车,命令窗口( comma nd win dows)显示的结果为()c=input('请输入一个字符','s');if c>='A' & c<='Z'disp(setstr(abs(c)+abs('a')-abs('A')));elseif c>='a'& c<='z'disp(setstr(abs(c)- abs('a')+abs('A')));elseif c>='0' & c<='9'disp(abs(c)-abs('0'));else disp(c); endA. 9B. 8C. 7D. 69、MATLA表达式2*2A3A2的结果是()A. 128B. 4096C. 262144D. 25610、在循环结构中跳出循环,执行循环后面代码的命令为()(A) return (B) break (C) con ti nue (D) keyboard11、在图形指定位置加标注命令是()A. title(x,y, ^y=sin(x) ?B. xlabel(x,y, ?y=s in(x)C. text(x,y, ?y=sin(x) ?);D. lege nd(x,y, ?y=s in(x)12、下列哪个变量的定义是不合法的()。