MATLAB综合练习题.docx

上传人:b****7 文档编号:9412006 上传时间:2023-02-04 格式:DOCX 页数:23 大小:115.94KB
下载 相关 举报
MATLAB综合练习题.docx_第1页
第1页 / 共23页
MATLAB综合练习题.docx_第2页
第2页 / 共23页
MATLAB综合练习题.docx_第3页
第3页 / 共23页
MATLAB综合练习题.docx_第4页
第4页 / 共23页
MATLAB综合练习题.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

MATLAB综合练习题.docx

《MATLAB综合练习题.docx》由会员分享,可在线阅读,更多相关《MATLAB综合练习题.docx(23页珍藏版)》请在冰豆网上搜索。

MATLAB综合练习题.docx

MATLAB综合练习题

一、填空题

1、在MATLAB中,清除所有变量的命令为____________。

2、在MATLAB中,保存和载入数据分别使用命令____________、____________。

3、矩阵

的条件数记为___________,定义为___________。

4、在MATLAB中,对图形窗口进行灵活分割的命令为____________,对函数自适应采样的绘图函数为___________,绘制三维曲面的函数为____________、____________。

5、在MATLAB中,求矩阵特征值及对应的特征向量的命令为___________。

6、

=,A.*B=。

7、在MATLAB中,zeros(1,3)=,ones(1,2)=。

8、给定

个点可以唯一确定一个

阶多项式,在MATLAB中,利用命令_________可以确定多项式的系数,对多项式求导的命令为____________。

9、在MATLAB中,使用命令____________可做线性插值。

10、在MATLAB中,输入命令:

sum([215;985]),输出结果:

ans=。

11、在MATLAB中,画二维图形的常用函数为____________,画三维图形常用函数为__________、___________、_______________。

12、在MATLAB中,求矩阵

的逆矩阵可用命令__________。

13、

=,A.^2=。

14、在MATLAB中,可以用命令计算多项式的值,用命令求多项式的根。

15、将区间

三等分,步长为

,各个节点的函数值为

,则3/8辛普森法的公式为。

1/3辛普森法的公式为。

 

16、在MATLAB中,数据输出时可以用命令_________改变数据输出格式。

17、在MATLAB的工具箱中,求定积分的函数为____________、____________、____________。

18、在MATLAB中,函数文件的基本结构为:

____________输出形参表=函数名(输入形参表)

注释说明部分

函数体语句

19、在MATLAB中,求向量或矩阵范数的函数为。

20、在MATLAB中,eye(3,3)=。

二、选择题

1、在MATLAB中,列出当前工作空间变量名的函数是

(A)who(s)(B)clc(C)path(D)draw

2、在MATLAB中,图形窗口色图的设置和改变需调用函数

(A)color(B)colormap(C)plot(D)change

3、在MATLAB中,求齐次线性方程组

的基础解系可直接调用函数

(A)numl(B)solve(C)null(D)polyfit

4、在MATLAB中,不能画三维图形的函数为

(A)text(B)mesh(C)surf(D)plot3

5、MATLAB中M文件的分类为

(A)脚本文件、命令文件(B)仅有脚本文件

(C)仅有函数文件(D)函数文件、命令文件

6、MATLAB中生成平面网格坐标矩阵的函数为

(A)meshgrid(B)gridmesh(C)subplot(D)sub

7、给定

个点可唯一确定一个

次多项式,需调用的命令

(A)poly(x,y,n)(B)polyfit(x,y,n)(C)polyfit(n)(D)poly(n)

8、MATLAB中‘legend’函数的功能为

(A)给图形加标题(B)在指定位置给图形加注释

(C)给图形变色(D)给图形添加图例

9、已知

,则在MATLAB中调用命令A(3)的结果为

(A)3(B)2(C)无结果(D)7

10、MATLAB中调用命令[L,U,P]=lu(A)后,矩阵A满足

(A)

(B)

(C)

(D)

11、MATLAB中调用命令v=eye(2,1)后的结果为

(A)v=[1;0](B)v=[1,0](C)v=[0;1](D)v=[1,0;0,1]

12、MATLAB中计算积分

,则下列程序中的空格处应填的命令是

symt ;f=3/((t-1)^2*(t-2));F=_____________,y=double(F)

(A)(f,t,2,6)(B)qad(f,t,2,6)(C)int(t,2,6)(D)int(f,t,2,6)

