MATLAB平时练习题附答案Word文件下载.docx

上传人:b****6 文档编号:21680482 上传时间:2023-01-31 格式:DOCX 页数:39 大小:118.94KB
下载 相关 举报
MATLAB平时练习题附答案Word文件下载.docx_第1页
第1页 / 共39页
MATLAB平时练习题附答案Word文件下载.docx_第2页
第2页 / 共39页
MATLAB平时练习题附答案Word文件下载.docx_第3页
第3页 / 共39页
MATLAB平时练习题附答案Word文件下载.docx_第4页
第4页 / 共39页
MATLAB平时练习题附答案Word文件下载.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

MATLAB平时练习题附答案Word文件下载.docx

《MATLAB平时练习题附答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《MATLAB平时练习题附答案Word文件下载.docx(39页珍藏版)》请在冰豆网上搜索。

MATLAB平时练习题附答案Word文件下载.docx

3.将数据采用excel形式(*.xls)存储,如何导入MATLAB?

导入后在

命令窗口中有该数据的结果没有?

将存放数据的excel文件存放在matlab/work目录下,如起名为aa,导入的时候键入:

x=xlsread('

aa.xls'

'

sheet1'

)。

即可,其中sheet1是存放数据的表单。

在Workspace,点击aa,将显示表格数据内容。

4.你知道几种数据矩阵的建立方式?

请简述并举例。

不规则矩阵可直接在命令窗口输入>

>

X=[135;

7911;

368]

X=135

7911

368

规则矩阵的创建

增量矩阵创建方式,一般格式为X=(First:

Increment:

Last)

X=(0:

2:

10)

X=

0246810

5.在命令窗口中输入“a=[2222]”,请问:

1)可以用“a”直接表示多项式吗?

若能,请写出该多项式的数学表达式.

能,

2)如果输入命令poly(a),则表示什么意思?

是求取矩阵特征多项式系数的函数

3)写出将第2)问的多项式转换成自变量为“x”的符号形式的完整命令。

