admin 管理员组

文章数量: 1184232


2024年3月8日发(作者:迪士尼官方网上商城)

Matlab试卷

学号 姓名

题号

分数

总分

一、写出下列语句或语句组的功能(2×5=10分)

1. help format

答:显示format函数的使用方法与功能。

2. ezplot('sin(t)','cos(t)')

答:绘制二维曲线,其中t的正弦函数值为X轴,t的余弦函数值为Y轴。

3. B={1:3,magic(3),'hello'}; celldisp(B)

答:建立1行3列单元矩阵B,并显示所有单元数据:B{1}1,2,3为行向量,816 为3阶魔方矩阵,B{3}'hello'为字符串。

B{2}457392

4. student=struct('ming','Qiang','gao',170, 'zhong',56)

答:构造描述学生的结构性数组,其中该学生姓名:强;身高:170;体重:56。

5. [X,Y]=meshgrid([-2:0.5:2]);mesh(X,Y)

答:向量组XY等于在-2到2的区间上以0.5的长度为间隔的向量组,以此生成二维网格曲线。

二、写出能完成指定功能的语句或语句组(3×6=18分)

e。 1. 求极限limx01x解:syms x;

f=exp(1/x);

limit(f,x,0,‘left’);

ans=

0

2. 求函数ye2x3t3的关于t的导数。

解:syms y x t;

f=exp(2x)-3t^3;

diff(f,t);

ans=

-9t^2

3.产生3阶魔方阵,并计算其行列式的值。

解:M=magic(3);

C=det(M)

如:

A= magic(3)

A =

8 1 6

3 5 7

4 9 2

det(A)

ans =

-360

1104.求矩阵A321的特征值和特征向量。

610解:A=[1,-1,0;-3,2,1;6,1,0];

[V,D]=eig(A,’nobance’)

V =

0.1588 0.2907 -0.3915

0.3956 -0.1909 0.7181

-0.9046 0.9376 -0.5754

D =

-1.4909 0 0

0 1.6566 0

0 0 2.8342

x2yz15.解方程组:2xyz2

xyz3解:A=[1,2,1;2,1,-1;-1,1,1];

b=[1,2,3];

x=Ab

x=

-3

4

-4

6.求积分xlnxdx

解:x=sym(‘x’);

f=x*Ln(x);

int(f)

ans=

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

三、

1.描述下列函数的功能(5×2=10分)

(1)

function y=average(x);

[m,n]=size(x);

if(~((m==1)|(n==1))|(m==1 & n==1))

error('Input must be a vector')

end

y=sum(x)/length(x);

解:y函数的功能是:对于输入的m行n列矩阵x,判断其是否为行向量或列向量,不是,输出一条错误提示“必须输入一个向量”;是,输出向量x的元素的平均值。

(2)

[X,Y]=meshgrid([-4:0.5:4])

Z=sqrt(X.^2+Y.^2)

meshz(Z);

答:在xy平面内选择区域[-4,4],绘制函数

22Z=xy

三维网格曲面图。

2.给下列程序加注释。写在%之后。(12分)

function shili01 %答:定义函数文件shili01。

x=-pi:0.05:pi; %答:-≤x≤。

y=sin(x); %答:y为x的正弦函数。

plot(x,y); %答:绘制分别以x横坐标、y为纵坐标的二维曲线。

xlabel('自变量X'); %答:x轴说明。

ylabel('函数值Y');

title('SIN( )函数曲线'); %答:函数曲线的图形名称。

grid on 答:加网格线。

四、写程序,完成指定任务(10×5=50分)

1.在同一图形窗口绘制函数

ysinx,ycosx,ysinxcosx

并将图形标题定义为“三角函数”,在图形的右上角给出图例标注。

解:sym(x,y);

y1=sinx;

y2=cosx;

y3=y1+y3;

polt(x,y1,x,y2,x,y3)

title(‘三角函数‘);

legend(‘y1’,‘y2’,‘y3’,1)

三角函数1.5y1y2y3

10.50-0.5-1-1.5

01234567

2.编制一个函数shiti3。功能:如果调用时只提供一个输入变量,则求该输入变量的绝对值,如果有两个输入变量,则求两个变量的和。

解:function f=shiti3(x,y)

if nargin==1

f=abs(x);

elseif nargin==2

f=x+y

3.利用公式解:

PI = 0;

i = 1;

1111计算的近似值,直到最后一项绝对值小于106。

4357while abs(1/i)>10^(-6)

PI = PI + 1/i;

i = -1*sign(i)*(abs(i)+2);

end

PI = 4*PI;

2x1,4.编函数计算函数

yex,x3,x00x1 的值

x1x=input(‘请输入X的值:’);

if x<=0

y=2*x+1;

elseif 0<x<=1

y=exp(x);

elseif x>1

