文档库 最新最全的文档下载
当前位置:文档库 › -matlab基础练习题(带答案)

-matlab基础练习题(带答案)

-matlab基础练习题(带答案)
-matlab基础练习题(带答案)

Matlab 基础练习题

常量、变量、表达式

1、 MATLAB 中,下面哪些变量名是合法的?( )

(A )_num (B )num_ (C )num- (D )-num 2、 在MA TLAB 中,要给出一个复数z 的模,应该使用( )函数。

(A )mod(z) (B )abs(z) (C )double(z) (D )angle(z) 3、 下面属于MATLAB 的预定义特殊变量的是?( )

(A )eps (B )none (C )zero (D )exp

4、 判断:在MA TLAB 的内存工作区中,存放一个英文字符 'a' 需要占用1个字节,存放

一个中文字符‘啊’需要占用2个字节。( 错,都是2个字节 )

5、 判断:MA TLAB 中,i 和j ( 对 )

6、 判断:MA TLAB 中,pi 代表圆周率,它等于3.14。( 错,后面还有很多位小数 )

7、 在MA TLAB 中,若想计算的5

1)3.0sin(21+=

πy 值,那么应该在MA TLAB 的指令窗中

输入的MA TLAB 指令是__y1=2*sin(0.3*pi)/(1+sqrt(5))_。

8、 在MA TLAB 中,a = 1,b = i ,则a 占_8__个字节,b 占_16_个字节,c 占________字

节。

9、 在MA TLAB 中,inf 的含义是__无穷大__,nan 的含义是__非数(结果不定)___。

数组

1、 在MA TLAB 中,X 是一个一维数值数组,现在要把数组X 中的所有元素按原来次序

的逆序排列输出,应该使用下面的( )指令。

(A )X[end:1] (B )X[end:-1:1] (C )X (end:-1:1) (D )X(end:1) 2、 在MA TLAB 中,A 是一个字二维数组,要获取A 的行数和列数,应该使用的MATLAB

的命令是( )。

(A )class(A) (B )sizeof(A) (C )size(A) (D )isa(A)

3、 在MATLAB 中,用指令x=1:9生成数组x 。现在要把x 数组的第二和第七个元素都

赋值为0,应该在指令窗中输入( ) (A )x([2 7])=(0 0) (B )x([2,7])=[0,0] (C )x[(2,7)]=[0 0] (D )x[(2 7)]=(0 0)

4、 在MA TLAB 中,依次执行以下指令:clear;A=ones(3,4); A(:)=[-6:5];这时,

若在指令窗中输入指令b=A(:,2)',那么,MATLAB 输出的结果应该是( ) (A )b = -3 -2 -1 (B )b = -2 -1 0 1 (C )b = -5 -1 3 (D )b = -5 -2 1 4

5、 在MA TLAB 中,A = 1:9,现在执行如下指令L1 = ~(A>5),则MATLAB 的执行结果应

该是L1 =___ 1 1 1 1 1 0 0 0 0___。

6、在MA TLAB中,要求在闭区间[0,5]上产生50个等距采样的一维数组b,请写出具体

的MATLAB指令___linspace(0,5,50) ___。

7、在MA TLAB中,A = [0:1/2:2]*pi,那么sin(A) = ___[0 1 0 -1 0]_____。

8、在MA TLAB中,A=[1,2,3;4,5,6;7,8,0],B=[2,1,6;8,5,2;14,2,1]。写出下面MATLAB语句

执行的结果:(为节省篇幅,把矩阵写成mat2str的形式)

(1)A==B [0 0 0; 0 1 0; 0 0 0]

(2) A.*B [2 2 18;32 25 12;98 16 0]

(3)A(:)' [1 4 7 2 5 8 3 6 0]

(4)A(1,:)*B(:,3) 13

9、在MA TLAB中,写出下面MA TLAB语句执行的结果:

(1)clear,A = ones(2,6)

A =

1 1 1 1 1 1

1 1 1 1 1 1

(2)A(:) = 1:2:24

A =

1 5 9 13 17 21

3 7 11 15 19 23

(3)A([1:3:7])

ans =

1 7 13

(4)diag(diag(A))

ans =

1 0

0 7

(5) B = A(:,end:-1:1)

B =

21 17 13 9 5 1

23 19 15 11 7 3

10、请编写一段matlab程序,完成以下功能:

(1)生成一个100行,200列的二维随机数组;

A=rand(100,200);

(2)找出数组A中所有大于0.49且小于0.51的元素的单下标;

Idx=find(A(:)>0.49 & A(:)<0.51)

(3)数组A中满足(2)中的条件的元素有多少个?

length(Idx)

(4)求出数组A中满足(2)中的条件的元素的和,并求出这些元素的平均值;

sum(A(Idx)), m=mean(A(Idx))

(5)将(4)求出的平均值赋值给数组A中满足(1)中的条件的每个元素。

A(Idx)=m;

11、请编写一段matlab程序,完成以下功能:

(1)找出100到200之间的所有质数,将这些质数存放在一个行数组里;

X=100:200;

p=X(isprime(X))

(2) 求出这些质数之和;

sum(p)

(3) 求出100到200之间的所有非质数之和(包括100和200)。

sum(X(~isprime(X)))

12、 22cos 0.7sin (1)x y x x ??

=+

??+??

,编写一段matlab 程序,要求如下

(1) 在[0,2]π区间,每隔0.01取一x 数值,计算出相应的y 的函数值;

x=0:0.01:2*pi;

y=(0.7+2*cos(x)./(1+x.^2)).*sin(x)

(2) 根据MATLAB 计算出的数据,找出在[0,2]π内该函数的极小值的坐标。

[my,idx]=min(y) x(idx)

数值计算

1、 在MA TLAB 中,A 是一个10×10数组,我们把该数组看成矩阵的话,则此矩阵的行列

式值 = ___det(A)__,此矩阵的逆矩阵(如果存在的话) = _inv(A)___。(用MATLAB 的函数表示) 2、 求解下列方程组:

1234234123412343212240x x x x x x x x x x x x x x x ++-=??-+=??

+++=??-+-=?347124

57423859652108

x y z w x y z w x z w x y z w +--=??-++=-?

?

+-=??-+-+=-? A=[1 1 3 -1;0 1 -1 1;1 1 2 2;1 -1 1 -1];

b=[2;1;4;0]; x=A\b

A=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10]; b=[4;-3;9;-8]; xyzw=A\b

3、 求有理分式()()

()()

3

32

3

2

30.522521x

x x R x

