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,并显示所有单元数据:为行向量, 为3阶魔方矩阵,为字符串。
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分)
1. 求极限。
解:syms x;
f=exp(1/x);
limit(f,x,0,‘left’);
ans=
0
2. 求函数的关于的导数。
解: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
4.求矩阵的特征值和特征向量。
解: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
5.解方程组:
解:A=[1,2,1;2,1,-1;-1,1,1];
b=[1,2,3];
x=A\b
x=
-3
4
-4
6.求积分
解: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],绘制函数
Z=
三维网格曲面图。
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.在同一图形窗口绘制函数
,,
并将图形标题定义为“三角函数”,在图形的右上角给出图例标注。
解:sym(x,y);
y1=sinx;
y2=cosx;
y3=y1+y3;
polt(x,y1,x,y2,x,y3)
title(‘三角函数‘);
legend(‘y1’,‘y2’,‘y3’,1)
2.编制一个函数shiti3。功能:如果调用时只提供一个输入变量,则求该输入变量的绝对值,如果有两个输入变量,则求两个变量的和。
解:function f=shiti3(x,y)
if nargin==1
f=abs(x);
elseif nargin==2
f=x+y
3.利用公式计算的近似值,直到最后一项绝对值小于。
解:
PI = 0;
i = 1;
while abs(1/i)>10^(-6)
PI = PI + 1/i;
i = -1*sign(i)*(abs(i)+2);
end
PI = 4*PI;
4.编函数计算函数 的值
x=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:盘下avar.mat文件中,应如何实现?若仅将指定的变量x、y和z保存到c:盘下变量文件mvar.mat中应如何实现?若仅将c:盘下mvar.mat文件中的变量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分)
答:全matlab考试题库及答案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) 答:A’(结果略去)
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 ];
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论