y=sqart(x+3)

end

y

5.随机生成10个整数,求出其最大值和最小值。

x=round(rand(1,10);

f1=max(x);

f2= min(x);

end

disp(f1);

disp(f2)

1、在matlab环境下有6个变量a、b、c、x、y和z,现欲将这6个变量全部保存到c:盘下文件中,应如何实现?若仅将指定的变量x、y和z保存到c:盘下变量文件中应如何实现?若仅将c:盘下文件中的变量z加入到工作空间中应如何实现?(6分)

答:(1)save avar a b c x y z

(2)save c:avar x y z

(3)load c:avar z

2、现有5行7列的矩阵A,如何取出矩阵A中第2、3、4行的全部元素构造矩阵B?如何将矩阵A中的第3行和第4列的元素删除?(6分)

答:(1)B=A(2:4 , :);

(2)A(3:4 , :)=[];

3、如何将矩阵A的行数和列数分别保存到变量L和H中?如何生成向量1、3、5、……、97、99并保存到变量b中?(6分)

答:(1)[L , H] =size(A);

(2)b=1:2:99;

4、生成全0矩阵、全1矩阵和单位矩阵的函数分别是什么?(4分)

答:全0矩阵——zeros;全1矩阵——ones;单位矩阵——eye。

5、有矩阵A=[1,2,3;4,5,6]和矩阵B=[2,3,4;5,6,7],求A.*B的结果是多少?如何将4行6列的矩阵A转换成3行8列(8分)

答:(1)A=[1,2,3;4,5,6];B=[2,3,4;5,6,7]; A.*B (结果略去)

(2)reshape(A , 3 , 8) ;

6、如何计算矩阵A中值大于5的元素的个数?如何提取矩阵A中第2条对角线上的元素?矩阵A=[1,2,3;4,5,6],则A的转置矩阵?(9分)

答:k=find(A>5);

length(k); 答:triu(A , 2)

7、用求逆矩阵的方法求下面线性方程组 :(5分) 8、有两个矩阵A和B,如何实现并判断两个矩阵的性能好坏?(5分)

x+2y+3z=5 答:可通过使用矩阵的条件数来判断矩阵的性能好坏。分别求得矩阵A

x+4y+9z=-2 B的条件数cond(A)和cond(B),他们之中的条件数更接近于1的矩阵性

x+8y+27z=6 能就越好。

答:A=[1,2,3 ; 1,4,9 ; 1,8,27 ];

B=[ 5 , 2 , 6 ]’ ; x=inv(A)*B

9、如何将未知长度的字符串向量a反向排列?如何将一个字符串a的内容当成命令来执行?(6分)

答:(1)a(end : -1 : 1);

(2) 使用函数eval(a)

10、求向量a的最大值、最小值、各元素的和、各元素的乘积、平均值、中值和标准方差,并对向量a的各元素值按降序排列后保存到变量b中。(10分)

答:(1)最大值——max(a), 最小值——min(a),各元素的和——sum(a),各元素的乘积——prod(a),

平均值——mean(a),中值——median(a),标准方差——std(a)

(2)b=sort(a)

11、分别用直接法、LU分解法和QR分解法求下面线性方程组。(15分)

2x1+x2-5x3+x4=13

x1-5x2+7x4=-9

2x2+x3-x4=6

x1+6x2-x3-4x4=0

答:(1)直接法:A=[2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4]; B=[13,9,6,0]'; x= AB

(2)LU分解法:A=[2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4]; B=[13,9,6,0]'; [L,U]=lu(A);x=U(LB)

(3)QR分解法:A=[2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4]; B=[13,9,6,0]'; [Q,R]=qr(A); x=R(QB)

(结果略去)

12、建立5*6矩阵,要求输出矩阵第n行元素。当n值超过矩阵的行数时,

自动转为输出矩阵最后一行元素,并给出错信息。要求n值从键盘输入。(输入input、输出disp)(10分)

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

n=input('你想查看矩阵哪一行元素n=');

if n>=1 & n<=5

disp(A(n,:))

else

disp(A(5,:))

disp('行数已超过限制!!!')

end

13、在0至2π区间内绘制二维曲线sin(x)cos(x),并给出图形名称、x轴和y轴说明、图形说明以及图例。(10分)

答:x=linspace(0,2*pi,100);

答:A’(结

y=sin(x).*cos(x);

plot(x,y,'r:');

axis([0,2*pi,-0.6,0.6]);

xlabel('X轴');

ylabel('Y轴');

title('y=sinxcosx曲线图');

legend('曲线y');

text(pi/4,0.55,'波峰');

text(3*pi/4,-0.55,'波谷');

text(5*pi/4,0.55,'波峰');

text(7*pi/4,-0.55,'波谷');


本文标签: 矩阵 函数 元素 变量 向量