MATLAB期末复习资料(终极版)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、填空题:(共20分)
1、产生4阶全0方阵的命令为 zeros(4);产生3阶全1方阵的命令为ones(3).
2、标点符号;可以使命令行不显示运算结果; % 用来表示该行为注释行。

3、P,Q分别是两个多项式的系数向量,求P对应的多项式的积分(对应的常数为K),使用的命令是
polyint(P,K);求P/Q的解,商和余数分别保存在k和r中,使用的命令是[k,r]= deconv (P,Q)
4、在C盘上创建目录my_dir的命令是mkdir(…c:\‟,‟my-dir‟);使c:\my_dir成为当前目录的命令是
cd c:\my -dir。

5、已知A=[0 9 6;1 3 0];B=[1 4 3;1 5 0];写出各指令运行的结果。

A&B的运行结果ans= 0 1 1
1 1 0
A./B的运行结果ans= 0 2.2500 2.0000
1.0000 0.6000 NaN
6、要判断else是否是MATLAB关键字的命令是exist User Name;exist else的运行结果非零,说明else是
(填“是”或“不是”) MATLAB的关键字。

7、A=rand(2,5);b=size(A);c=length(A);则b和c的值分别为 [ 2 ,5 ] 和 5 。

8、为了使两个plot的图形在同一个坐标显示,可以使用hold on 命令进行图形保持;可以使用grid on 命令为图形添加网格。

9、MATLAB的工作空间中有三个变量v1,v2,v3,写出把它们保存到文件mydata.mat中的指令save mydata.mat;写出把mydata.mat文件中的变量读取到MATLAB工作空间内的指令load mydata.mat。

10、用if语句判断80≥x>60,在MATLAB中if语言后的判断应写为 if x<= 80 & x>60
11、写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值。

x=[1 5 3 9 5 13 7 17 ]。

x=[0,1,0,2,0,3,0,4];
for k=1:8
if x(k)==0
x(k)=k;
else
x(k)=2*k+1;
end
end
disp(x);
二、选择题:(共20分)
1、对某M 脚本文件命名正确的是 A
A 、abc3
B 、3_xyz
C 、ab-c
D 、else
2、在循环结构中跳出循环,执行循环后面代码的命令为
B A 、return B 、break
C 、continue
D 、keyboard
3、清空MATLAB 工作空间内所有变量的指令是 C
A 、clc
B 、cls
C 、clear
D 、clf
4、已知a=2:2:8,b=2:5,的为
C A 、a‟*b B 、a.*b C 、a*b
D 、a-b
5、控制坐标轴范围的指令是
B 。

A 、box B 、axis
C 、xlabel
D 、ylabel
6、能对A 数组进行“行交换”的指令是 D
A 、reshape (A)
B 、repmat(A)
C 、fliplr(A)
D 、flipud(A)
7、下面的程序执行后array 的值为
A
for k=1:10
if k>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
8、求解方程0912434=-+-x x x 的所有解。

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
9、MATLAB 的是
B 。

A 、非数具备传递性
B 、两个非数是可以比较大小的
C、数据可视化中,非数可以用来裁剪图形
D、测量数据处理中,可以用来标识“野点(非正常点)”
10、MATLAB中预定义变量nargin,nargout分别表示 C
A、输入/输出宗量
B、输入/输出宗量的数目
C、函数的输入/输出参数
D、匿名函数的输入/输出
11的? A
A、abc-3
B、xyz_3
C、abcdef
D、x3yz
12、下列哪条指令是求矩阵的行列式的值? C
A、inv
B、diag
C、det
D、eig
13、用round函数四舍五入对数组A=[2.48 6.39 3.93 8.52];取整,结果为 C
A、[2 6 3 8 ]
B、[2 6 4 8 ]
C、[2 6 4 9 ]
D、[3 7 4 9 ]
14、角度x=[30 45 60],计算其正弦函数的运算为 D
A、SIN(deg2rad(x))
B、SIN(x)
C、sin(x)
D、sin(deg2rad(x))
15、绘制三维空间符号函数网线图的指令是 B 。

