川大MATLAB控制系统CAD-2期末试卷A
- 格式:doc
- 大小:67.00 KB
- 文档页数:7
大学专业试题-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’)。
二、选择题(一题3分,共15分)1、下列表示可以作为MATLAB的变量的是( D )A.abcd-2 B.xyz_2#C.@h D.X_1_a2、如果x=1:2:8,则x(1)和x(4)分别是( B )A.1,8B.1,7C.2,8D.2,73、指出下列错误的指令(B)。
A.syms a b;B.syms a,b;C.syms(‘a',’b');D.syms(‘a','b','positive');4、下列哪条指令是求矩阵的行列式的值(C)。
A.invB.diagC.detD.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);for i=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的结果。
一、填空题(本题满分30分,每空3分)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*、0D = [0 -1] ; F= [2 0;2 0;0 6] .2. A=[2,3,2,1;1,2,2,1; 1,2,3,-2];A1=sum(A>A(2,1));A(2,:)=[],A2=A.^2-4A1= ; A2= ;3.P=[1,2,5,4;2,2,1,3];max(P,[ ],1)= [2 2 5 4] ;mean(P,2)= [3 2] .二、(本题满分10分)试编写计算程序画出曲线与曲面图形.22,22,)1((2).);20(cos sin (1).223322≤≤-≤≤-++=≤≤⎪⎩⎪⎨⎧==--y x y x e x z t t y t x y xπ%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(a<60,2)>=2)四、(本题满10分)).50,20(]2,0[)2()),(1:(;)1(,sin )1()(11==-=∑=+n n x fun y function kx k x f nk k 分别取内图形用子图画出该函数在程序的第一句为返回该函数并保存试编写函数式文件程序设π(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)end subplot(2,1,2),plot(x,y2)y五、(本题满分10分)试利用微分方程的数值解法写出下列微分方程的求解步骤和MATLAB 程序.0)0(,2)0(,3='==-'+''x x t x x t x .(t 的变化区间为[0,10]).第一步:先将高阶微分方程转化为一阶微分方程组:选择状态变量x x x x ='=21,,则原方程化为2)0(,0)0(.,32112211==⎩⎨⎧='++-='x x x x t x tx x第二步:建立函数文件function dxdt = fun2(t,x)dxdt = [-3*t*x(1)+ x(2)+t; x(1)];第三步:求解微分方程,命令如下:[t,x]=ode45(@fun2,[0,10],[0;2]);)(cos cos lim .3;,)(,,1ln sin .2;2.1:,sin 022x e x x x A dx x A dx dA x s e x x x A x e 、x x x x --⎥⎥⎦⎤⎢⎢⎣⎡+=+=→-⎰计算极限并计算生成符号矩阵的根求方程下列各题运用符号运算功能计算六 的解函数求解微分方程用1)0()0()0()0(,2.4)4(='''=''='==+x x x x e x x dsolve t六、参考程序: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*A3.syms xlimit((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')⎪⎩⎪⎨⎧=-++=--++03320224:.2122212212221x x x x x x x x x fsolve 组求解下面的非线性方程函数以及符号运算功能用七解一: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)-3y=[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’)《MA TLAB程序设计》参考程序一、(30分)1.D =0 -1F =2 02 00 62.A1 =1 3 3 0A2 =0 5 0 -3-3 0 5 03.max(P,[ ],1)=2 2 5 4 mean(P,2)=324.x=155.b =0 1 4-1 0 1-4 -1 06.z =20107.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')%3syms 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:100for j=1:4if cj(i,j)>100 cj(i,j)=100;elseif cj(i,j)<0 cj(i,j)=0;endendendkmean=round(mean(cj))disp('课程1 课程2 课程3 课程4')disp(sprintf(' %4d%7d%8d%8d ' ,kmean(1),kmean(2),kmean(3),kmean(4))) studentmean=round(mean(cj,2));studentnumber=[1:100]';[studentnumber, studentmean]c=sum(sum(cj>=90))d=sum(sum(cj<60,2)>=2)六、(10分)(1). function y=fun1(x,n)y=0;for k=1:ny=y+ ((-1)^k*sin(k*x))/k;endy(2). x=0:0.1:2*pi;y1= fun1 (x,20);y2= fun1 (x,50);subplot(211),plot(x,y1)subplot(212),plot(x,y2)七、(10分)第一步:先将高阶微分方程转化为一阶微分方程组:选择状态变量x x x x ='=21,,则原方程化为2)0(,0)0(.,32112211==⎩⎨⎧='++-='x x x x t x tx x第二步:建立函数文件function dxdt = fun2(t,x)dxdt = [-3*t*x(1)+ x(2)+t; x(1)];第三步:求解微分方程,命令如下:[t,x]=ode45(@fun2,[0,10],[0;2])补充:1.matlab 中清屏的命令是———clc2.matlab 中用于清除工作空间变量的命令是——clear3.在【0,5】上求函数f=(x-3)^2-1的最小值。
第一套华东交通大学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(4)分别是( )A.1,8 B.1, 7 C.2, 8 D.2, 78、运行如下程序后,输入9回车,命令窗口(command windows)显示的结果为( )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、MATLAB表达式2*2^3^2的结果是()A.128 B.4096 C. 262144 D.25610、在循环结构中跳出循环,执行循环后面代码的命令为( )(A) return (B) break (C) continue (D) keyboard11、在图形指定位置加标注命令是()A. title(x,y,‟y=sin(x)‟);B. xlabel(x,y,‟y=sin(x)‟);C. text(x,y,‟y=sin(x)‟);D. legend(x,y,‟y=sin(x)‟);12、下列哪个变量的定义是不合法的()。
matlab期末试题及答案介绍:本文提供了一个MATLAB期末试题及答案的样例,以展示如何按照合适的格式来撰写。
以下是试题及答案的内容。
试题一:试题描述:请编写一个MATLAB程序,输入两个整数a和b,计算并输出它们的和、差、积和商。
```MATLABa = input('请输入整数a:');b = input('请输入整数b:');sum = a + b;diff = a - b;product = a * b;quotient = a / b;disp(['和:', num2str(sum)]);disp(['差:', num2str(diff)]);disp(['积:', num2str(product)]);disp(['商:', num2str(quotient)]);```答案详解:本题要求输入两个整数a和b,然后计算它们的和、差、积和商,并进行输出。
我们利用MATLAB的input函数实现用户输入,然后进行相关计算,并利用disp函数输出结果。
其中,num2str函数用于将数字转换为字符串。
试题二:试题描述:请编写一个MATLAB程序,生成并输出一个5x5的单位矩阵。
```MATLABI = eye(5);disp(I);```答案详解:本题要求生成一个5x5的单位矩阵,并进行输出。
我们可以利用MATLAB的eye函数来实现这一目标。
eye函数用于创建一个对角线上元素为1的矩阵,而其他元素为0的矩阵。
在本题中,我们生成了一个5x5的单位矩阵,并利用disp函数进行输出。
试题三:试题描述:请编写一个MATLAB程序,计算并输出1到100之间的所有偶数之和。
```MATLABsum = 0;for i = 2:2:100sum = sum + i;enddisp(['1到100之间的所有偶数之和为:', num2str(sum)]);```答案详解:本题要求计算1到100之间的所有偶数之和,并进行输出。
模拟试题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]的曲线,并用星号*标出两条曲线的交点以及建立图例。
大学专业试题-Matlab期末考试及答案一、选择题(每小题2分,共22分)1. 在matlab中____C____用于括住字符串。
A.,B.;C.‘’D.“”2. 在matlab的命令窗口中执行__A_______命令,可将命令窗口中所有变量清空。
A. clearB. clcC. echo offD. cd3.下列___D____是合法变量。
A. 1_1B. a/bC.变量1D. eps4产生所有元素均为1的2行3列矩阵的命令是_A______。
A. ones(2,3)B.ones(3,2)C.eye(2,3)D.eye(3,2)5.已知a=0:4,b=1:5,下面的运算表达式出错的是_D_______。
A. a+bB. a./bC. a.*bD. a*b6. subplot(2,1,2)是指__B_______的子图。
A.两行一列的上图B.两行一列的下图C.两列一行的左图D.两列一行的右图7.在多个句柄对象中,句柄是1的应该是_C_____对象。
A.根对象B.坐标轴C.窗口D.屏幕8.使用from:step:to方式生成向量,“-3:1:3”,其中-3,1,3分别是:(B)A、步长值,结束值,开始值B、开始值,步长值,结束值C、结束值,步长值,开始值D、开始值,结束值,步长值9.i=2; a=2i; b=2*i; c=2*sqrt(-1); 程序执行后a, b, c的值分别是多少?(C )A.a=4, b=4, c=2.0000iB.a=4, b=2.0000i, c=2.0000iC.a=2.0000i, b=4, c=2.0000iD.a=2.0000i, b=2.0000i, c=2.0000i10. 下列关于脚本文件和函数文件的描述中不正确的是(B )A. 去掉函数文件第一行的定义行可转变成脚本文件;B. 函数文件可以在命令窗口直接运行;C. 脚本文件可以调用函数文件;D. 函数文件中的第一行必须以function开始;11.下列对条件语句、分支语句、固定循环次数语句、不定循环次数语句关键字排序正确的是( B)A. if else end; for end; switch case end; while end;B. if else end; switch case end; for end; while end;C. for end; if else end; while end; switch case end;D. while end; for end; switch case end; if else end;二、填空题(20分,1空2分)1. 求可逆矩阵A的逆矩阵的指令是__inv(A) __.2. A=[0 2 3 0],B=[4 5 0 0],则X=A&B的显示结果为__ 0 1 0 0___.3. Matlab中用来表示不确定值的变量是_NaN_。
一、填空题(每空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%折扣入所售商品的价格,求其实际销售价格。
四川大学期末考试试题(闭卷)
(2015——2016学年第 2 学期)B卷
课程号:303169015课序号:01,02课程名称:控制系统CAD-2 任课教师:成绩:
试卷编号:
试卷编号:
附录MATLAB常用命令
四川大学2015—2016学年第2学期
控制系统CAD-2期末考试答卷B
课程号:303169015课序号:任课教师:
学院年级:学号:姓名
一.填空题(每空2分,共22分)
二.综合题(共68分)
1.编写m文件,建立校正前系统的开环传递函数G0,并求系统此时的相角裕量以及幅值裕量,并判
定此时系统的闭环稳定性。
3.编写程序,调用函数Phase_Lead完成本系统的超前校正装置的参数计算,并编写m文件验证校正后系统性能指标是否能够达到题目中的各项要求。
三.综合题 (共10分)
1. 建立该系统的状态空间模型sys ;
2. 判定上述系统的可观性,如果不完全可观,则给出相应提示信息;如果完全可观,则进行输出
到状态微分的形如Hy Bu x
HC A x ++-=ˆˆ)( 全维观测器的极点配置,并将其观测器的极点配置为{-6,-7,-8},求出此时的H 阵。