Matlab整理复习资料 下载本文

填空题(计算部分)

1、标点符号 ; 可以使命令行不显示运算结果,%——用来表示该行为注释行。 2、x 为0 ~4pi ,步长为0.1pi 的向量,使用命令_ x=0:0.1*pi:4*pi _创建.

3、输入矩阵A=,使用全下标方式用A(2,2) 取出元素“-5 ”,使用单下标方式用__ A(5)__取出错误!未找到引用源。 元素“-5 ”。

5、M脚本文件和M函数文件的主要区别是M脚本文件没有函数定义和M函数文件有函数定义。

6. 设y为二维数组,要删除y的第34行和48列,可使用命令_ y(34,:)=[] ; _ y(:,48)=[];

8. 在while 表达式, 语句体, End 循环语句中,表达式的值_非零时表示循环条件为真,语句体将被执行,否则跳出该循环语句;

9.要从键盘读入一个字符串并赋值给变量x,且给出提示“Who is she?”,应使用命令_ x=input(‘Who is she?’,’s’)________; 11. 在MATLAB命令窗口中的“>>”标志为MATLAB的(命令行)提示符,“│”标志为(输入)提示符。 12.已知A=[1 2 3;4 5 0;7 8 9];B=[1 0 3;1 5 0;0 1 2];写出下列各指令运行的结果。 A+B; A.*B; A==B ; ans= [2,2,6;5,10,0;7,9,11] ans= [1,0,9;4,25,0;0,8,18] ans= [1,0,1;0,1,1;0,0,0]

13.已知A是矩阵,求A的对角矩阵函数是(diag ),求A的下三角矩阵函数是(tril)。 14.MATLAB的程序文件和Simulink模型文件的扩展名分别是(.m)(.mdl) 15.MATLAB最基本的绘图函数为plot

16. A=[1,2,3;4,5,6]; A(:,[1,3])=[];A=[2;5] 17. fix(-1.5)=_-1 _, round(-1.5)=(-2)

18.已知A=[1 3;4 6];C=[A,eye(size(A));A ,ones(size(A))] 则C=_ ____.[1 3 1 0;4 6 0 1;1 3 1 1;4 6 1 1]_eye是对角阵,one是全一矩阵

20.A=[1,2;3,4];B=[1,0;0,1]; A*B=__, A.*B=___.[1 2;3 4] [1 0;0 4] 22. A=[1,2;3,1]; B=[1,0;0,1]; A~=B=_______.[0 1;1 0]

23. A=[1,2,3;1,4,9;1,7,27]; triu(A,-1)=_ ____.-1表示为主对角线下一条对角线一下的数全变为0 提取矩阵上三角矩阵的函数

[1 2 3;1 4 9;0 7 27]

24. A=[4,15,-45,10,6;56,0,17,-45,0]; find(A>=10 & A<=20)=__. 3 6 7 25.已知A=[0 9 6;1 3 0];B=[1 4 3;1 5 0];写出下列各指令运行的结果。

A & B 的运行结果_______;ans=[0 1 1;1 1 0] 26. 产生4阶全0方阵的命令为_______;

产生3阶全1方阵的命令为。zeros(4) ones(3)

27. A=rand(2,5);b=size(A);c=length(A);则b和c的值分别为___2 5和 5

28. 用if判断语句判断80≥ x >60,在MATLAB中if语言后的判断应写为_______。if x<=80 & x>60 29.为了使两个plot的图形在同一个坐标显示,可以使用_ hold on 命令进行图形保持;可以使用__ grid on 命令为图形添加网格。

32.MATLAB的含义为_矩阵实验室(Matrix Laboratory)______。 34、在MATLAB中,plot命令用于什么, 。 画曲线 35、size命令的功能,确定_______。 阵列的长度 36、a=[1 2 2],求a的转置_______。 a=[1;2;2] 38. 在MATLAB中,矩阵的秩由函数 _______来实现。 rank 39.在MATLAB中,单位矩阵由函数_______来实现。 eye 40. 在MATLAB中,二维饼图由函数_______来实现。 pie 42. MATLAB表达式3*2^3^2的结果是_______ 。 192 43.条形图由函数_______来实现。 bar

44. 倘若要是对x进行赋值,从5到25,间隔是0.1, x=5:0.1:25;

45. 倘若要是对x进行赋值,从2到20,中间间隔100个点, x=linspace(2,20,100); 选择题(计算部分)

1. 下列变量中的最大数是(C)

A.eps B.realmin C.realmax D.-pi

2. 下列表示可以作为MATLAB的变量的是(D) A.abcd- 2 B.xyz_2# C.@h D.X_1_a 3. 如果x=1: 2 : 8,则x(1)和x(4)分别是(B) A.1,8 B.1, 7 C.2, 8 D.2, 7 4. 下列变量中比0大的最小数是(B) A.i B.realmin C.realmax D.pi

5. 在MATLAB中下列数值的表示不正确的是(B)1.3eps(-5) A.+99 B.1.3e-5 C.2-3*e^2 D.3-2*pi 6. 下列表示可以作为MATLAB的变量的是( B) A.abcd-2 B.xyz_2a C.@h D.3hour 7. 如果x=1:-2:-8,则x(1)和x(5)分别是(D) A.1,-8 B.-1,-7 C.-1,-8 D.1,-7 8. MATLAB表达式2*2^3^2的结果是(A) A.128 B.4096 C. 262144 D.256