A、surf
B、mesh
C、plot3
D、ezmesh
16、能对A数组进行“列交换”的指令是 D
A、repmat(A)
B、reshape(A)
C、flipud(A)
D、fliplr(A)
17、执行以下代码后E的值为 A 。

A=[1,2,3;4:6;7:9]
C=[A;[10,11,12]],
D=C(1:3,[2 3])
E=C(2,[1 2])
A、[4 5]
B、[2 3]
C、[8 9]
D、[5 6]
18、i=2;a=2i,b=2*i;c=2*sqrt(-1);程序执行后,a,b,c的值分别是多少? 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 = 4,c = 2.0000i
19、下列说法正确的是哪个?MATLAB 中
D 。

A 、“空”数组即是全零数组
B 、“空” 数组是不存在的
C 、“空” 数组具备传递性
D 、唯一能判断“空”数组的指令是isempty
20、 的是
B
A 、一个M 函数文件可以包含多个子函数
B 、主函数和子函数之间是不能传递信息的
C 、子函数只能寄生在主函数体内
D 、M 函数文件中,由第一个function 引出的是主函数
三、写出给定要求的指令(共20分)
1、创建符号函数并求解,要求写出步骤和运行结果。

①创建符号函数c bx ax f ++=2;
②求0=f 的解。

解:syms a b c x s = a*x^2 + b*x + c;
solve(s)
运行结果ans =
-(b + (b^2 - 4*a*c)^(1/2))/(2*a)
-(b - (b^2 - 4*a*c)^(1/2))/(2*a)
2、写出程序代码,观察函数)sin 11sin
()(x x
x x x f +=当0→x 时的变化趋势。

解: syms x; limit(x*sin(1/x)+sin(x)*1/x,x,0)
运行结果ans =
1
3、绘制函数曲线,要求写出程序代码。

①在区间]2,0[π内以0.1为步长均匀地取若干个点,构成向量t 。

②在图形窗的两个子窗口中绘制曲线)sin(1t y π=,)cos(22t y π=;要求1y 曲线为红色虚线绘制,并且用星号标注每个节点;2y 曲线为蓝色实线绘制,标记点为圆圈。

解: t=0:0.1:2*pi;
y1=sin(pi*t);
y2=2*cos(pi*t);
plot(t,y1,'r--*' ,t,y2,'b-o');
运行结果:
4、求解以下线性方程组,要求写出程序代码和运行结果。

5
2271
86
438
23243214321214321=+-+=++-=++=+++x x x x x x x x x x x x x x x
解: syms x1 x2 x3 x4
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、写出程序代码,观察函数x x x f sin 1)(2
=
当∞→x 时的变化趋势。

解: syms x; limit(sin(x)/x^2,x,inf)
运行结果:ans =
6、绘制函数曲线,要求写出程序代码。

①在区间]2,0[π内均匀地取50个点,构成向量t 。

②在同一窗口绘制曲线)3.0*2sin(1-=t y ,)5.0cos(32+=t y ;要求1y 曲线为红色点划线,标记点为圆圈; 2y 曲线为蓝色虚线,标记点为星号;
解: t = linspace(0, 2*pi, 50);
y1=sin(2*t-0.3);
y2=3*cos(t+0.5);
plot(t,y1,'r-.o' ,t,y2,'b--*')
四、使用MATLAB 语言进行编程(共20分)
1、编程实现)100321(100
1++++=∑= n n 。

解: syms n
r=symsum(n,n,1,100)
运行结果: r=
5050
2、打印所有的水仙花数。

所谓“水仙花数”,是指一个三位数,其各位数字立方之和等于该数本身。

解:
x=[];
for i=100:999
n1=fix(i/100);%取出百位数
n2=fix((i-n1*100)/10);%取出十位数
n3=i-n1*100-n2*10;%取出个位数
if (n1^3+n2^3+n3^3)==i
x=[x i];
end
end
x
运行结果:x =
153 370 371 407。

相关文档
最新文档