matlab-复习资料

更新时间:2024-03-19 09:07:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

--WORD格式--可编辑--专业资料-----

一、 简述下列命令在

MATLAB 中的作用。

3. clc清除当前屏幕上显示的所有内容,但不清除工作空间中的数据

4. ceil 沿 +∞方向取整。

5. factor 符号计算的因式分解。

1. clf 清除图对象

2. clear 清除工作空间内的所有变量

8. linspace 创建等间隔行向量

9. sym2poly 符号多项式转变为双精度多项式系数向量 10. poly2sym 双精度多项式系数转变为向量符号多项式

12. poly2str 以习惯方式显示多项式

13. bar 二维直方图 14. pie 二维饼图 11. plot3 三维线图

6. pow2 2 的幂次。

7. logspace 创建对数刻度分度等间隔行向量

15. 17. 19.

edit diff fix

M 文件编辑 生成图形窗口 数值差分、符号微分 符号计算解微分方程

向零取整 符号计算的因式分解

16. figure 18. dsolve 20. factor

二、 填空题

1. MATLAB 系统由 MATLAB 开发环境、MATLAB 数学函数、MATLAB 语言、MATLAB

图形处理系统和 MATLAB 应用程序接口( API )五大部分构成。

2. 在命令窗口中输入 quit 和 exit 命令,就可以关闭 MATLAB 。

在 当前文件夹 中。

3. 在 MATLAB 环境中,如果不特别指明存放数据和文件的目录, MATLAB 总是默认地将它们存放

4. MATLAB 的主界面窗口包括 命令窗口 、当前文件夹浏览器、工作空间浏览器 和 历史命令窗口等部

分。

5. 编辑程序是,标点符号一定要在 英文状态 下输入,分号 , ;?的作用为: 1.用做矩阵的 行间分隔符 ,2.用做 不显示计算结果 的命令 。

6. 标点符号 ; 可以使命令行不显示运算结果, % 用来表示该行为注释行。

7. x 为 0~4pi,步长为 0.1pi 的向量,使用命令 x=0:0.1*pi:4*pi 创建。

8. 输入矩阵 A= ,使用全下标方式用 A(2,2) 取出元素 “-5”,使用单下标方

式用 A(5) 取出元素 “-5”。

--学习资料分享----

--WORD格式--可编辑--专业资料-----

9. 符号表达式 sin(2*a+t)+m 中主变量为 t 。

10. 设 x 是一维数组, x 的倒数第 3 个元素表示为 x(end-2) ;设 y 为二维数组, 要删除 y

的第 34 行和 48 列,可使用命令 y(34,:)=[] , y(:,48)=[]

11. 要从键盘读入一个字符串并赋值给变量 x,且给出提示 “ Who is she?,应”使用命令:

x=input(,Who is she??,?s?)。

12. 在 MATLAB 命令窗口中的 “>>”标志为 MATLAB 的 命令行 提示符, “│”标志为 输入 提示符。

13. 已知 A=[1 2 3;4 5 0;7 8 9];B=[1 0 3; 1 5 0;0 1 2];写出下列各指令运行的结果。

A+B ans = [2,2,6;5,10,0;7,9,11] ; A.*B A==B

ans= [1,0,9;4,25,0;0,8,18] ans= [1,0,1;0,1,1;0,0,0]

; ;

16. 17. 18. 19. 20. 21. 22.

14. MATLAB 的程序文件的扩展名是 .m 。

15. MATLAB 最基本的绘图函数为 plot( )。

执行 A=[1,2,3;4,5,6]; A(:,[1,3])=[]; 语句后, A= [2;5] 。 fix(-1.5)= -1 , round(-1.5)= -2 。

已知 A=[1 3;4 6];C=[A,eye(size(A));A,ones(size(A))]

4 6 1 1] 。

若 A=[1,2,3;4,5,6]; 则 A(4)= 5 ,A(2,3)= 若 A=[1 2 3;6 5 4]; 则 reshape(A,3,2)= [1

6 。 5;6

则C = [1 3 1 0;4 6 0 1; 1 3 1 1; 3;2 4]

1; 1 0] 。