x x x ++=

+-++的商多项式和余多项式

n=conv([3 0 1 0],[3 0 0 0.5]); d=conv([1 2 -2],[5 2 0 1]); [q,r]=deconv(n,d)

4、 一元多项式42

234p x x x =-+,写出表示p 的MATLAB 语句__p=[2 0 -3 4 0]__,求

0p =的根的MA TLAB 语句是____ roots(p)__,求4

.3x =时p 的数值的MA TLAB 语句是__ polyval(p,4.3)___。

程序设计

1、 M 脚本文件和函数文件的有什么区别?

最主要的差别是,函数有自己的独立工作区,和外界的信息交换通过输入输出参数实现;而脚本没有独立工作区,其直接使用宿主程序的工作区,并把结果留在宿主程序中。 2、 掌握下面程序设计中常用的函数及关键字:

input pause warning nargin nargout for while if elseif else switch case otherwise end try catch break continue end 3、 分别用for 和while 循环语句计算63

2i i K ==

∑的程序。还请写出一种避免循环的计算程

序。(不要用symsum 函数) K=0; for i=0:63 K=K+i; end

K=0; i=0; while i<=63 K=K+i; i=i+1; end

K = sum(2.^(0:63))

4、 MATLAB 提供了两种循环结构,一种是for 循环结构,另一种是__while _循环结构。

5、 编写M 函数求和123s n =++++

function s=mysum(n) s = sum(1:n); 6、 编写M 函数求积123p n =???

?

function p=mysum(n) p = prod(1:n);

7、 编写M 函数列出从整数a 到整数b 之间能被3整除的奇数。

function r=odds3(a,b) r=a:b;

r=r(mod(r,2)==1&mod(r,3)==0)

8、 编写M 脚本列出从100到200不能被3整除同时也不能被7整除的数。

X=100:200;

X(mod(X,3)~=0&mod(X,7)~=0)

9、 一张纸厚0.06mm 且足够大,试问将纸对折多少次,其厚度将超过10000m ?

按题意,就是要求2^n * 0.06E-3 >= 10000,所以 n = ceil(log(10000/0.06e-3)/log(2))

10、 编写MATLAB 脚本输出“水仙花数”及水仙花数的个数。所谓“水仙花数”是一个3

位数,其各位数字的立方和等于该数本身。例如3

3

3

153153=++。 c=0;

for n=100:999

m=[fix(n/100) fix(mod(n,100)/10) mod(n,10)]; if n==sum(m.^3),

fprintf('%i = %i^3 + %i^3 + %i^3\n',n,m); c=c+1; end end

fprintf('\n 共%i 个水仙花数\n',c)

输出结果:

153 = 1^3 + 5^3 + 3^3 370 = 3^3 + 7^3 + 0^3 371 = 3^3 + 7^3 + 1^3 407 = 4^3 + 0^3 + 7^3

共4个水仙花数

绘图

1、 MATLAB 中,绘制三维曲面图的函数是( )

(A )surf (B )plot (C )subplot (D )plot3 2、 MATLAB 中,要绘制三维空间曲线,应该使用( )函数。

(A )polar (B )plot (C )subplot (D )plot3

3、 在MA TLAB 中,A 是一个1000行2列的二维数值数组,现在要把A 的第一列数据作

为横坐标,把A 的第二列数据作为纵坐标,画出一条曲线,试写出相应的MATLAB 语句_____plot(A(:,1),A(:,2))______。

4、 MATLAB 绘图指令中的__subplot _指令允许用户在同一个图形窗里布置几个独立的子

图。 5、 编写一段matlab 程序,绘制出二元函数2sin sin x y

z xy

=

三维网线图,要求如下:

(1)x ,y 的取值范围为99x -≤≤,99y -≤≤; (2)x ,y 每隔0.5取一个点;

(3)图形的线型和颜色由MA TLAB 自动设定

[x,y]=meshgrid((-9:0.5:9)+eps); % 加eps 避免出现0/0 z=2*sin(x).*sin(y)./(x.*y); mesh(x,y,z)

6、 编写一段matlab 程序,绘制出函数11sin(),2sin(2)y x y x x

==图形的MA TLAB 语句,

要求如下:

(1)x 的取值范围为33≤≤-x ; (2)x 每隔0.01取一个点;

(3)y1和y2的图形要画在同一幅图里;

(4)图形的线型和颜色由MA TLAB 自动设定。 x=(-3:0.01:3)+eps; % 加eps 避免出现除0警告 y1=x.*sin(1./x); y2=sin(2*x); plot(x,y1,x,y2)

符号计算

1、 在MA TLAB 中,能正确的把x 、y 定义成符号变量的指令是( )

(A )sym x y (B )sym x , y (C )syms x , y (D )syms x y

2、 要清除MA TLAB 工作空间中保存的变量,应该使用_clear _指令。

3、 在MA TLAB 中,指令findsym(sym('sin(w*t)'),1)的执行结果是__w __。

4、 在MA T L AB 中,写出把x 和y 定义为符号变量的相应语句__syms x y _。

5、 求解下列方程组的符号解:

1234234123412343212240x x x x x x x x x x x x x x x ++-=??-+=??

+++=??-+-=?347124

57423859652108

x y z w x y z w x z w x y z w +--=??-++=-?

?

+-=??-+-+=-? A=[1 1 3 -1;0 1 -1 1;1 1 2 2;1 -1 1 -1];

b=[2;1;4;0]; x=sym(A)\b

A=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10]; b=[4;-3;9;-8]; xyzw=sym(A)\b

6、 求极限:

(1) 求函数()11x

y x =+在0x =处的极限;

>> syms x

>> limit((1+x)^(1/x),0) ans = exp(1)

(2) 求函数sin 35x

y tg x

=

在0x =处的极限; >> syms x

>> limit(sin(3*x)/tan(5*x),0) ans = 3/5

(3) 求函数3x

nx

y =

在趋向正无穷处的极限; >> syms x n

>> limit(n*x/3^x,inf) ans = 0

(4) 求函数23ln x

y x

=在趋向正无穷处的极限;

>> syms x

>> limit(log(x)^2/x^3,inf) ans = 0

7、 求导数:

(1) 求函数21

33y x x

=

-+的50阶导数; >> syms x

>> y=1/x^2-3*x+3; >> diff(y,50) ans =

1551118753287382280224243016469303211063259720016986112000000000000/x^52

(2) 求函数(

)sin t

c a

y a be t

=+在t b =处的3阶导数;

syms t a b c

