MATLAB期末考试试题卷与答案.docx
《MATLAB期末考试试题卷与答案.docx》由会员分享,可在线阅读,更多相关《MATLAB期末考试试题卷与答案.docx(8页珍藏版)》请在冰豆网上搜索。
MATLAB期末考试试题卷与答案
一、填空题(每空2分,总共30分)
1.已知A=[096;130];B=[143;150];写出下列各指令运行的结果。
A&B的运行结果ans=;
A./B的运行结果ans=。
2.产生4阶全0方阵的命令为zeros(4);产生3阶全1方阵的命令为ones(3)。
3.A=rand(2,5);b=size(A);c=length(A);则b和c的值分别为和[2,5],[5]。
4.标点符号分号可以使命令行不显示运算结果,百分号用来表示该行为注释行。
5.用if判断语句判断80≥x>60,在MATLAB中if语言后的判断应写为ifx<=80&x>60。
6.P,Q分别是个多项式的系数矢量,求P对应的多项式的积分(对应的常数项为K),使用的命令是polyint(P,K);求P/Q的解,商和余数分别保存在k和r,使用的命令是[k,r]=deconv(P,Q);
7.为了使两个plot的图形在同一个坐标显示,可以使用holdon命令进行图形保持;可以使用gridon命令为图形添加网格。
8.MATLAB的工作空间中有三个变量v1,v2,v3,写出把它们保存到文件my_data.mat中的指令savemy_data;写出把my_data.mat文件中的变量读取到MATLAB工作空间内的指令loadmy_data。
二、选择题(每空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)[3749]
6.已知a=2:
2:
8,b=2:
5,下面的运算表达式中,出错的为C
(A)a'*b(B)a.*b(C)a*b(D)a-b
7.角度
,计算其正弦函数的运算为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)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
三、写出程序的执行结果或写出给定要求的指令(总共35分)
1.写出执行以下代码后C,D,E的值(6分)
A=[1,2,3;4:
6;7:
9];
C=[A;[10,11,12]],
D=C(1:
3,[23])
E=C(2,[12])
2.写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值(5分)
x=[0,1,0,2,0,3,0,4];
fork=1:
8
ifx(k)==0
x(k)=k;
else
x(k)=2*k+1;
end
end
disp(x);
3.创建符号函数并求解,要求写出步骤和运行结果(7分)
(1)创建符号函数f=ax2+bx+c
(2)求f=0的解
4.求解以下线性方程组,要求写出程序代码和运行结果(5分)
5.绘制函数曲线,要求写出程序代码(12分)
(1)在区间[0:
2π]均匀的取50个点,构成向量π
(2)在同一窗口绘制曲线y1=sin(2*t-0.3);y2=3cos(t+0.5);要求y1曲线为红色点划线,标记点为圆圈;y2为蓝色虚线,标记点为星号
四、使用MATLAB语言进行编程(15分)
打印出所有的水仙花数。
所谓“水仙花数”,是指一个三位数,其各位数字立方之和等于该数本身。
一、填空题
1、
ans=
011
110
ans=
02.25002.0000
1.00000.6000NaN
2、zeros(4)ones(3)
3、[25][5]
4、;%
5、ifx<=80&x>60
6、polyint(P,K)[k,r]=deconv(P,Q)
7、holdongridon
8、savemy_dataLoadmy_data
二、选择题
1、A
2、C
3、B
4、C
5、C
6、C
7、D
8、A
9、C
10、A
三、写出程序的执行结果或写出给定要求的指令
1、
c=
0+2.0000i
D=
23
56
89
E=
45
2、
1539513717
3、
>>symsabcx
>>s=a*x^2+b*x+c;
>>solve(s)
ans=
[1/2/a*(-b+(b^2-4*a*c)^(1/2))]
[1/2/a*(-b-(b^2-4*a*c)^(1/2))]
4、
>>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
5、
t=linspace(0,2*pi,50);
plot(t,y1,'r-o',t,y2,'b--*');
四、使用MATLAB语言进行编程
fork=100:
999
a=fix(k/100);
b=rem(fix(k/10),10);
c=rem(k,10);
ifa.^3+b.^3+c.^3==k
fprintf(“%u,\t\t”,k) ;
end
end