9. 下列哪个变量的定义是不合法的(A)。

(A) abcd-3 (B) xyz_3 (C) abcdef (D) x3yz 10. 指出下列错误的指令(B)。

(A) syms a b; (B) syms a, b; (C) syms(‘a', ‘b'); (D) syms(‘a','b','positive');

b d a A B

11.下列哪条指令是求矩阵的行列式的值(C)。 (A) inv (B) diag (C) det (D) eig inv是求逆矩阵

diag 是矩阵对角元素的提取和创建对角阵 sqrt(x) —— 求x的平方根 abs(x)—— 求x的绝对值 det(a)—— 求行列式的值

eig——计算矩阵A的特征值和特征向量的函数 clf; 用来清除图形的命令

12 .清空 Matlab 工作空间内所有变量的指令是(C)。 (A) clc (B) cls (C) clear (D) clf 13、下列变量名中——A——是合法的。 (A) char_1 ; (B) x*y ; (C) x\\y ; (D) end

16.求解线性方程组Ax=b,当det(A)≠0时,方程的解是(A).

A. A\\b B.b/A C.b\\A D.A/b 19. 清除工作空间(wordspace)的命令是(B)

A. clc; 清除命令窗口 B. clear; C. clf; D.delete;

20. 运行如下程序后,输入9回车,命令窗口(command windows)显示的结果为( D) x=input('请输入x的值:'); if x==10

y=cos(x+1)+sqrt(x*x+1); else

y=(3^(1/2))*sqrt(x+sqrt(x)); end y

A. 9 B. 8 C. 7 D. 6

21. 运行如下程序后, 命令窗口(command windows)显示的结果为( B)

s=0;

a=[12,13,14;15,16,17;18,19,20];

for k=a s=s+k; end disp(s');

A. 144 B. 39 48 57 C.145 D. 45 48 51

22. 运行如下程序后, 命令窗口(command windows)显示的结果为(b ) k=0;

for n=100:200

if rem(n,21)==0 %R=rem(X,Y),求余数函数,X,Y应该为正数 k=k+1; continue end break; end k

A.105 B. 5 C.4 D.101

23. 图形窗口(Figure)显示网格的命令是( b)

A. axis on B. grid on C. box on D. hold on 24. 已知函数文件如下,则factor(4)=(c ) function f=factor(n) if n<=1 f=1; else

f=factor(n-1)*n; end

A. 4 B. 12 C. 24 D.48

25. 运行如下程序后, 命令窗口(command windows)显示的结果为( d) A=[13,-56,78; 25,63,-735; 78,25,563; 1,0,-1]; y=max(max(A))

A. y=564 B.y=9 C.y=-735 D.y=563

26. 在图形指定位置加标注命令是(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)’); %添加图例的标注, 27.下列哪个函数为插值函数(b )

A. P=polyfit(X,Y,3) B. Y1=interp1(X,Y,X1,'method') C. [Y,I]=sort(A,dim) D. R=corrcoef(X)

28.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=2.0000i, c=2.0000i

29. 求解方程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

30、在循环结构中跳出循环,但继续下次循环的命令为 。C

(A) return;返回结果 (B) break ;跳出整个集合 (C) continue ; (D) keyboard键盘输入 32. 已知a=2:2:8, b=2:5,下面的运算表达式中,出错的为 c (A) a' *b (B) a .*b (C) a*b (D) a-b

(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

(6)已知a=2:2:8,b=2:5.下列运算表达式中错误的为(C) A. a’*b B. a.*b C. a*b D.a-b (8)下面程序执行后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 (9)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=2.0000i,c=2.0000i

(10)求解方程x(4)-4x(3)+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

3 A = [1 2; 3 4]; B = [1 2; 1 4]; 写出下面几条指令的运行结果: C = A*B D = A+B E = A.*B 答: C = 3 10 7 22 D = 2 4 4 8 E = 1 4 3 16

4.mysum=0;i=1; while(i<=100) mysum=mysum+i; i=i+1; end mysum

答:mysum =5050

6. 请修改下面的程序,让他们没有for循环语句! A=[1 2 3; 4 5 6; 7 8 9]; [r c]=size(A); for i=1:1:r

for j=1:1:c

if (A(i,j)>8 | A(i,j)<2) A(i,j)=0; end end end

解:程序如下:a=[1 2 3;4 5 6;7 8 9]; b=(a<=8&a>=2);a=a.*b (2) A 是一个維度m×n的矩阵. 写一段程序, 算出A中有多少个零元素。 答:>> A= input ('请输入一个矩阵') [m,n]= size(A); sig=0; for i=1:m for j=1:n if A(i,j)==0 sig = sig+1; end end end

请输入一个矩阵[0 1 2;1 0 2; 0 0 0] A = 0 1 2 1 0 2 0 0 0 >>sig sig = 5

9 向量 A=[错误!未找到引用源。]. 写一段程序, 找出A中的最小元素。 答:A= input ('请输入一个向量') [m,n]=size(A) min =A(1,n); for i=1:n if A(1,i)

请输入一个向量[1 2 3 -5 2 0] A =

1 2 3 -5 2 0 min = -5

11 写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值。 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);

1 5 3 9 5 13 7 17

13 求解以下线性方程组,要求写出程序代码和运行结果。 2x1-3x2+x3+2x4=8