y=a*sin(b*exp(c^t)+t^a); simple(subs(diff(y,t,3),t,b))

8、 求不定积分:

32211

sin dx dx

x a x -??

>> syms x

>> int(1/sin(x)^3) ans =

-1/2/sin(x)^2*cos(x)+1/2*log(csc(x)-cot(x))

>> syms x a

>> int(1/(a^2-x^2))

ans =

-1/2/a*log(a-x)+1/2/a*log(a+x)

>> syms x

>> int((sqrt(x^2-3)-sqrt(x^2+3))/sqrt(x^4-9))

ans =

(x^4-9)^(1/2)/(x^2-3)^(1/2)/(x^2+3)^(1/2)*asinh(1/3*3^(1/2)*x)-1/(x^2+3)^(1/2)*(x ^4-9)^(1/2)/(x^2-3)^(1/2)*log(x+(x^2-3)^(1/2))

9、求定积分及广义积分

()

2

22

2222

11

sin cos x

x xdx x y dydx

π

π

--

+

????

>> syms x a

>> int(sqrt(x^2+a),-2,2)

ans =

2*(4+a)^(1/2)+1/2*a*log(2+(4+a)^(1/2))-1/2*a*log(-2+(4+a)^(1/2))

>> syms x

>> int(sin(x)^2*cos(x)^2,-pi,pi)

ans =

1/4*pi

>> syms x y

>> int(int(x^2+y^2,y,1,x^2),1,2)

ans =

1006/105

10、求下面的积分,给出50位精度的数值:

()

2

222

11

sin sin

x

x y dydx

+

??

>> syms x y

>> J=int(int(sin(x)^2+sin(y)^2,y,1,x^2),1,2);

>> vpa(J,50)

ans =

2.1540459589705316265997501755762001048498664176916

11、级数求和:

()

()()

()()

2

11

21

!

10

1

311

2

21

10

211

n

n

n

n n

k

n n

n k

z

n z

n

x

n z x

k x

∞∞

==

+

∞∞

+

==

-

+-

-

??

->

?

++

??

∑∑

∑∑

>> syms z n

>> symsum((z-1)^n/(n^2*2^n),n,1,inf)

ans =

(1/2*z-1/2)*hypergeom([1, 1, 1],[2, 2],1/2*z-1/2)

>> syms z n

>> symsum((3*n+1)*(z-1)^n,n,1,inf)

ans =

(4*z-4)*(-1/(z-2)+3/4/(z-2)^2*(z-1))

>> syms z n

>> symsum(n*(-1)^(n+1)*z^n,n,1,inf)

ans =

z/(z+1)^2

>> syms x positive

>> syms k

>> simple(symsum(2/(2*k+1)*((x-1)/(x+1))^(2*k+1),k,0,inf))

ans =

log(-(1+((x^2-2*x+1)/(x^2+2*x+1))^(1/2))/(-1+((x^2-2*x+1)/(x^2+2*x+1))^(1/2)))

Matlab上机实验答案

Matlab上机实验答案 实验一 MATLAB运算基础 1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。 >> z1=2*sin(85*pi/180)/(1+exp(2)) z1 = >> x=[2 1+2i; 5]; >> z2=1/2*log(x+sqrt(1+x^2)) z2 = - + + -

>> a=::; >> z3=(exp.*a)-exp.*a))./2.*sin(a++log(+a)./2) (>> z33=(exp*a)-exp*a))/2.*sin(a++log(+a)/2)可以验证z3==z33,是否都为1) z3 = Columns 1 through 5 + + + + + Columns 6 through 10 + + + + + Columns 11 through 15 + + + + + Columns 16 through 20 + + + + +

Columns 21 through 25 + + + + + Columns 26 through 30 + + + + + Columns 31 through 35 + + + + + Columns 36 through 40 + + + + + Columns 41 through 45 + + + + + Columns 46 through 50

+ + + + + Columns 51 through 55 + + + + + Columns 56 through 60 + + + + + Column 61 + (4) 2 2 4 2 01 112 2123 t t z t t t t t ?≤< ? =-≤< ? ?-+≤< ? ,其中t=0:: >> t=0::; >> z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3).*(t.^ 2-2.*t+1) z4 =

matlab试卷合集附答案

一、填空题 1、求可逆矩阵A的逆矩阵的指令是 inv(A) 2、A=[0 2 3 0],B=[4 5 0 0],则X=A&B的显示结果为 0 1 0 0 3、求矩阵A的转置矩阵的指令是: A’ 4、x=[10 -20 30]; a=sign(x);显示结果为 1 -1 1 5、Notebook是Matlab的文字处理工具,启动Notebook有两种方法,即一 种是在 Word 中启动,另一种是在 Matlab 中启动。 6、Matlab7.3提供了非常强大的帮助系统,包括帮助命令、帮助 窗口、HTML格式帮助、pdf格式帮助和帮助演示等。 7、clc命令和clear命令的区别是 clc清除命令窗口所有显示内容; Clear清除所有显示的变量 . 8、命令窗口中的type命令的功能为显示文件的内容 . 9、matlab7.3提供了三种程序调试的工具,包括直接检测调试、专用调试命 令和使用 M文件编辑/调试器。 10、matlab除了最常用的主函数和子函数外,还提供了嵌套函数、私有函数、 重载函数和匿名函数。 11、在matlab7.3中,创建句柄图形对象的命令格式为____________ h_obj=funname(‘PropertyName’,PropertyValue,……)_ 12、计算5*e3*|cos175°|语句为 5*exp(3)*abs(cos(175*pi/180)). 13、创建随机矩阵的指令用rand,创建稀疏矩阵用sparse 14、为图形添加网格使用grid on,使用legend命令添加图例。 1、MATLAB常用操作界面包括命令窗口、工作空间窗口(浏览器)、 命令历史窗口、当前目录窗口、内存数组编辑器、M文件编辑/调试器、 帮助导航/浏览器、图形窗口等。 2、MATLABInf或inf表示无穷大、NaN或nan表示不是一个数、nargout表 示函数输出宗量数目。 3、MATLAB中逗号主要用作要显示计算结果的指令与其后指令的分隔; 用作输入量与输入量之间的分隔符;用作数组元素分隔符号。 4、工作空间浏览器主要用于内存变量的查阅、保存和编辑。 5、MATLAB实现将全下标转换为单下标的指令为Sub2ind、据单下标换算出全 下标的指令为Ind2sub。 6、二维数组的标识有“全下标”标识、“单下标”标识、“逻辑1”标识。 7、在一个元胞数组A中寻访第2行第3列元胞元素用A(2,3);寻访数组第 2行第3列元胞中的内容用A{2,3}。 8、MATLAB中clf用于清除图形窗、clc用于清除指令窗中显示内容、clear 用于清除MATLAB工作空间中保存的变量。 1.已知A=[0 9 6;1 3 0];B=[1 4 3;1 5 0];写出下列各指令运行的结果。 A & B 的运行结果ans= ; A ./ B 的运行结果ans= 。 2. 产生4阶全0方阵的命令为;产生3阶全1方阵的命令为。 3. A=rand(2,5);b=size(A);c=length(A);则b和c的值分别为和。

