Matlab期末考试题库共12套卷可编辑修改word版.docx
《Matlab期末考试题库共12套卷可编辑修改word版.docx》由会员分享,可在线阅读,更多相关《Matlab期末考试题库共12套卷可编辑修改word版.docx(57页珍藏版)》请在冰豆网上搜索。
Matlab期末考试题库共12套卷可编辑修改word版
第一套
华东交通大学2015-2016学年第一学期Matlab期末考试
一、填空题(4*6=24分)
1、在MATLAB命令窗口中的“>>”标志为MATLAB的命令行提示符,“│”标志为输入提示符。
2、符号表达式sin(2*a+t)+m中独立的符号变量为_t_。
3、在通常情况下,左除x=a\b是的解,右除x=b/a是的解,一般情况下,。
4、为了使两个plot的图形在同一个坐标显示,可以使用holdon命令进行图形保持;可以使用_gridon命令为图形添加网格。
5、倘若要是对x进行赋值,从5到25,间隔是0.1,为x=5:
0.1:
25;倘若要是对x进行赋值,从2到20,中间间隔100个点,为x=linspace(2,20,100)
6、A=[1,2;3,4];B=[1,0;0,1];A*B=[12;34]_,A.*B=_[10;
04]_;
3.a*x=b,x*a=b,a\b,b/a;
二、选择题(4*6=24分)
7、如果x=1:
2:
8,则x
(1)和x(4)分别是(B)A.1,8B.1,7C.2,8D.2,7
8、运行如下程序后,输入9回车,命令窗口(commandwindows)显示的结果为(A)
c=input('请输入一个字符','s');ifc>='A'&c<='Z'
disp(setstr(abs(c)+abs('a')-abs('A')));
elseifc>='a'&c<='z'
disp(setstr(abs(c)-abs('a')+abs('A')));elseifc>='0'&c<='9'
disp(abs(c)-abs('0'));elsedisp(c);end
A.9B.8C.7D.6
9、MATLAB表达式2*2^3^2的结果是(A)A.128B.4096C.262144D.256
10、在循环结构中跳出循环,执行循环后面代码的命令为(B)
(A)return(B)break(C)continue(D)keyboard11、在图形指定位置加标注命令是(C)
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、下列哪个变量的定义是不合法的(A)。
(A)abcd-3(B)xyz_3(C)abcdef(D)x3yz
三、程序题(52分)
13(10分)、在同一窗口绘制6个子图,已知t=0.1:
0.1:
2*pi,每个子图分别绘制(其中y1=sin(t),y2=cos(2t),y3=sin(t)+cos(t),y4=3t,
y5=2ln(t),y6=et);
答案13.t=0.1:
0.1:
2*pi;
subplot(2,3,1)y1=sin(t);plot(t,y1)title('y1=sin(t)')subplot(2,3,2)y2=cos(2*t);plot(t,y2)title('y2=cos(2t)')subplot(2,3,3)y3=sin(t)+cos(t);plot(t,y3)
title('y3=sin(t)+cos(t)')
subplot(2,3,4)y4=3*t;plot(t,y4)title('y4=3t')subplot(2,3,5)y5=2*log(t);plot(t,y5)title('y5=2ln(t)')subplot(2,3,6)y6=exp(t);plot(t,y6)title('y6=e^t')
14(10分)、某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):
price<200
没有折扣
200≤price<500
3%折扣
500≤price<1000
5%折扣
1000≤price<2500
8%折扣
2500≤price<5000
10%折扣
5000≤price
14%折扣
输入所售商品的价格,求其实际销售价格。
答案14.price=input('请输入商品价格');switchfix(price/100)
case{0,1}%价格小于200rate=0;
case{2,3,4}%价格大于等于200但小于500rate=3/100;
casenum2cell(5:
9)%价格大于等于500但小于1000rate=5/100;
casenum2cell(10:
24)%价格大于等于1000但小于2500rate=8/100;
casenum2cell(25:
49)%价格大于等于2500但小于5000
rate=10/100;
otherwise%价格大于等于5000rate=14/100;
end
price=price*(1-rate)%输出商品实际销售价格
15(10分)、在同一图形窗口中按照x=0.1的步长间隔分别绘制曲线y1=,0x;y1=sin(x)+cos(x),1≤x≤2。
要求y1曲线为红色虚线,数据点用圆圈标识;y2曲线为蓝色点划线;给出图例;标记图名为y1,y2。
答案15.x1=0:
0.1:
1;
y1=x1.^2.*exp(-x1);x2=1:
0.1:
2;
y2=sin(x2)+cos(x2);plot(x1,y1,'r--o',x2,y2,'b-.')legend('y1','y2')
title('y1,y2')
16(10分)、写出执行以下代码后C,D,E的值A=[1,2,3;4:
6;7:
9];
C=[A;[10,11,12]],
D=C(1:
3,[23])
E=C(2,[12])
16.
C=
1
2
3
4
5
6
7
8
9
10
11
12
D=
23
56
89
E=
45
17(12分)、已知系统函数为
试画出零极点分布图,并求系统的冲激响应h(t)和频率响应H(jw),并判断系统是否稳定。
17.已知系统函数H(s),求系统的冲激响应h(t)和频率响应H(jw),可调用impulse函数和freqs函数。
num=[1];den=[1221];
sys=tf(num,den);poles=roots(den)figure
(1);pzmap(sys);t=0:
0.02:
10;
h=impulse(num,den,t);figure
(2);plot(t,h)title('ImpulseRespone')[H,w]=freqs(num,den);
figure(3);plot(w,abs(H))xlabel('\omega')title('MagnitudeRespone')
第二套
Matlab模拟试卷
一、填空题(每空2分,总分20)。
1.MATLAB常用操作界面包括命令窗口、工作空间窗口(浏览器)、命令历史窗口、当前目录窗口、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。
2.MATLAB中逗号主要用作要显示计算结果的指令与其后指令的分
隔;用作输入量与输入量之间的分隔符;用作数组元素分隔符号。
3.
工作空间浏览器主要用于内存变量的查阅、保存和编
辑。
4.MATLAB实现将全下标转换为单下标的指令为Sub2ind、据单下标换算出全下标的指令为Ind2sub。
5.二维数组的标识有“全下标”标识、“单下标”标识、“逻辑1”标识。
二、选择题(每空2分,总共20分)
1.下列哪个变量的定义是不合法的(A)
(A)abcd-3(B)xyz_3(C)abcdef(D)x3yz
2.下列哪条指令是求矩阵的行列式的值(C)
(A)inv(B)diag(C)det(D)eig
3.在循环结构中跳出循环,执行循环后面代码的命令为(B)
(A)return(B)break(C)continue(D)keyboard
4.清空Matlab工作空间内所有变量的指令是(C)
(A)clc(B)cls(C)clear(D)clf
5.用round函数四舍五入对数组[2.486.393.938.52]取整,结果为(C)
(A)[2638](B)[2648](C)[2649](D)[374
9]
6.已知a=2:
2:
8,b=2:
5,下面的运算表达式中,出错的为(C)
(A)a'*b(B)a.*b(C)a*b(D)a-b
7.角度x=[304560],计算其正弦函数的运算为(D)
(A)SIN(deg2rad(x))(B)SIN(x)(C)sin(x)(D)sin(deg2rad(x))
8.下面的程序执行后array的值为(A)fork=1:
10
ifk>6
break;else
array(k)=k;end
end
(A)array=[1,2,3,4,5,6](B)array=[1,2,3,4,5,6,7,8,
9,10]
(C)array=6(D)array=10.
9.i=2;a=2i;b=2*i;c=2*sqrt(-1);程序执行后;a,b,c的值分别是多少?
(A)a=4,b=4,c=2.0000i(C)
(B)a=4,b=2.0000i,c=2.0000i(C)a=2.0000i,b=4,c=2.0000i
(D)a=2.0000i,b=2.0000i,c=2.0000i
10.求解方程x4-4x3+12x-9=0的所有解(A)
(A)1.0000,3.0000,1.7321,-1.7321
(B)1.0000,3.0000,1.7321i,-1.7321i
(C)1.0000i,3.0000i,1.7321,-1.7321
(D)-3.0000i,3.0000i,1.7321,-1.7321
三、阅读程序并回答问题(每题5分,共20分)
1、写出下列指令运行结果。
A=zeros(2,4);
A(:
)=1:
8;s=[235];A(s)
Sa=[102030]'
A(s)=Sa
ans=235
Sa=10
20
30
A=
120307
10468
2、写出下列指令运行结果。
A=reshape(1:
16,2,8)reshape(A,4,4)
s=[13689111416];
A(s)=0
答案:
A=reshape(1:
16,2,8)A=
13579111315
246810121416
reshape(A,4,4)ans=
15913
261014
371115
481216
s=[13689111416];A(s)=0
A=
0057001315
2400101200
3、写出下列指令运行结果。
A=[1,2;3,4];
B=[-1,-2;2;1];
S=3;
A.*B
A*BS.*A
S*B答案:
ans=
-1-4
64
ans=30
5-2
ans=36
912
ans=
-3-6
63
4、下面的函数主要完成什么功能?
functionf=factor(n)
ifn<=1
f=1;
else
f=factor(n-1)*n;
End
答:
利用函数的递归调用,求n!
。
四、程序填空(每空3分,共15分)
1.编写MATLAB程序,在同一图形窗口中绘制y1和y2两条曲线,并对图形坐标轴进行控制。
程序如下:
x=-3:
0.1:
3;
y1=2*x+5;y2=x.^2-3*x;plot(x,y1);%绘制曲线y1
①;%保持曲线y1①holdon
plot(x,y2);%绘制曲线y2
m1=max([y1,y2]);m2=min([y1,y2]);
②;%用axis调制坐标轴,横坐标在[-33]之间,且完全显示图形
③;%加入图形注释,横坐标为“时间”,纵坐标为“幅度”
2.编写MATLAB程序,对于用户输入的向量或矩阵,计算其平均值和方差:
④;%提示输入数据并保存到x中,命令行显示“请输入数据”
y=reshape(x,1,prod(size(x)));m=mean(y);%计算均值m
⑤;%计算方差v
①holdon
②axis([-33m2m1])
③xlabel(‘时间’);ylabel(‘幅度’);
④x=input(‘请输入数据\n’)或x=input(‘请输入数据’)
⑤v=var(y)或1/(length(y)-1)*(sum((y-m).^2))
五、编程题(40分)
1、分别在同一图形窗的不同子图绘制y=sin(t)sin(9t)和y=sin(t)sin(9t)及其包络线。
(5分)
t=(0:
pi/100:
pi)';
y1=sin(t)*[1,-1];y2=sin(t).*sin(9*t);t3=pi*(0:
9)/9;
y3=sin(t3).*sin(9*t3);subplot(1,2,1)plot(t,y1,'r:
',t,y2,'b',t3,y3,'bo')subplot(1,2,2)
plot(t,y2,'b')
axis([0,pi,-1,1])
2、编写程序实现f(n)=f(n-1)+f(n-2)(f
(1)=1和f
(2)=2)函数。
(5分)
functionf=fab(n)if(n==1)
f=1;
elseif(n==2)f=2;
else
f=fab(n-1)+fab(n-2);
End
3、求解以下线性方程组,要求写出程序代码和运行结果(5分)
2x1-3x2+x3+2x4=8
x1+3x2+x4=6x1-x2+x3+8x4=17x1+x2-2x3+2x4=5
>>symsabcx
>>symsx1x2x3x4
>>clear
>>symsx1x2x3x4
>>f=2*x1+3*x2+x3+2*x4-8;
>>g=x1+3*x2+x4-6;
>>h=x1-x2+x3+8*x4-1;
>>i=7*x1+x2-2*x3+2*x4-5;
>>[x1,x2,x3,x4]=solve(f,g,h,i)x1=
13/17
x2=320/187
x3=212/187
x4=19/187
4、打印出所有的水仙花数。
所谓“水仙花数”,是指一个三位数,其各位数字立方之和等于该数本身。
(10分)
fork=100:
999
a=fix(k/100);
b=rem(fix(k/10),10);c=rem(k,10);
ifa.^3+b.^3+c.^3==kfprintf(“%u,\t\t”,k);
end
end
第三套
MATLAB试卷
一、填空题(每题2分,共10题,共20分,错一个得1分,错2个得0分)
1.MATLAB命令窗口中可用命令清除工作区中的变量;用命令清除命令窗口中的内容。
2.MATLAB中的运算包括、、。
3.MATLAB中的M文件有、。
4.MATLAB中的程序控制结构包括、、。
5.已知矩阵A[123;456;789],A(6)A(1,3)。
6.MATLAB中用函数完成矩阵的求逆运算,用函数求矩阵的行列式。
7.在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用
函数。
8.MATLAB提供了函数和函数来绘制三维曲面图。
9.用if语句判断60≤x≤80,在MATLAB中if语言后面的判断应写为。
10.为了使两个plot的图形在同一坐标显示,可以使用命令进行图形保持,可以使用命令为图形添加网格。
二、选择题(每题2分,共10题,共20分)1.下列哪个变量的定义是不合法的
(A)abcd-3(B)xyz_3(C)abcdef(D)x3yz
2.在循环结构中跳出循环,执行循环后面代码的命令为
(A)return(B)break(C)continue(D)keyboard3、下列变量名中是合法的。
(A)char_1;(B)x*y;(C)x\y;(D)end
4.如果x=1:
-1:
-8,则x
(1)和x(5)分别是
A.-1,-3B.-1,-7C.-1,-6D.1,-3
5.在MATLAB中下列数值的表示不正确的是A.+25B.1.3e-5C.4-3*e^2D.3-2*pi
6.用round函数四舍五入对数组[2.486.393.938.52]取整,结果为
(A)[2638](B)[2648](C)[2649](D)[3749]
7.下列哪条指令是求矩阵的行列式的值
(A)inv(B)diag(C)det(D)eig
8.在图形指定位置加标注命令是
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)’);
9.i=2;a=2i;b=2*i;c=2*sqrt(-1);程序执行后;a,b,c的值分别
(A)a=4,b=4,c=2.0000i(B)a=4,b=2.0000i,c=2.0000i(C)a=2.0000i,b=4,c=2.0000i
(D)a=2.0000i,b=2.0000i,c=2.0000i
10、在循环结构中跳出循环,但继续下次循环的命令为
(A)return;(B)break;(C)continue;(D)keyboard
三、简答题(每题7.5分,共4题,共30分)1.A=[12;34];B=[12;14];
写出下面几条指令的运行结果:
C=A*BD=A+BE=A.*B
2.在MATLAB窗口中,用哪两种方法启动Simulink?
3.判断下列一段程序的错误,并进行改正。
x=-2:
0.2:
2;
y=x.^2;plot(x,y)
str1=num2str(min(x));%数字转化为字符串str2=num2str(max(x));%数字转化为字符串out=[Valueofffrom'str1'to'str2'];xlabel(out);
4.一个3位整数各位数字的立方和等于该数本身则称该数为水仙花数。
输出100-
999之间的全部水仙花数。
请补全程序中所空缺的部分。
Form=100:
999
m1=fix(m/100);m2=rem(fix(m/10),10);m3=rem(m,10);
Ifm==()
disp(m)end
end
四、编程题(每小题15分,共2题,共30分)
1.编写MATALAB程序,完成下列任务(将程序保存为test04.m文件):
(1)在区间[0,4*pi]上均匀地取20个点构成向量;
(2)分别计算函数y1=sin(t)与y2=2cos(2t)在向量t处的函数值;
(3)在同一图形窗口绘制曲线y1=sin(t)与y2=2cos(2t),要求y1曲线为黑色点画线,y2曲线为红色虚线圆圈;并在图中恰当位置标注两条曲线的图例;给图形加上标题“y1andy2”。
2、Fibonacci数列的各元素为:
1、1、2、3、5、8、……,满足以下关系F1=1,F2=1,Fn=Fn-1+Fn-2
用while和for两种方法实现。
答案
一、填空题
1clearclc
2算术运算关系运算逻辑运算
3命令文件函数文件
4顺序结构循环结构选择结构
5.83
6.Invdet7.plotyy8.meshsurf
9.Ifx<=80&>=60
10.holdongridon
二、选择题
1-5ABADB6-10CCCCC
三、简答题
1.C=310D=24E=14
72248316
2.在MATLAB命令窗口中输入“simulink”再回车,或者单击工具栏中的SIMULINK
图标
3.out=['Valueofffrom'str1'to'str2];
或out=['Valueofffromstr1tostr2’];4.m1*m1*m1+m2*m2*m2+m3*m3*m3
四、编程题
1.程序如下:
(1)t=linspace(0,4*pi,20);
(2)y1=sin(t);y2=2*cos(2*t);
(3)plot(t,y1,'k-.');text(1.2,sin(1.2),'y1\leftarrow','FontSize',12);holdon;
plot(t,y2,'r--o');text(6,1.5,'y2\leftarrow','FontSize',12);title('y1andy2')
2.按M函数文件格式创建文件开头f