MATLAB复习题.docx

上传人:b****5 文档编号:7148057 上传时间:2023-01-21 格式:DOCX 页数:11 大小:120.53KB
下载 相关 举报
MATLAB复习题.docx_第1页
第1页 / 共11页
MATLAB复习题.docx_第2页
第2页 / 共11页
MATLAB复习题.docx_第3页
第3页 / 共11页
MATLAB复习题.docx_第4页
第4页 / 共11页
MATLAB复习题.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

MATLAB复习题.docx

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

MATLAB复习题.docx

MATLAB复习题

第一章MATLA概述

1、标点符号(;)可使命令行不显示运算结果,(%)用来表示该行是注释行。

(常用标点符号的功能见P9)

2、用“format”命令设置数据输出形式,(formatlong)将pi显示为3.14159265358979,(formatshorte)将pi显示3.1416e+000。

(format对于数值显示格式的控制见P11)

3、历史命令窗有何功能?

(P12)

4、在命令窗中使用命令显示当前目录(cd),并将当前目录设置为“A:

\exe”。

(cdA:

\exe)

、12

5、输入变量a=5.3,b,使用save命令将变量存入A:

\exe0101.mat文件。

34

>>a=5.3;

>>b=[12;34];

>>saveA:

\exe0101.matab

&将A:

\exe加入搜索路径中addpathA:

\exe

7、clear,clc,clf的功能

clear从内存中清除变量和函数;

clc清除命令窗口

clf清除当前图形窗口

8、下面说法正确吗?

MATLAB勺数值表达精度与其指令窗中的数据显示精度相同;MATLA指令窗中显示数值有效位不超过7位。

(P10)

数值的显示精度并不是数值的存储精度;有效位数可达16位。

第二章数值计算

1、下列变量名中_A__是合法变量。

变量的命名规则P31

A.char_1,i,j

B.x*y,a.1

C.x\y,a1234

D.end,1bcx

2、已知x为1个向量,计算其正弦函数的运算为。

A.SIN(X)

B.SIN(x)

C.sin(x)

D.sinx

3、已知x为1个向量,计算ln(x)的运算为B。

A.ln(x)

B.log(x)

C.Ln(x)

D.log10(x)

4、当a=2.4,使用取整函数得出3,则该取整函数名为__ceil__。

关于数组的基本函数P50

A.fix

B.round

C.ceil

D.floor

5、已知a=0:

4,b=1:

5,

下面的运算表达式出错的为_

D。

A.a+b

B.a./b

C.a'*b

D.a*b

1

2

3

&输入矩阵a

4

5

6.使用全下标方式a(1,3)

取出兀素3、使用单下标方式a(6)

7

8

9

取出元素“8”,用a([2,3],:

)取出后两行子矩阵块。

7、输入A为3*3的魔方阵,B为3*3的单位阵,由小矩阵构成3*6的大矩阵C和6*3的大矩阵D,将D矩阵的最后一行构成小矩阵E。

A=magic(3);B=eye(3);C=[AB];D=[A;B];E=D(end,:

)特殊矩阵的产生P34

8、求矩阵A的转置矩阵,逆矩阵,矩阵的秩,矩阵的行列式值,矩阵的三次幕,矩阵的特征值和特征向量。

A'inv(A);rank(A);det(A);AA3;[v,d]=eig(A)常用矩阵运算函数P44

9、求解方程组

2xi3x2x32x48

Xi3x2x6

XiX2X38x47

7x1x22x32x45

>>A=[2-312;1304;1-118;71-22];

>>b=[8;6;7;5];

>>x=A\b

矩阵运算分为左除和右除,各表示什么含义,见P47。

10、2个多项式为ax5x44x33x22x1,bx3x21,计算cxaxbx,并计算c(x)的根。

当x=2时,计算c(x)的值,将b(x)/a(x)进行部分分式展开。

>>a=[54321];b=[301];

>>c=conv(a,b)

>>roots(c)

>>polyval(c,2)

>>[r,p,k]=residue(b,a)关于多项式的常用函数参见P62-66

11、x在[0,20]范围内,计算多项式y5x44x33x22x1的值,并根据x和y进行二阶、三阶和四阶拟合。