MATLAB全部实验及答案

MATLAB全部实验及答案 实验一、MATLAB基本操作 实验内容及步骤 4、有关向量、矩阵或数组的一些运算 (1)设A=15;B=20;求C=A+B与c=a+b? (2)设A=[1 2 3;4 5 6;7 8 9],B=[9 8 7;6 5 4;3 2 1];求A*B与 A.*B? A*B就是线代里面的矩阵相乘 A.*B是对应位置的元素相乘(3)设a=10,b=20;求i=a/b=0.5与j=a\b=2? (4)设a=[1 -2 3;4 5 -4;5 -6 7] 请设计出程序,分别找出小于0的矩阵元素及其位置(单下标、全 下标的形式),并将其单下标转换成全下标。 clear,clc a=[1 -2 3;4 5 -4;5 -6 7]; [x,y]=find(a<0); c=[]; for i=1:length(x) c(i,1)=a(x(i),y(i)); c(i,2)=x(i); c(i,3)=y(i); c(i,4)=(y(i)-1)*size(a,2)+x(i); end c

(5)在MATLAB命令行窗口运行A=[1,2;3,4]+i*[5,6;7,8];看结果如何?如果改成运行A=[1,2;3,4]+i[5,6;7,8],结果又如何?前面那 个是虚数矩阵,后面那个出错 (6)请写出完成下列计算的指令: a=[1 2 3;3 4 2;5 2 3],求a^2=?,a.^2=? a^2= 22 16 16 25 26 23 26 24 28 a.^2= 1 4 9 9 16 4 25 4 9 (7)有一段指令如下,请思考并说明运行结果及其原因 clear X=[1 2;8 9;3 6]; X( : ) 转化为列向量 (8)使用三元组方法,创建下列稀疏矩阵 2 0 8 0 0 0 0 1 0 4 0 0 6 0 0 0 方法一: clear,clc

Matlab实验五分支结构程序设计答案

实验五分支结构程序设计 实验内容 (1)从键盘输入一个数,将它反向输出,例如输入693,输出为396 >> clear >> format long g s=input('s=') n=fix(log10(s)); A=0; for i=1:n a=fix(s/10^n); x=fix(mod(s,10^i)/10.^(i-1)); A=A+x*10^(n+1-i); end A+a s=693 s = 693 ans = 396 (2)输入一个百分制成绩,要求输出成绩等级A,B,C,D,E其中90-100位A,80-89为B,70-79为C,60-69为D,60以下为E 1)分别用if语句和switch语句实现 2)输入百分制成绩后要判断成绩的合理性,对不合理的成绩应输出出错信息 If语句 >> a=input('输入成绩') if a>=90&a<=100 disp('A 成绩合理'); elseif a>=80&a<90 disp('B 成绩合理'); elseif a>=70&a<80 disp('C 成绩合理');

elseif a>=60&a<70 disp('D 成绩合理'); elseif a<60 disp('E 成绩合理'); else disp('成绩错误') end 输入成绩98 a = 98 A 成绩合理 >> a=input('输入成绩') if a>=90&a<=100 disp('A 成绩合理'); elseif a>=80&a<90 disp('B 成绩合理'); elseif a>=70&a<80 disp('C 成绩合理'); elseif a>=60&a<70 disp('D 成绩合理'); elseif a<60 disp('E 成绩合理'); else disp('成绩错误') end 输入成绩148 a = 148 成绩错误 switch语句 >> a=input('输入成绩') switch a; case num2cell(0:59) disp('E 成绩合理'); case num2cell(60:69) disp('D 成绩合理'); case num2cell(70:79) disp('C 成绩合理'); case num2cell(80:89) disp('B 成绩合理'); case num2cell(90:100) disp('A 成绩合理'); otherwise disp('成绩错误'); end

MATLAB)课后实验答案