若 A=[1,2;3,1]; B=[1,0;0,1]; 则 A~=B 的值为 [0

若 A=[4,15,-45,10,6;56,0,17,-45,0]; 则 find(A>=10 & A<=20) = [3 6 7]? 。

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

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

25. 用 if 判断语句判断 80≥ x>60,在 MATLAB 中 if 语言后的判断应写为:

if x<=80 & x>60 。

为了使两个 plot 的图形在同一个坐标显示,可以使用

可以使用 grid on 命令为图形添加网格。 a=[1 2 2],求 a 的转置,结果为: a=[1;2;2] 。 MATLAB 表达式 3*2^3^2 的结果是 192 。

hold on 命令进行图形保持;

26. 27. 28.

--学习资料分享----

--WORD格式--可编辑--专业资料-----

29. 对 x 进行赋值,从 5 到 25,间隔是 0.1,命令为: x=5:0.1:25 。

30. 对 x 进行赋值,从 2 到 20,线性等刻度,共 100 数值,命令为: x = linspace(2,20,100) 。

31. MATLAB 命令窗口中可用 clear 命令清除工作区中的变量;用 clc 命令可以清除命令窗口中的内

32. MATLAB 中的 M 文件有

容。 命令文件

函数文件

两种形式。

33. MATLAB 中的系统预定义的特殊变量 inf 表示正无穷大。

三、

选择题 1. 用来保存 MATLAB 工作空间浏览器中变量的文件的默认扩展名为(

A. txt

B. mat

C. m

D. exe

2. MATLAB 计算结果的的默认变量为( D )。

A.var

B. eps

C. nan

D. ans

3. 用来清除工作空间中保存的变量的命令是(C )。

A. delete

B. cancel

C. clear

D. clc

4. 下列标识符中哪一项不是 Matlab 的永久常数值。( B )A. pi

B. exp

C. Inf

D. eps

5. 下列标识符中哪一项是 Matlab 的合法变量名。( A )A. n_age

B. 3_tel

C. for

D. x*y

6. 下列函数中用来计算不大于自变量的最大整数的函数是(A )。A. floor(x)

B. rat(x)

C. fix(x)

D. round(x)

7. 下列函数中用来计算不小于自变量的最大整数的函数是(A )。A. ceil(x)

B. rat(x)

C. fix(x)

D. round(x)

8. 函数 mod(-7,3)的计算结果为( B )。

--学习资料分享----

B )。

--WORD格式--可编辑--专业资料-----

A. -2 B. 2

C. 1 D. -1

9. 函数 rem(-7,3)的计算结果为( D )。

B. 2 A. -2

C. 1 D. -1

abvar.mat 中的变量重新装载到工作空间中,应使用命令( 10. 为了将保存在文件 C )。

A. save abvar B. find abvar

C. load abvar D. getvar abvar

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

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

12. 下列表示可以作为 MATLAB 的变量的是 (D) 。

A. abcd-2 B.xyz_2# C.@h D.X_1_a

13. 如果 x=1:2:8,则 x(1)和 x(4) 分别是 (B)。

A. 1,8 B.1,7 C.2,8 D.2,7

14. 如果 x=1:-2:-8,则 x(1) 和 x(5)分别是 (D)

A. 1,-8 B.-1,-7 C.-1,-8 D.1,-7

15. MATLAB 表达式 2*2^3^2 的结果是 (A)

A. 128 B.4096 C.262144 D.256

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

A. abcd-3 B.xyz_3 C.abcdef D.x3yz

17. 指出下列错误的指令( B)。

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

18. 下列哪条指令是求矩阵的行列式的值( C)。

A. inv B.diag C.det D.eig

19. 清空 Matlab 工作空间内所有变量的指令是( C)。

A. clc B.cls C.clear D.clf

20. 下列变量名中 (A) 是合法的。

A. char_1 B.x*y C.x\\y D.end

21. 产生四维单位矩阵的语句为 (B) 。

--学习资料分享----

--WORD格式--可编辑--专业资料-----

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

A. A\\b B.b/A C.b\\A D.A/b

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

A. axis on B. grid on C.box on D.hold on

24. 在图形指定位置加标注命令是( 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)?);