>>x=0:

0.5:

20;

>>p=[54321];

>>y=polyval(p,x)

>>p1=polyfit(x,y,2)

>.p2=polyfit(x,y,3)

>.p3=polyfit(x,y,4)

第三章符号计算

1/(sin(t)+cos(w*t))w2*a+thetatheta2*i+a*jjz*exp(j*theta)z

2、已知表达式:

f1sin2x,g2x1,计算当x=1时f的值,计算f与g的复合函数,g的逆函数

>>f=sym('1-sin(xF2');g=sym(‘2*x+1')

>>subs(f,1)

>>pose(f,g)

>>finverse(g)

3、计算1*2+2*3+……+n*(n+1)的前3项的和符号级数P103symsum(k*(k+1),1,3)

4、符号函数:

fxy,分别对x进行定积分,y进行不定积分,对y定积分区间为(0,1).符号积分P102

>>f=sym(‘xA(-y)');

>>int(f)

>>int(f,'y',0,1)

5、求dyytanxcosx的通解。

符号常微分方程P109

dx

>>dsolve(‘Dy+y*tan(x)=cos(x)','x')

6利用符号绘图函数绘制图形fxsinxx,范围为[1,10]。

符号函数绘图指令P110

>>f=sym(‘sin(x)/x');

>>ezplot(f,[1,10])

第四章MATLA时算的可视化和GUI设计

1、常用的二维、三维绘图函数

2、图形句柄的概念,查询和设置的方法

3、GUI设计过程,以及常用的控件名称和含义。

22

4、zxexy,当x和y的取值范围均为-2到2时,用建立子窗口的方法在同一个图形窗口中绘制出三维线图、网线图、表面图和带渲染效果的表面图。

>>[x,y]=meshgrid([-2:

.2:

2]);

>>z=x.*exp(-x.A2-y.A2);

>>mesh(x,y,z)

>>subplot(2,2,1),plot3(x,y,z)

>>title('plot3(x,y,z)')

>>subplot(2,2,2),mesh(x,y,z)

>>title('mesh(x,y,z)')

>>subplot(2,2,3),surf(x,y,z)

>>title('surf(x,y,z)')

>>subplot(2,2,4),surf(x,y,z),shadinginterp

>>title('surf(x,y,z),shadinginterp')

5、建立三个输入窗口的输入对话框,如图所示

prompt={'输入姓名','输入年龄','输入职业'};title='信息登记';

lines=[111]';

def={'张平','30','教师'};

answer=inputdlg(prompt,title,lines,def);

第五章MATLABS序设计

1、命令文件和函数文件的区别。

2、输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输出其对应的大写字母;若为数字字符则输出其对应的数值,若为其他字符则原样输出

c=input('请输入一个字符','s');

ifc>='A'&c<='Z'disp(setstr(abs(c)+abs('a')-abs('A')));elseifc>='a'&c<='z'disp(setstr(abs(c)-abs('a')+abs('A')));

elseifc>='0'&c<='9'disp(abs(c)-abs('0'));

else

disp(c);

end

3、某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):

price<200没有折扣

200

500

1000

2500Wprice<500010%折扣

5000Wprice14%折扣

输入所售商品的价格,求其实际销售价格price=input('请输入商品价格');

switchfix(price/100)

case{0,1}%价格小于200

rate=0;

case{2,3,4}%价格大于等于200但小于500

rate=3/100;

casenum2cell(5:

9)%价格大于等于500但小于1000

rate=5/100;

casenum2cell(10:

24)%价格大于等于1000但小于2500

rate=8/100;

casenum2cell(25:

49)%价格大于等于2500但小于5000

rate=10/100;

otherwise%价格大于等于5000

rate=14/100;

end

price=price*(1-rate)%输出商品实际销售价格

4、一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。

输出全部水仙花数form=100:

999

m仁fix(m/100);%求m的百位数字

59

m2=rem(fix(m/10),10);%求m的十位数字

m3=rem(m,10);%求m的个位数字

ifm==m1*m1*m1+m2*m2*m2+m3*m3*m3

disp(m)

end

end

5、从键盘输入若干个数,当输入0时结束输入,求这些数的平均值和它们之和sum=0;

cnt=0;

val=input('Enteranumber(endin0):

');

while(val~=0)

sum=sum+val;

cnt=cnt+1;

val=input('Enteranumber(endin0):

');

end

if(cnt>0)

sum

mean=sum/cnt

end

6、求[100,200]之间第一个能被21整除的整数

forn=100:

200

ifrem(n,21)~=0

continue

end

break

end

n

7、若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6是完数。

求[1,500]之间的全部完数

form=1:

500

s=0;

fork=1:

m/2

ifrem(m,k)==0

s=s+k;

end

endifm==sdisp(m);

end

end

8、利用函数的递归调用,求n!

functionf=exam5_14(n)ifn<=1f=1;

elsef=exam5_14(n-1)*n;%递归调用求(n-1)!

end

9、nargin用法示例函数文件examp.m:

functionfout=charray(a,b,c)ifnargin==1fout=a;

elseifnargin==2fout=a+b;

elseifnargin==3fout=(a*b*c)/2;

end

命令文件exam5_15.m:

x=[1:

3];

y=[1;2;3];examp(x)examp(x,y')examp(x,y,3)

10

10、编写M却本,分别使用for和while循环语句计算sumi1的程序

i1sum=0;

forn=1:

10

sum=n5+sum;

end

sumn=1;sum=0;whilen<=10

sum=n5+sum;n=n+1;

end

11、编制一个解数论问题的函数文件:

取任意整数,若是偶数,则除以2,否则乘3加1,

重复此过程,直到整数变为1。

functionc=collatz(n)

%Collatz

%Classic"3n+1"Plobremfromnumbertheory

c=n;

whilen>1

ifrem(n,2)==0

n=n/2;

else

n=3*n+1;

end

c=[cn];

end

12、编写M脚本文件,要求从键盘逐个输入数值(input),然后判断输入的数是大于0还是

小于0,并输出提示(disp)是正数,还是负数,同时记录输入的正数、负数的个数。

当输入0时,中止M文件的运行;当输入第10个数字时,显示记录的正、负个数并终止程序。

n=1;n1=0;n2=0;

whilen<=10

a=input('请输入数据');

ifa>0

disp('正数')

n1=n1+1;

elseifa<0

disp('负数')

n2=n2+1;

else

break;

end

end

n=n+1;enddisp('正数')n1disp('负数')n2

13、编写M函数文件,实现分段绘制曲面,绘制每个曲线为1个子函数

0.75y23.75x21.5x

0.5457exy1

22

zx,y0.7575ey6x1xy1

0.75y23.75x21.5x

0.5457exy1

functionex0306()x=-2:

0.1:

2;

y=-2:

0.1:

2;

[xx,yy]=meshgrid(x,y);

[n1,m1]=size(xx);

z=zeros(n1,m1);

forn=1:

n1

form=1:

m1

ifxx(n,m)+yy(n,m)>1

z(n,m)=z1(xx(n,m),yy(n,m));

elseif(xx(n,m)+yy(n,m)>-1)&(xx(n,m)+yy(n,m)<1)z(n,m)=z2(xx(n,m),yy(n,m));

elseifxx(n,m)+yy(n,m)<-1

z(n,m)=z3(xx(n,m),yy(n,m));

end

end

endsurf(xx,yy,z)functionz=z1(x,y)

z=0.5457*exp(-0.75*yA2-3.75*xA2-1.5*x);functionz=z2(x,y)

z=0.7575*exp(-yA2-6*xA2);

functionz=z3(x,y)

z=0.5457*exp(-0.75*yA2-3.75*xA2+1.5*x);

14、根据输入参数个数实现当没有输入参数时,显示信息;当有一个参数时,则以该参数为边长绘制正方形;当有两个参数时,以2个参数为长和宽绘制矩形。

functionex0307(varargin)ifnargin==0

disp('无输入参数');

elseifnargin==1

r=varargin{1};

x=[00rr];

y=[0rr0];

plot(x,y)

elseifnargin==2

r1=varargin{1};

r2=varargin{2};x=[00r1r1];

y=[0r2r20];

plot(x,y)end

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

当前位置:首页 > 高等教育 > 其它

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

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