实验一 MATLAB 运算基础 1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 (1) 012 2sin 851z e =+ (2) 21ln(2 z x =,其中2 120.45 5i x +??=? ?-?? (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022 a a e e a z a a --+= ++=--L (4) 22 42011 122123t t z t t t t t ?≤

4. 完成下列操作: (1) 求[100,999]之间能被21整除的数的个数。 (2) 建立一个字符串向量,删除其中的大写字母。解:(1) 结果: (2). 建立一个字符串向量例如: ch='ABC123d4e56Fg9';则要求结果是:

实验二 MATLAB 矩阵分析与处理 1. 设有分块矩阵33322322E R A O S ?????? =? ??? ,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22 E R RS A O S +?? =???? 。 解: M 文件如下; 5. 下面是一个线性方程组: 1 231 1 12340.951110.673450.5211145 6x x x ?? ??????????????=??? ?????????????????? ? ch = 123d4e56g9

(1) 求方程的解。 (2) 将方程右边向量元素b 3改为0.53再求解,并比较b 3的变化和解的相对变化。 (3) 计算系数矩阵A 的条件数并分析结论。 解: M 文件如下: 实验三 选择结构程序设计 1. 求分段函数的值。 2226035605231x x x x y x x x x x x x ?+-<≠-? =-+≤<≠≠??--? 且且及其他 用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y 值。 解:M 文件如下:

MATLAB期末考试试卷及其参考答案

MATLAB期末考试试卷及其参考答案 一、填空题(每空1分,20分) 1、MATLAB常用操作界面包括、工作空间窗口、 、、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。 2、MATLAB中Inf或inf表示、NaN或nan表示、 nargout表示。 3、MATLAB中逗号主要用作; 用作输入量与输入量之间的分隔符;。 4、工作空间浏览器主要用于内存变量的、和。 5、MATLAB实现将全下标转换为单下标的指令为、据单下标换 算出全下标的指令为。 6、二维数组的标识有、、“逻辑1”标识。 7、在一个元胞数组A中寻访第2行第3列元胞元素用;寻访数组第2行第3列元胞中所存的内容用。 8、4、MATLAB中clf用于、clc用 于、 clear用于。 二、简答题(每题5分,共20分) 1、简述MA TLAB历史指令窗的主要作用。 2、简述空数组的功用。 3、简述MATLAB函数的基本结构。 4、简述绘制二维图形的一般步骤。 三、阅读程序并回答问题(每题4分,共28分) 1、写出下列指令运行结果。 A=zeros(2,4); A(:)=1:8;

s=[2 3 5]; A(s) Sa=[10 20 30]' A(s)=Sa 2、写出下列指令运行结果。 A=reshape(1:16,2,8) reshape(A,4,4) s=[1 3 6 8 9 11 14 16]; A(s)=0 3、写出下列指令运行结果。 A=[1,2;3,4]; B=[-1,-2;2;1]; S=3; A.*B A*B S.*A S*B 4、下面的函数主要完成什么功能? function f=factor(n) if n<=1 f=1; else f=factor(n-1)*n; end 5、写出下列指令运行结果。 ch=‘ABc123d4e56Fg9’; subch=ch(1:5) revch=ch(end:-1:1)

Matlab实验第一次实验答案

实验一Matlab使用方法和程序设计 一、实验目的 1、掌握Matlab软件使用的基本方法; 2、熟悉Matlab的数据表示、基本运算和程序控制语句 3、熟悉Matlab绘图命令及基本绘图控制 4、熟悉Matlab程序设计的基本方法 二、实验内容: 1、帮助命令 使用help命令,查找sqrt(开方)函数的使用方法; 解:sqrt Square root Syntax B = sqrt(X) Description B = sqrt(X) returns the square root of each element of the array X. For the elements of X that are negative or complex, sqrt(X) produces complex results. Remarks See sqrtm for the matrix square root. Examples sqrt((-2:2)') ans = 0 + 1.4142i 0 + 1.0000i

1.0000 1.4142 2、矩阵运算 (1)矩阵的乘法 已知A=[1 2;3 4]; B=[5 5;7 8]; 求A^2*B 解:A=[1 2;3 4 ]; B=[5 5;7 8 ]; A^2*B (2)矩阵除法 已知A=[1 2 3;4 5 6;7 8 9]; B=[1 0 0;0 2 0;0 0 3]; A\B,A/B 解:A=[1 2 3;4 5 6;7 8 9 ]; B=[1 0 0;0 2 0;0 0 3 ]; A\B,A/B (3)矩阵的转置及共轭转置

MATLAB实验题答案

1、求以下变量的值,并在MATLAB中验证。( 1 ) a = 1 : 2 : 5 a = 1 3 5 ( 2 ) b = [ a' , a' , a' ;a ] b = 1 1 1 3 3 3 5 5 5 1 3 5 ( 3 ) c = a + b ( 2 , : ) c = 4 6 8 2、下列运算是否合法,为什么?如合法, 结果是多少? >> result2=a*b Error using * Inner matrix dimensions must agree. >> result3=a+b result3 = 3 6 2 5 8 11 >> result4=b*d result4 = 31 22 22 40 49 13 >> result5=[b;c']*d result5 = 31 22 22 40 49 13 -5 -8 7 >> result6=a.*b result6 = 2 8 -3 4 1 5 30 >> result7=a./b result7 = 0.5000 0.5000 -3.0000 4.0000 1.6667 1.2000>> result8=a.c Attempt to reference field of non-structure array. >> result9=a.\b result9 = 2.0000 2.0000 -0.3333 0.2500 0.6000 0.8333 >> result10=a.^2 result10 = 1 4 9 16 25 36 >> result11=2.^a result11 = 2 4 8 16 32 64 3、用MATLAB求解下面的的方程组。 (1) ? ? ? ? ? ? ? ? ? ? ? ? - = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - - - - 1 7 4 13 2 3 1 5 11 2 2 2 3 15 9 2 1 2 7 4 3 2 1 x x x x >> A=[7 2 1 -2;9 15 3 -2;-2 -2 11 5;1 3 2 13] >> B=[4 7 -1 0] >> B=B' >> x=inv(A)*B (2) ? ? ? ? ? ? ? = - + + = - - = - + + = + + 5 6 5 3 3 3 3 2 8 2 1 w z y x w y x w z y x z y x >> A1=[1 1 1 0;1 2 1 -1;2 -1 0 -3;3 3 5 -6] >> B2=[1;8;3;5] >> x2=inv(A1)*B2 4、已知 ? ? ? ? ? ? ? ? ? ? ? ? - - - - = 13 2 3 1 5 11 2 2 2 3 15 9 2 1 2 7 A

matlab所有实验及答案

实验二 习题 1、 矩阵Y= ???? ? ???? ???3472123100451150425 ,给出元素1的全下标和单下标,并用函数练习全下标和单下标的转换,求出元素100的存储位置。取出子矩阵?? ? ? ??21301,并求该矩阵的维数。 解:命令为: Y=[5,2,4;0,15,1;45,100,23;21,47,3] Y(2,3) Y(10) sub2ind([4 3],2,3) [i,j]=ind2sub([4 3],10) find(Y==100) sub2ind([4 3],3,2) B=Y(2:2:4,3:-2:1) 或 B=Y([2 4],[3 1]) [m n]=size(Y) 2、 建立一个数值范围为0—100内4*5的整数随机矩阵。 求出大于50的元素的位置。 解:命令为: G=int8(100*rand(4,5)) find(G>50) 3、 已知矩阵A=[1 0 -1 ;2 4 1; -2 0 5],B=[0 -1 0;2 1 3;1 1 2] 求2A+B 、A 2-3B 、A*B 、B*A 、A .*B ,A/B 、A\B 解:命令为: A=[1 0 -1 ;2 4 1; -2 0 5] B=[0 -1 0;2 1 3;1 1 2] E=2*A+B F=A^2-3*B G=A*B H=B*A I=A.*B J=A/B K=A\B 4、 利用函数产生3*4阶单位矩阵和全部元素都为8的 4*4阶矩阵,并计算两者的乘积。 解:命令为: A=eye(3,4) B=8*ones(4) C=A*B 5、 创建矩阵a=????? ???????------7023021.5003.120498601 ,取出其前两列构成的矩阵b ,取出前两行构成矩阵c ,转置矩阵b 构成矩阵d ,计算a*b 、c

MATLAB试卷

MATLAB试卷 一、选择题(每空2分,总共20分) 1.下列哪个变量的定义是不合法的() (A) abcd-3 (B) xyz_3 (C ) abcdef (D) x3yz 2.下列哪条指令是求矩阵的行列式的值() (A)inv (B) diag (C ) det (D) eig 3.在循环结构中跳出循环,执行循环后面代码的命令为() (A) return (B) break (C) continue (D) keyboard 4.已知a=2:2:8, b=2:5,下面的运算表达式中,出错的 为() (A) a'*b (B) a .*b (C) a*b (D) a-b 5.用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] 6. 下面的程序执行后array的值为( ) 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. 7.下列关于脚本文件和函数文件的描述中不正确的是( ) A. 去掉函数文件第一行的定义行可转变成脚本文件; B. 函数文件可以在命令窗口直接运行; C. 脚本文件可以调用函数文件; D. 函数文件中的第一行必须以function开始;

8.对应MATLAB提供的绘制平面曲线、离散序列、三维曲线、三维网格曲线、等高线图的函数为( ) A. plot, stem, mesh, plot3, surf B. plot, stem, plot3, mesh, contour C. plot, hist, mesh, plot3, contour D. plot, hist, plot3, meshc, contour 9.设X=[0:0.5*pi:pi], Y=cos(X)且Z=sin(X),那么Y.*Z, Y*Z’和cat(1,Y,Z)的结果分别为( ) A. [0 0 0] 0 [1 0 -1; 0 1 0] B. [0 0 0] 0 [1 0 -1 0 1 0] C. [0 0 0] [0 1 0; 0 0 0; 0 -1 0] [1 0 -1; 0 1 0] D. [0 1 0; 0 0 0; 0 -1 0] [0 0 0] [1 0 -1 0 1 0] 10.使用下列哪一条指令可以将图形窗体分割成二行三列,并且将第二行第二列的绘图区域设置为当前的绘图区域() A.subplot(3,2,2) B.subplot(2,3,2) C.subplot(3 ,2,5) D.subplot(2,3,5)

matlab实验四及其答案

实验四GUI 设计专业 学号姓名成绩电气工程及其自 动化201409140305 杨诚1.创建GUI 绘制方程c bx ax y ++=2图形,需要显示绘图结果的坐标系窗口,还能够输入 a , b , c 的值和x 取值范围(最大值和最小值)。 回调函数的编写: a=str2num(get(handles.edit1,'String'));b=str2num(get(handles.edit2,'String'));c=str2num(get(handles.edit3,'String'));xmin=str2num(get(handles.edit4,'String'));xmax=str2num(get(handles.edit5,'String'));x=xmin:0.1:xmax;y=a*x.^2+b*x+c;plot(x,y); 设计的运行界面截图:

2.设计一个GUI,完成画出y=sin(x)、y=cos(x)和y=x 3.的波形图。回调函数的编写: x=-5:0.1:5 plot(x,sin(x)) x=-5:0.1:5 plot(x,cos(x))

x=-5:0.1:5 y=x.^3 plot(x,y)

设计的运行界面截图: 3.创建一个GUI,含有下拉菜单,下拉菜单中有背景颜色选择。回调函数的编写: yanse=get(handles.popupmenu1,'value'); switch yanse case1 set(gcf,'color','r'); case2 set(gcf,'color','y'); case3 set(gcf,'color','g'); end 设计的运行界面截图:

MATLAB期末上机试题带答案

MATLAB 期末上机考试试题带答案版 姓名: 学号: 成绩: 1.请实现下图: 50 100 150 200 250 -1 -0.8-0.6-0.4-0.200.20.40.60.81x y y=sin(x) x=linspace(0,8*pi,250); y=sin(x); plot(x,y) area(y,-1) xlabel('x') ylabel('y') title('y=sin(x)') 2.请实现下图: x=linspace(0,2*pi,100); y1=sin(x); subplot(2,2,1) plot(x,y1,'k--') grid on xlabel('x') ylabel('y') title('sin(x)') legend('y=sin(x)') y2=cos(x);

subplot(2,2,2) plot(x,y2,'r--') grid on xlabel('x') ylabel('y') title('cos(x)') legend('y=cos(x)') y3=tan(x); subplot(2,2,3) plot(x,y3,'k-') grid on xlabel('x') ylabel('y') title('tan(x)') legend('y=tan(x)') y4=cot(x); subplot(2,2,4) plot(x,y4) grid on xlabel('x') ylabel('y') title('cot(x)') legend('y=cot(x)') 3.解方程组: a=[3 2 1;1 -1 3;2 4 -4]; b=[7;6;-2] ; x=a\b 4.请实现下图: 2 4 6 8 10 12 14 -1-0.8-0.6-0.4-0.200.20.40.60.81x y '自己的姓名' sin(x)sin(2*x) x=linspace(0,4*pi,1000); y1=sin(x);

MATLAB上机实验(答案)

MATLAB工具软件实验(1) (1)生成一个4×4的随机矩阵,求该矩阵的特征值和特征向量。程序: A=rand(4) [L,D]=eig(A) 结果: A = 0.9501 0.8913 0.8214 0.9218 0.2311 0.7621 0.4447 0.7382 0.6068 0.4565 0.6154 0.1763 0.4860 0.0185 0.7919 0.4057 L = -0.7412 -0.2729 - 0.1338i -0.2729 + 0.1338i -0.5413 -0.3955 -0.2609 - 0.4421i -0.2609 + 0.4421i 0.5416 -0.4062 -0.0833 + 0.4672i -0.0833 - 0.4672i 0.4276 -0.3595 0.6472 0.6472 -0.4804 D = 2.3230 0 0 0 0 0.0914 + 0.4586i 0 0 0 0 0.0914 - 0.4586i 0 0 0 0 0.2275 (2)给出一系列的a值,采用函数 22 22 1 25 x y a a += - 画一组椭圆。 程序: a=0.5:0.5:4.5; % a的绝对值不能大于5 t=[0:pi/50:2*pi]'; % 用参数t表示椭圆方程 X=cos(t)*a; Y=sin(t)*sqrt(25-a.^2); plot(X,Y) 结果: (3)X=[9,2,-3,-6,7,-2,1,7,4,-6,8,4,0,-2], (a)写出计算其负元素个数的程序。程序: X=[9,2,-3,-6,7,-2,1,7,4,-6,8,4,0,-2]; L=X<0; A=sum(L) 结果: A =

MATLAB期末上机试题带答案

MATLAB期末上机试题带答案

MATLAB 期末上机考试试题带答案版 姓名: 学号: 成绩: 1.请实现下图: x y y=sin(x) x=linspace(0,8*pi,250); y=sin(x); plot(x,y) area(y,-1) xlabel('x') ylabel('y') title('y=sin(x)') 2.请实现下图:

x=linspace(0,2*pi,100); y1=sin(x); subplot(2,2,1) plot(x,y1,'k--') grid on xlabel('x') ylabel('y') title('sin(x)') legend('y=sin(x)') y2=cos(x); subplot(2,2,2) plot(x,y2,'r--') grid on xlabel('x') ylabel('y') title('cos(x)') legend('y=cos(x)') y3=tan(x); subplot(2,2,3) plot(x,y3,'k-') grid on xlabel('x')

ylabel('y') title('tan(x)') legend('y=tan(x)') y4=cot(x); subplot(2,2,4) plot(x,y4) grid on xlabel('x') ylabel('y') title('cot(x)') legend('y=cot(x)') 3.解方程组: a=[3 2 1;1 -1 3;2 4 -4];b=[7;6;-2] ; x=a\b 4.请实现下图:

河南城建学院MATLAB上机实验答案

一熟悉Matlab工作环境 1、熟悉Matlab的5个基本窗口 思考题: (1)变量如何声明,变量名须遵守什么规则、是否区分大小写。 答:变量一般不需事先对变量的数据类型进行声明,系统会依据变量被赋值的类型自动进行类型识别,也就是说变量可以直接赋值而不用提前声明。变量名要遵守以下几条规则:?变量名必须以字母开头,只能由字母、数字或下划线组成。 ?变量名区分大小写。 ?变量名不能超过63个字符。 ?关键字不能作为变量名。 ?最好不要用特殊常量作为变量名。 (2)试说明分号、逗号、冒号的用法。 分号:分隔不想显示计算结果的各语句;矩阵行与行的分隔符。 逗号:分隔欲显示计算结果的各语句;变量分隔符;矩阵一行中各元素间的分隔符。 冒号:用于生成一维数值数组;表示一维数组的全部元素或多维数组某一维的全部元素。 (3)linspace()称为“线性等分”函数,说明它的用法。 LINSPACE Linearly spaced vector. 线性等分函数 LINSPACE(X1, X2) generates a row vector of 100 linearly equally spaced points between X1 and X2. 以X1为首元素,X2为末元素平均生成100个元素的行向量。 LINSPACE(X1, X2, N) generates N points between X1 and X2. For N < 2, LINSPACE returns X2. 以X1为首元素,X2为末元素平均生成n个元素的行向量。如果n<2,返回X2。 Class support for inputs X1,X2: float: double, single 数据类型:单精度、双精度浮点型。 (4)说明函数ones()、zeros()、eye()的用法。 ones()生成全1矩阵。 zeros()生成全0矩阵。 eye()生成单位矩阵。 2、Matlab的数值显示格式

MATLAB实验题目及答案

实验二一维二维数组的创建和寻访 一、实验目的 1、掌握一维数组、二维数组创建和寻访的几种方法。 2、区别数组运算和矩阵运算的差别。 3、熟悉执行数组运算的常用数组操作函数。 4、掌握数组运算中的关系和逻辑操作及常用的关系、逻辑函数。 5、掌握“非数”、“空”数组在MA TLAB中的应用。 二、实验主要仪器与设备 装配有MA TLAB7.6软件的计算机 三、预习要求 做实验前必须认真复习第三章MATLAB的数值数组及向量化运算功能。 四、实验内容及实验步骤 1、一维数组的创建方法有哪几种?举例说明。 答:一维数组的创建方法有: ①递增/递减型一维数组的创建:冒号生成法:x=a:inc:b 线性(或对数)定点法:x=linspace(a,b,n),x=logspace(a,b,n) ②逐个元素输入法:如x=[0.1,sin(pi/5),-exp(-3),-2*pi] ③运用MA TLAB函数生成法:例ones,rand等。 2、输入以下指令,并写出运行结果。本例演示:数组元素及子数组的各种标识和寻访格式;冒号的使用;end的作用。 A=zeros(2,6) %创建(2×6)的全零数组 A(:)=1:12 %赋值号左边:单下标寻访(2×6) 数组A的全部12个元素 %赋值号右边:拥有12个元素的一维数组 A(2,4) %双下标:A数组的第2行第4列元素 A(8) %单下标:数组A的第8个元素 A(: , [1,3]) %双下标:显示A的“第1列和第3列上全部行的元素” A([1, 2, 5, 6]') %单下标:把A数组第1,2,5,6个元素排成列向量 A(: , 4:end) %双下标:显示A的“从第4起到最后一列上全部行的元素” %在此end用于“列标识”,它表示“最后一列” A(2,1:2:5)=[-1, -3, -5] %把右边的3个数分别赋向A数组第2行的第1,3,5个元素位置 B=A([1, 2, 2, 2], [1, 3, 5]) %取A数组的1,3,5列的第1行元素作为B的第1行 %取A数组的1,3,5列的第2行分别作为B的第2,3,4行 L=A<3 %产生与A维数相同的“0,1”逻辑数组 A(L)=NaN %把逻辑1标识的位置上的元素赋为“非数” 运行结果: A = 0 0 0 0 0 0 0 0 0 0 0 0

matlab实验内容答案

实验报告说明: matlab 课程实验需撰写8个实验报告,每个实验报告内容写每次实验内容中标号呈黑体大号字显示的题目。 第一次实验内容: 实验一 MATLAB 运算基础 一、实验目的 1.熟悉启动和退出MA TLAB 的方法。 2.熟悉MA TLAB 命令窗口的组成。 3.掌握建立矩阵的方法。 4.掌握MA TLAB 各种表达式的书写规则以及常用函数的使用。 二、实验内容 1.先求下列表达式的值,然后显示MA TLAB 工作空间的使用情况并保存全部变量。 (1)2 2sin 8511z e ?= + (2 )12ln(2 z x =+ ,其中2120.45 5i +? ? =? ?-?? (3)0.30.33sin(0.3), 3.0, 2.9, 2.8,,2.8,2.9,3.02 a a e e z a a --= +=--- 提示:利用冒号表达式生成a 向量,求各点的函数值时用点乘运算。 (4)2 2 2 01 41 1221 23 t t z t t t t t ?≤

12344347873657A -????=??????,131203327B -???? =????-?? 求下列表达式的值: (1)A+6=B 和A-B+I(其中I 为单位矩阵)。 (2)A*B 和A.*B 。 (3)A^3和A^.3 。 (4)A/B 和B\A 。 (5)[A ,B]和[A([1,3],;);B^2] 。 3.设有矩阵A 和B 12345678910111213141516171819202122232425A ????????=????????, 30 161769 23497041311B ?? ?? -?? ??=-?? ????? ? (1) 求它们的乘积C 。 (2) 将矩阵C 的右下角3×2子矩阵赋给D (3) 查看MA TLAB 工作空间使用情况。 4.完成下列操作: (1)求[100,999]之间能被21整除的数的个数。 提示:先利用冒号表达式,再利用find 和length 函数。 (2)建立一个字符串向量,删除其中的大写字母。 提示:利用find 函数和空矩阵。 第二次实验内容: 实验三 选择结构程序设计 一、实验目的 1. 掌握建立和执行M 文件的方法。 2. 掌握利用if 语句实现选择结构的方法。 3. 掌握利用switch 语句实现多分支选择结构的方法。 4. 掌握try 语句的使用。 二 、实验内容

Matlab实验指导书(含答案)汇总

实验一:Matlab操作环境熟悉 一、实验目的 1.初步了解Matlab操作环境。 2.学习使用图形函数计算器命令funtool及其环境。 二、实验内容 熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool,并进行下列计算: 1.单函数运算操作。 求下列函数的符号导数 (1) y=sin(x); (2) y=(1+x)^3*(2-x); 求下列函数的符号积分 (1) y=cos(x); (2) y=1/(1+x^2); (3) y=1/sqrt(1-x^2); (4) y=(x-1)/(x+1)/(x+2); 求反函数 (1) y=(x-1)/(2*x+3); (2) y=exp(x); (3) y=log(x+sqrt(1+x^2)); 代数式的化简 (1) (x+1)*(x-1)*(x-2)/(x-3)/(x-4); (2) sin(x)^2+cos(x)^2; (3) x+sin(x)+2*x-3*cos(x)+4*x*sin(x); 2.函数与参数的运算操作。 从y=x^2通过参数的选择去观察下列函数的图形变化 (1) y1=(x+1)^2 (2) y2=(x+2)^2 (3) y3=2*x^2 (4) y4=x^2+2 (5) y5=x^4 (6) y6=x^2/2 3.两个函数之间的操作 求和 (1) sin(x)+cos(x) (2) 1+x+x^2+x^3+x^4+x^5 乘积 (1) exp(-x)*sin(x)

Matlab与系统仿真试题及答案

Matlab 与系统仿真试题及答案 一、填空题(每空2分,共30分) 1、单位取样序列定义为________________。 2、单位阶跃序列定义为__________________。 3、取样定理中,采样频率和原始信号频率之间至少应该满足公式_______________。 4、实现IIR 滤波器可以采用三种不同的结构:_______________、__________________和_______________。 5、对于理想的滤波特性()jw H e ,相应的()d h n 一般为无限时宽,从而使非因果的。为此,使显示一般通过如下公式__________实现加窗处理,相应的傅里叶表达形式为_________________。 6、设计IIR 滤波器的基础是设计模拟低通滤波器的原型,这些原型滤波器有:_________、________和______________低通滤波器。 7、实现FIR 滤波器可以采用以下4中结构: ________________,_______________,______________和____________。 二、阅读下列Matlab 程序,并回答完成的功能(每题5分,共10分) 1、f=[00.60.61]; m=[1100]; b=fir2(30,f,m); [h ,w]=freqz(b,1,128); Plot(f,m,w/pi,abs) 本段程序的功能是:

2、[b ,a]=butter(9,300/500,’high’); Freqz(b,a,128,1000) 本段程序的功能是: 三、用Matlab 语言编程实现下列各小题(每小题15分,共60分) 1、产生序列0.3,16p s A dB πΩ==55n -≤≤,并绘出离散图,标注图形标题为“Sequence in Example 3.1a”。 实现程序如下:

MATLAB试卷及答案

2013-2014学年第2学期期中考试试题课程名称《Matlab程序设计》任课教师签名 出题教师签名审题教师签名 考试方式(闭)卷适用专业智能科学与技术 考试时间(120 )分钟 一、填空题(12分,每空2分) 1.MATLAB是 matrix laboratory 的缩写。 2. input 函数用于向计算机输入一个参数。 3. disp 函数是窗口输出函数。 4.Matlab环境下的文件与其它系统一样,也有二类文件组成,一是文件, 又称M文件,另一类是数据文件。 5.清除变量命令是 clear 。 6. surf 命令用于绘制三维曲面图,各线条之间的补面用颜色填 充。 二、判断题(14分,每题2分) 1.使用MATLAB可以很容易地实现C或FORTRAN语言的几乎全部功能,包括 Windows图形用户界面的设计。T 2.如果省略延迟时间,直接使用pause,则将暂停程序,直到用户按任一 键后程序继续执行。T 3.input函数中,‘s’选项,则不允许用户输入一个字符串。F 4.cd 是改变目录命令。T 5.delete 是删除文件或对象命令。T 6.which 是寻找函数命令。T 7.等高线图可通过函数contour3绘制。T 三、简答题(24分,每题6分) 1.列举至少3种应用工具箱。 控制系统、信号处理、神经网络、金融 2.解释nargin和nargout的用法。 nargin:函数输入参数的个数 nargout:函数输出参数的个数 3.文件打开的格式Fid= fopen(filename,permission),filename为文件名,permission为文件格式,列举出至少6种格式。 ‘r’:以读出的形式打开文件,文件必须存在 ‘w’:以写入的形式代开文件,若文件不存在则自动创建 ‘a’:打开文件,在文件末尾添加数据 ‘r+’:以读出和写入的形式打开文件,文件已存在 ‘w+’:重新刷新写入 ‘A’:后续写入,无自动刷新功能 4.同时绘制正、余弦两条曲线Y 1 =SIN(X)和Y 2 =COS(X),写出其主要代码 四、编程题(50分,每题10分) 1.求[100,1000]以内的全部素数。 2.利用函数文件,实现直角坐标(x,y)与极坐标(γ,θ)之间的转换。 3.已知文件句柄为Fid,请写出完成下列操作的命令或命令序列 a 以读和写方式打开二进制格式数据文件 b 将浮点数F添加到文件尾部 c 将文件内容以浮点数格式读入数据向量B 4.用不同线型和颜色重新绘制正、余弦两条曲线Y 1 =SIN(X)和Y 2 =COS(X)。 5.在[–6 2]范围内用plot和fplot函数分别绘制二维曲线图y=sin(x)+x。

相关文档
相关文档 最新文档