13、如果在MATLAB的命令窗口输入命令a=input('a=?

'),出来的结果为

(A)a=?

(B)没有任何显示(C)a=(D)’a=?

14、’try’语句为MATLAB所特有的试探性语句,下面的程序MATLAB能执行吗,执行的命令为A=[1,2,3;4,5,6];B=[7,8,9;10,11,12];tryC=A*B;catchC=A.*B;end

(A)不执行(B)执行的是’catch’后的命令

(C)执行,但没有结果(D)执行的是’try’后的命令

15、MATLAB中与linspace(3,7,11)等价的命令为

(A)3:

7(B)3:

0.4:

7(C)3:

4/11:

7(D)3:

7/10:

7

16、对于下面的程序,在MATLAB中运行后f的形式为

a=0;b=3*pi;n=1000;h=(b-a)/n;x=a:

h:

b;f=exp(-0.5*x).*sin(x+pi/6)

(A)数(B)矩阵(C)向量(D)没有结果

17、已知

,MATLAB中若想由x生成矩阵

可调用命令

(A)A=[x,x.^2,x.^3](B)A=[x,x^2,x^3](C)A=[x;x^2;x^3](D)A=[x;x.^2;x.^3]

18、已知数据点为x=-6:

6,y=sin(x),x0=-6 :

0.25 :

6,过

做分段三次样条插值,并求该多项式再x0处的函数值,在MATLAB中应使用的命令是

(A)interp1(x,y,x0,’pchip’)(B)interp1(x,y,x0,pchip)

(C)interp1(x,y,x0,’spline’)(D)interp1(x,y,x0,’cubic’)

19、下面命令中不能求解线性方程组

的命令是

(A)A/b(B)A\b(C)inv(A)*b(D)A^(-1)*b

20、MATLAB中命令exp

(1)的结果为

(A)0(B)1(C)e(D)inf

21、MATLAB中命令sum([412;036])的结果为

(A)16(B)448(C)79(D)程序出错,没有结果

22、MATLAB中生成希尔伯特矩阵的函数为

(A)invhilb(n)(B)company(n)(C)eye(n)(D)hilb(n)

23、MATLAB中给变量w赋空矩阵的语句为

(A)w=zeros()(B)w=[](C)w=zeros(0,0)(D)clearw

24、在MATLAB中,如需查询一个函数的基本用法,命令为

(A)help(B)version(C)demo(D)path

25、A=[121;223;500],则MATLAB中求A的逆矩阵的命令为

(A)det(A)(B)uv(A)(C)A*(-1)(D)inv(A)

26、b=[5,23,7,2,3,6,0],要把b向量的元素按从小到大的顺序排列,MATLAB中用的命令为

(A)sort(B)put(C)fprintf(D)mesh

27、已知A=[40],MATLAB中C=[A,ones(size(A))]为

(A)4011(B)4010(C)4000(D)4040

28、在MATLAB中,列出当前工作空间变量名的函数是

(A)path(B)clc(C)who(s)(D)draw

29、计算矩阵、向量范数的命令为

(A)length(B)norm(C)size(D)anorm

30、MATLAB对图形窗口进行灵活分割的命令为

(A)plot(B)subplot(C)aplot(D)ploval

31、MATLAB中生成一个2行4列的单位矩阵的命令为

(A)eye(2,4)(B)eye(2,2)(C)eye

(2)(D)zeros

32、已知x=[4,2,],求以x为根的多项式的语句是

(A)x=[4,2,];polval(x)(B)x=[4,2,];poly(x)

(C)p=roots(x);poly(p)(D)x=[4,2,];roots(x)

33、在MATLAB中,清除所有变量的命令为

(A)clear(B)clc(C)delete(D)holdoff

34、命令floor(3.4)及ceil(3.4)的值为多少

(A)34(B)44(C)33(D)43

35、在MATLAB中,打开示例程序的命令为

(A)demo(B)help(C)clear(D)plot

36、MATLAB中保持图形窗口不关闭的命令为

(A)alter(B)holdon(C)holdoff(D)cd

37、在MATLAB中,强行终止程序运行的命令为

(A)ctrl+v(B)ctrl+shift(C)ctrl+c(D)shift+c

38、

,则A.*B=

(A)运算不执行,因有错(B)683(C)574(D)663

39、双纵坐标函数为

(A)plot(B)yplotty(C)plot3(D)plotty

40、已知数据点为x=[1,1.4,1.6,1.8,2.0]',y=[3.75,3.99,2.07,1.52,4.22]',拟合一条过这些点的3次曲线,应使用的命令是

(A)polyfit(x,y)(B)polyfit

(2)(C)polyfit(x,y,1)(D)polyfit(x,y,3)

41、MATLAB中表示无穷的符号是

(A)

(B)int(C)inf(D)+in

42、MATLAB中给图形加网格线的命令为

(A)gridoff(B)holdon(C)boxon(D)gridon

43、MATLAB中程序A=[123;-121;352];B=[346;589;453];C=(B>1)&(B<7),运行后结果为

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

(C)无结果(D)C=[0,1,0;1,0,0;1,1,1]

44、MATLAB中生成一个从0到20的等差为0.5的数列应使用的命令为

(A)x=linspace(0,20)(B)x=0:

20(C)x=linspace(0,20,41)(D)x=linspace(0,20,0.5)

45、积分区间被等分为奇数个小区间时,合理使用1/3辛普森法和3/8辛普森法的是

(A)只用3/8辛普森法

(B)1/3辛普森法和3/8辛普森法都不能使用,用cotes方法

(C)前三个区间用3/8辛普森法,剩下的区间用1/3辛普森法(D)只用1/3辛普森法

46、MATLAB中c=[1234],要得到c的转置向量所用命令为

(A)b=c’(B)b=[1,2,3,4](C)b=inv(c)(D)b==c

47、MATLAB中计算积分

,则下列程序中的空格处应填的命令是

symt ;f=5/((t-1)*(t-2)*(t-3));F=_____________,y=double(F)

(A)(f,t,4,5)(B)qad(f,t,4,5)(C)int(t,4,5)(D)int(f,t,4,5)

48、MATLAB表示圆周率的符号是

(A)

(B)int(C)pi(D)没有符号可表示

49、MATLAB中a=[1,3,2],则b=a.^2的结果为

(A)b=[1,6,4](B)b=[1,9,4](C)b=[2,6,4](D)执行出错,无结果

50、求解

在x=1附近的根的错误的语句为

(A)fzero('x^3-3*x+1=0',1)(B)fzero('x^3-3*x+1',1)

(C)fzero('x^3-3*x+1=0',[1,2])(D)P=[1,-3,1];roots(p)

三、1.阅读下述MATLAB脚本程序

A=[3579;0241;6448];

B=ones(3,3);

b=A([12],2:

3);

B(4,4)=5;

A([1,2],:

)=[];

C=[A;B(:

1:

3)'];

D=reshape(C,2,8);

写出b、A、B、C、D的结果。

2.用MATLAB编写函数,计算

,函数的输入参数为x,输出参数为f,函数名为fun。

functionf=fun(x)

x=input('请输入x的值:

');

ifx<1&x>=0

y=x;

elseifx<2&x>=1

y=2-x;

else

y=0;

end

y

3.用如下迭代公式求

,迭代的终止条件为

迭代初值

迭代次数不超过100次。

分别对迭代结果和准确

值进行比较,并统计迭代次数。

迭代公式:

试对此迭代问题编写M函数文件。

function[x,n]=sqrt_a(a)

x=1.0;

fork=1:

100

m=x;

x=x/2+a/(2*x);

ifabs(x-m)<=10^(-5)

break

end

end

x;

n=k;

s=(x-sqrt(a));

ifabs(s)<=10^(-5)

disp('正确');

else

disp('错误');

end

3.阅读一绘制地形图的程序,写出所标出的语句的功能。

fid=fopen('F:

\work\dengzhixian.txt','r');__打开数据文件_

data=fscanf(fid,'%f%f%f',[3,inf]);_从文件中读取数据_

data=data';

fclose(fid);____关闭文件____

x=data(:

1);

y=data(:

2);

z=data(:

3);

xb=min(x);

xe=max(x);

yb=min(y);

ye=max(y);

Xl=linspace(xb,xe,200);___将区间离散化_

Yl=linspace(yb,ye,200);

[X,Y]=meshgrid(Xl,Yl);_生成二维网格数据__

method='cubic';

Z=griddata(x,y,z,X,Y,method);__曲面拟合插值计算_

figure;___打开一个窗口__

holdon;___保持打开的图形窗口_

contour(X,Y,Z);__绘制等高线图形__

colormapcool;__设定图形色彩_

boxon;___对坐标系的右边和上边加边框__

xlabel('x');_坐标横轴添加标签为x轴__

ylabel('y');

axisequal;__坐标轴的长度单位设成相等__

title('等值线图:

(单位:

scale)');__添加标题_

holdoff_关闭图形保持__

4阅读下述MATLAB脚本程序

A=[3579;0241;6448];

B=ones(3,3);

b=A([12],2:

3);

B(4,4)=5;

A([1,2],:

)=[]

C=[A;B(:

1:

3)'];

D=reshape(C,2,8);

写出b、A、B、C、D的结果。

答案:

b=[57;24]

A=[6448]

B=1110

1110

1110

0005

C=6448

1110

1110

1110

D=61414180

11111100

5.下面的函数完成什么功能?

functionf=factor(n)

ifn<=1

f=1;

else

f=factor(n-1)*n;

end

6.下面的程序完成功能是什么?

t=0:

pi/50:

4*pi;

y0=exp(-t/3);

y=exp(-t/3).*sin(3*t);

plot(t,y,'-r',t,y0,':

b')

xlabel('t');

ylabel('y');

gridon;

答:

绘制两条曲线,第1条是蓝色的虚线;第2条是红色的实线。

给坐标轴添加标签。

 

7.下面的函数主要完成什么功能?

a=0;

i=1;

while(a<100000)

a=a+pow2(i);

i=i+1;

end

m=i-1

答:

求满足下式的最小m值

8.编写一个函数,计算下面函数的值,给出x的值,调用该函数后,

返回y的值。

functiony=fun(x)

x=input('请输入x的值:

');

ifx<=0

y=sin(x);

elseifx<=3&x>0

y=x;

else

y=-x+6;

end

y

 

9.用如下迭代公式求

,迭代的终止条件为

迭代初值

迭代次数不超过200次。

分别对迭代结果和准确

值进行比较,并统计迭代次数。

迭代公式:

试对此迭代问题编写M函数文件。

function[x,n]=sqrt_a(a)

x=1.5;

fork=1:

200

m=x;

x=x/2+a/(2*x);

ifabs(x-m)<=10^(-8)

break

end

end

x;

n=k;

s=(x-sqrt(a));

ifabs(s)<=10^(-8)

disp('正确');

else

disp('错误');

end

10以下为对一水准网进行间接平差的程序,试阅读并填写所标出的

语句的功能。

functionshuizhunjjpc()__函数定义行_

disp('水准网间接平差示例')

disp('已知高程')___提示输入已知高程_

Ha=5.015

Hb=6.016

disp('观测高差')

L=[1.359;2.009;0.363;1.012;0.657;-0.357]

fid=fopen(‘E:

\szjj.txt’,‘r’)__打开数据文件_

temp=fscanf(fid,‘%f%f%f%f’,[4,6])__从文件中读取数据_

fclose(fid);__关闭数据文件_

temp=temp‘;

B=temp(:

[1,2]);_读取矩阵的第1、2列_

l=temp(:

3);

S=temp(:

4);__读取矩阵的第4列__

S=S’;

disp(‘C是单位线路公里数,S是线路长度')

C=ones(1,6)__生成1行6列全1阵_

P=C./S;_计算2个向量的点除_

P=diag(P)__计算观测值的权阵_

disp(‘参数的解’)

x=inv(B'*P*B)*B'*P*l__解算法方程_

disp('误差V(mm),各待定点的高程平差值L1(m)')

V=B*x-l_计算观测值的改正数向量_

LP=L+V/1000_计算观测值的平差值__

disp('精度评定')

n=6;_输入观测值个数_

t=2;

delta=sqrt(V'*P*V/(n–t))__计算验后单位权中误差_

 

四、已知多项式

,编写脚本程序计算:

1)多项式a(x)+b(x)

2)多项式a(x)*b(x)。

3)多项式a(x)的根。

五、用MATLAB编写函数,计算

,函数的输入参数为x,输出参数为f,函数名为fun。

六、编程求

的值,要求:

(1)使用循环语句编程,但不能使用数组运算符和sum;

(2)使用数组运算符和sum编程,不能使用循环结构。

7、已知超定方程组

写出用Matlab中语言求解上述线性方程组的程序。

八、Hilbert矩阵是非常著名的病态矩阵,写出其定义,并编出Matlab程序求

的Hilbert矩阵的条件数、行列式。

九、数值求解定积分时,当积分区间被等分为奇数个小区间时,如何合理使用1/3辛普森法和3/8辛普森法。

十、写出将矩阵

进行LU分解,并求出该矩阵的行列式的语句

x=-5:

5;y=1./(1+x.^2);

t=-5:

0.05:

5;

y1=1./(1+t.^2);

n=length(t);

fori=1:

n

z=t(i);s=0;

for

Lk=1;

u=x(k);

for

if

Lk=Lk*(z-x(j))/(u-x(j));

end

end

;

end

y2(i)=s;

end

plot(x,y,'ko',t,y1,t,y2,'r')

十一、写出

个插值节点

的Lagrange插值多项式的公式,并将下面的Lagrange插值多项式的Matlab实现程序补充完整。

(每空3分,共15分)

Lagrange插值多项式

公式:

 

十二、已知

的表达式

,当

时,求

的值,请补充完整。

n=100;i=1:

n;

f=;y=

十三、

是数据点的横坐标数组,

是拟合数据点

的多项式,

是一个矩阵,它的第

行即为

的幂系数,请补充完整。

functionp=shape_pw(x)

np=length(x);

forj=1:

np

y=zeros(1,np);y(j)=1;

p(j,:

)=;

end

十四、下面的程序是解线性方程组的一个函数文件,请补充完整。

function[x,y]=line_solution(A,b)

[m,n]=size(A);y=[];

ifnorm(b)>0

ifrank(A)==rank([A,b])

ifrank(A)==

x=A\b;

else

disp('原方程组有有无穷个解,其齐次方程组的基础解系为y,特解为x');

y=null(A,'

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1