25. 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

26. 在循环结构中跳出循环,但继续下次循环的命令为 ( C ).

A. return; B.break; C.continue; D.keyboard

27. 已知 a=2:2:8, b=2:5,下面的运算表达式中,出错的为 (C)

A. a' *b B.a .*b C.a*b D.a-b

28. 在循环结构中跳出循环,执行循环后面的代码的命令为(B)

A. return B.break C.continue D.keyboard

C) 29. 用 round 函数四舍五入对数组 [2.48 6.39 3.93 8.52]取整,结果为(

A. [2 6 3 8] B.[2 6 4 8] C.[2 6 4 9] D.[3 7 4 9 ]

30. 角度 x=[30 45 60],计算其正弦函数的运算为( D)

A. SIN(deg2rad(x)) B.SIN(x) C.sin(x) D.sin(deg2rad(x))

四、 阅读程序 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:m if

x(i)<0 n1=n1+1; else

s2=s2+x(i);

s1=s1+x(i);

A. ones(4)

B.eye(4)

C.zeros(4)

D.rand(4)

--学习资料分享----

--WORD格式--可编辑--专业资料-----

n2=n2+1; end

end

s1,n1,s2,n2,m

答: -31,6, 41,8,14

2. 写出下列程序运行结果

mysum=0;i=1; while(i<=100)

mysum=mysum+i;

i=i+1 ;

end

mysum mysum = 答: 5050

3. 写出执行以下代码后, 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

4. 运行如下程序后,输入9回车,命令窗口显示的结果为:

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

--学习资料分享----

17

--WORD格式--可编辑--专业资料-----

disp(c);

--学习资料分享----

--WORD格式--可编辑--专业资料-----

end 答: 9

5. 运行如下程序后,命令窗口显示的结果为: s=0;

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

for k=a s=s+k;

disp(s');

答: 39 48 57

6. 运行如下程序后,命令窗口显示的结果为: k=0;

for n=100:200

if rem(n,21)~=0

k=k+1; continue

break;

end

k

function f=factor(n)

if n<=1 f=1;

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

end end

答: 5

7. 已知函数文件如下,则 factor(4)的值为:

end end

--学习资料分享----

--WORD格式--可编辑--专业资料-----

8. 下面程序执行后 array 的值为: for

k=1:10

if k>6 break;

array(k)=k;

end

答: array=[1,2,3,4,5,6]

五、 简答题:

1. 什么是 MATLAB 的搜索路径?若在命令提示符后输入符号 X,请问 Matlab 将按什么次序搜索和 识别 X ?

2. 叙述 MATLAB 的主要窗口包括哪些?其作用是什么?命令窗

口:供输入命令,实现计算或绘图功能。

工作空间窗口:用于列出数据的变量信息,包括变量名、变量字节大小变量数

组大小、变量类型等内容。

当前目录浏览器: 显示当前目录下所有文件的文件名、 文件夹类型和最后修改时间等内容。 命令历史窗口:显示窗口所有执行过的命令,利用该窗口,可以查看曾经执行过的命令,

也可以重复利用这些命令。

end else

答: 24

3. MATLAB 的变量命名有什么规则?

变量名区分大小写;

变量名最多包含 63 个字符,其后的字符将被忽略;

变量名必须以一个字母开始,其后可以是如意数量的字母、数字或下划线;

变量名中不允许出现标点符号,因为许多标点符号在 MATLAB 中有特殊意义。

数声明行

2、H1 行%帮助文字的第一行,给出 M 文件帮助最关键的信息

4、M 文件正文

3、帮助文字 %对 M 文件更为详尽的说明

5、注释部分

%

%所实现的功能部分

4. 函数 M 文件的基本结构是什么?各结构部分起什么作用?1、函

5. MATLAB 系统由那些部分组成?

MATLAB 系统主要由开发环境、

MATLAB 数学函数库、

图形功能

应用程序接口五个部分组成。

6. 有几种建立矩阵的方法?各有什么优点?

MATLAB 语言、

--学习资料分享----

--WORD格式--可编辑--专业资料-----

可以用四种方法建立矩阵:

直接输入法,如 a=[2 5 7 3],优点是输入方法方便简捷;

通过 M 文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改;由函数建立,如 y=sin(x) ,可以由 MATLAB 的内部函数建立一些特殊矩阵;通过数据文件建立,该

方法可以调用由其他软件产生数据。

7. 创建符号变量有几种方法?

答:

MATLAB 提供了两种创建符号变量和表达式的函数:

sym 和 syms。

sym 用于创建一个符号变量或表达式,用法如 x=sym(‘x’) 及 f=sym(‘x+y+z ’); syms 用于

创建多个符号变量,用法如 syms x y z。

f=sym(‘x+y+z’ )

相当于 syms x y z f= x+y+z

8. 举例说明如何访问单元数组中的数据,说明使用花括号和圆括号的区别。

六、 编程题

1. 编写 MATALAB 程序,完成下列任务:

分别计算函数 y1=sin(t) 与 y2=2cos(2t)在向量 t 处的函数值;

在同一图形窗口绘制曲线 y1=sin(t)与 y2=2cos(2t),要求 y1 曲线为黑色点画线, y2 曲线为红色虚线圆圈; 并在图中恰当位置标注两条曲线的图例; 给图形加上标题“y1 and y2。”

解,程序如下:

t=linspace(0,4*pi,20);

y1=sin(t);

y2=2*cos(2*t);

plot(t,y1,'k-.');

text(1.2,sin(1.2),'y1\\leftarrow','FontSize',12);

hold on;

plot(t,y2,'r--o');

text(6,1.5,'y2\\leftarrow','FontSize',12);

title('y1 and y2') 在区间 [0,4*pi] 上均匀地取 20 个点构成向量;

2. 编写一个脚本程序实现:在同一图上分别用红色虚线和绿色点划线绘制函数 y1=sinx 和 y2=x2+2x-1 在区间 [-10,10]的曲线,标题为“用作图法求两条函数曲线的交点”, x 轴为“自变量 x”, y 轴为“函数 y1、 y2 的曲线”,并给出图例“‘ y1=sinx’,

‘y2=x2+2x-1’”。(7 分)

解:

y1=sin(x);

y2=x.^2+2*x-1;

plot(x,y1,'r--');

hold on

x=-10:1:10;

--学习资料分享----

--WORD格式--可编辑--专业资料-----

legend('y1=sin(x)','x^2+2x-1');

3. A 是一个維度 m×n 的矩阵,写一段程序, 计算出 A 中有多少个零元素 (不能调用系统函数 )。

ylabel(' 函数 y1、 y2 的曲线 ');

title(' 用作图法求两条函数曲线的交点

plot(x,y2,'c-.');

xlabel('自变量 x');

');

4. 向量 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 disp(sig)

]. 写一段程序

, 找出 A 中的最小元素 (不能调用系统函数 )。

答: A= input ('

请输入一个向量 ')

[m,n]=size(A)

min =A(1,n);

for i=1:n

if A(1,i)

min=A(1,i)

end

end

disp(min)

5. 教材课后练习:

P453 P141 2~8

--学习资料分享----

--WORD格式--可编辑--专业资料-----

legend('y1=sin(x)','x^2+2x-1');

3. A 是一个維度 m×n 的矩阵,写一段程序, 计算出 A 中有多少个零元素 (不能调用系统函数 )。

ylabel(' 函数 y1、 y2 的曲线 ');

title(' 用作图法求两条函数曲线的交点

plot(x,y2,'c-.');

xlabel('自变量 x');

');

4. 向量 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 disp(sig)

]. 写一段程序

, 找出 A 中的最小元素 (不能调用系统函数 )。

答: A= input ('

请输入一个向量 ')

[m,n]=size(A)

min =A(1,n);

for i=1:n

if A(1,i)

min=A(1,i)

end

end

disp(min)

5. 教材课后练习:

P453 P141 2~8

--学习资料分享----

本文来源:https://www.bwwdw.com/article/dnt8.html

Top