poly2sym(a,'

x'

ans=

2*x^3+2*x^2+2*x+2

6.M文件的基本结构是什么?

各结构部分起什么作用?

1、函数声明行

2、H1行%帮助文字的第一行,给出M文件帮助最关键的信息

3、帮助文字%对M文件更为详尽的说明

4、M文件正文%所实现的功能部分

5、注释部分%

7.subplot(3,3,[26])表示什么意思?

画出该分块图在整个句柄图像中的位置示意图。

形式:

subplot(m,n,p)或者subplot(mnp)。

说明:

P也可以是向量表示将P 

中指定的小块合并成一个大块创建坐标系,P中指定的小块可以不连续,甚至不相连。

比如subplot(2,3,[25])表示将第2和5小块连成一个大块;

subplot(2,3,[26])由于2和6不连续也不相连,此时表示将第2、3、5和6四块连成一个大块,相当于subplot(2,3,[2356])

8.现有下列脚本程序,请解释该程序的作用。

x=[515253520];

x=

515253520

ee=[20-212^2sqrt(4)];

ee=

20-2142

subplot(222)

pie(x,ee)

9.简述MATLAB历史指令窗的主要作用。

10.简述空数组的功用。

11.简述MATLAB函数的基本结构。

12.简述绘制二维图形的一般步骤。

四阅读程序指令

13.写出下列指令的运行结果。

a=zeros(3,3)

a=

000

a(3,4)=5^2

0000

00025

a(6)=100

0100025

a(:

3)

0

:

size(a)

34

14.写出下列指令的运行结果。

A=1:

7.5

A=

1357

B=1:

4

B=

1234

C=[B;

A]

C=

D=fliplr(C)

D=

4321

7531

E=sort(D)

E=

15.写出下列指令的运行结果。

X=[2,0;

2,4];

Y=[-1-4;

10];

A=2;

都有有“;

”符号,所以不以显示

X.*Y

-20

20

X*Y

-2-8

2-8

X.*A

40

48

16.写出下列指令的运行结果。

a=eye(4);

b=pascal(4)

b=

1111

13610

141020

tril(b,0)

1000

1200

1360

a<

b

0111

a=b

17.写出下列指令的运行结果。

a=[52-6;

678;

12108;

204030];

median(a)

9.00008.50008.0000

cumsum(a)

52-6

1192

231910

435940

diff(a,2)

5-2-14

22722

18.下列指令表示建立了什么数组?

每一数组各由什么组成(用数学上的矩阵形式表示出来)?

t0{1,1}=[345660];

t1{1,2}={'

okok'

wo'

};

t2{2,1}='

wehaveatest'

;

t3{2,2}=[3*8+2];

19.现有下列脚本程序,请分析该“for”循环执行情况并写出该程序运行结果。

form=1:

3

forn=1:

H(m,n)=m^2+n

end

end

生成三行三列的数组,

m=1,n=1,2,3时,依次生成H=[234]

m=2,n=1,2,3时,依次生成H=[234;

567]

最后结果

H=

234

567

101112

20.写出下列指令的运行结果

f=sym('

2*x^3+x+20'

f=

2*x^3+x+20

p=sym2poly(f)

p=

20120

f1=poly2sym(p,’y’)

f1=

2*y^3+y+20

21.编写一个脚本程序实现:

在同一图上分别用红色虚线和绿色点划线绘制函数y1=sinx和y2=x2+2x-1在区间[-10,10]的曲线,标题为“用作图法求两条函数曲线的交点”,x轴为“自变量x”,y轴为“函数y1、y2的曲线”,并给出图例“‘y1=sinx’,‘y2=x2+2x-1’”。

x=-10:

1:

10;

y1=sin(x);

y2=x.^2+2*x-1;

plot(x,y1,'

r--'

);

holdon

plot(x,y2,'

c-.'

xlabel('

自变量x'

ylabel('

函数y1、y2的曲线'

title('

用作图法求两条函数曲线的交点'

legend('

y1=sin(x)'

x^2+2x-1'

五、阅读程序并回答问题

1、写出下列指令运行结果。

A=zeros(2,4);

A(:

)=1:

8;

s=[235];

A(s)

Sa=[102030]’

A(s)=Sa

2、写出下列指令运行结果。

A=reshape(1:

16,2,8)

reshape(A,4,4)

s=[13689111416];

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、下面的函数主要完成什么功能?

functionf=factor(n)

ifn<

=1

f=1;

else

f=factor(n-1)*n;

5、写出下列指令运行结果。

ch=‘ABc123d4e56Fg9’;

subch=ch(1:

5)

revch=ch(end:

-1:

1)

k=find(ch>

=‘a’&

ch<

=‘z’);

ch(k)=ch(k)-(‘a’-‘A’);

char(ch)

6、写出下列指令运行结果。

A(1,1)={'

thisiscell'

A{1,2}={[123;

456]};

A{2,1}=[1+2*i];

A{2,2}=A{1,2}{1}+(A{1,2}{1}(1,1)+A{1,2}{1}(2,2));

celldisp(A)

7、下面的程序完成功能是什么?

t=0:

pi/50:

4*pi;

y0=exp(-t/3);

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

plot(t,y,'

-r'

t,y0,'

:

b'

t,-y0,'

xlabel(‘\bf\itt’);

ylabel(‘\bf\ity’);

gridon;

四、编程题

1、1、在同一图上分别用红色实线和绿色虚线绘制y1=sin(x)和y2=cos(x)在区间[0,4*pi]的曲线,并用星号*标出两条曲线的交点以及建立图例。

2、分别在同一图形窗的不同子图绘制y=sin(t)sin(9t)和y=sin(t)sin(9t)及其包络线。

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

price<

200没有折扣

200≤price<

5003%折扣

500≤price<

10005%折扣

1000≤price<

25008%折扣

2500≤price<

500010%折扣

5000≤price14%折扣

输入所售商品的价格,求其实际销售价格。

4、编写程序实现f(n)=f(n-1)+f(n-2)(f

(1)=1和f

(2)=2)函数。

5、编写一个学生成绩管理的程序

A.构造一个学生结构,包括学生的学号,姓名,课程名称(限五门),考试成绩和平均值等域;

B.从键盘上,连续输入N个学生的情况,分别将这些学生的情况填入到相应的域,若域中没有值即为空或0并计算平均成绩写入到平均值域。

C.根据平均值排序,并输出学生的姓名、学号和平均成绩。

参考答案

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工作空间中保存的变量。

二、简答题

历史指令窗记录着用户在MATLAB指令窗中所输入过的所有指令。

历史记录

包括:

每次开启MATLAB的时间,每次开启MATLAB后在指令窗中运行过

的所有指令。

应用功能有单行或多行指令的复制和运行、生成M文件等。

“空”数组的功用:

在没有“空”数组参与的运算时,计算结果中的“空”

可以合理地解释“所得结果的含义”;

运用“空”数组对其他非空数组赋值,

可以改变数组的大小,但不能改变数组的维数。

典型M函数文件的结构:

函数申明(定义)行(Functiondeclarationline)、

H1行(Thefirsthelptextline)、在线帮助文本(Helptext)区、编写和修改记录、

函数体(Functionbody)。

绘制二维图形的一般步骤为:

曲线数据准备、选定图形窗及子图位置、调用二维曲线绘图指令、设置轴的范围、坐标分格线、图形注释、图形的精细操作。

三、阅读程序并回答问题

A(:

Sa=[102030]'

235

Sa=

10

20

30

120307

10468

13579111315

246810121416

15913

261014

371115

481216

0057001315

2400101200

2,1];

-1-4

64

30

5-2

36

912

-3-6

63

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

length(k)

subch=

ABc12

revch=

9gF65e4d321cBA

ABC123D4E56FG9

A{1,1}=

thisiscell

A{2,1}=

1.0000+2.0000i

A{1,2}{1}=

123

456

A{2,2}=

789

101112

7、在同一个图中绘制两个函数,这两个函数分别是:

y=e(-t/3)

y0=e(-t/3)*sin(3t)

其中y是用红色的细实线,而y0是用兰色的虚线绘制,t的区间是(0:

4),

t的步长为/50,t轴和y轴分别用斜粗题指示,图中有网格表示。

1、答案

clf

x=0:

pi/200:

2*pi;

y2=cos(x);

zz=x(find(abs(y1-y2)<

0.005))

z=min(zz)

r-'

x,y2,'

g-.'

plot(zz,sin(zz),'

*'

sin'

cos'

2、答案

t=(0:

pi/100:

pi)'

y1=sin(t)*[1,-1];

y2=sin(t).*sin(9*t);

t3=pi*(0:

9)/9;

y3=sin(t3).*sin(9*t3);

subplot(1,2,1)

plot(t,y1,'

r:

'

t,y2,'

t3,y3,'

bo'

subplot(1,2,2)

plot(t,y2,'

axis([0,pi,-1,1])

3、答案

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;

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

4、答案

functionf=fab(n)

if(n==1)

f=1;

elseif(n==2)

f=2;

else

f=fab(n-1)+fab(n-2);

5、答案

str1='

str2='

str3='

val=cell(5,2)

a=zeros(5,1);

ave=0;

student=struct('

Name'

str1,'

No'

str2,'

Scores'

val,'

Ave'

ave);

n=input('

pleaseinputstudentsnumber:

fori=1:

n

str1=input('

Name:

str2=input('

No.:

%fork=1:

2

%val(k,:

)=input('

CurriculumsandScores:

%a(k,1)=val{k,2};

%end

%val(1,:

Curriculum:

%val(:

2)=input('

Scores:

val=input('

pleaseinputfiveCurriculumsandScores:

fork=1:

5

a(k,1)=val{k,2};

student(i).Name=str1;

student(i).No=str2;

student(i).Scores=val;

student(i).Ave=mean(a);

end

forii=1:

(length(student)-1)

iptr=ii;

forjj=ii+1:

length(student)

if(student(jj).Ave>

student(iptr).Ave)

iptr=jj;

ifii~=iptr

temp=student(ii);

student(ii)=student(iptr);

student(iptr)=temp;

forii=1:

ifstudent(ii).Ave>

80

disp(student(ii).Name);

disp(student(ii).Ave);

disp(['

studentname'

blanks(6),'

studentno.'

studentaverage'

]);

disp('

'

f

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

当前位置:首页 > 初中教育 > 其它课程

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

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