77范文网 - 专业文章范例文档资料分享平台

MATLAB系统仿真试题复习资料,有答案

来源:网络收集 时间:2020-03-27 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

PART I 教材复习要点

第一章 MATLAB入门

测试1.1

1.MATLAB的命令窗口的作用是什么?编辑/调试窗口?图象窗口? MATLAB命令窗口是MATLAB起动时第一个看到的窗口,用户可以在命令窗口提示符\后面输入命令,这些命令会被立即执行。命令窗口也可以用来执行M文件。编辑/调试窗口是用来新建,修改或调试M文件的。图像窗口用来显示MATLAB的图形输出。 2.列出几种不同的得到MATLAB帮助的方法。

(1)在命令窗口中输入help ,本命令将会在命令窗口中显示关于些命令的有信息。(2)在命令窗口中输入lookfor ,本命令将会在命令窗口中显示所有的在第一注释行中包含该关键字的命令和函数。(3)通过在命令窗口输入helpwin或helpdesk启动帮助浏览器,或者是在启动板中选择\。帮助浏览器包含了基于超文本的MATLAB所有特性的描述,HTML或PDF格式的在线手册,这是MATLAB最全面的帮助资源。 3.什么是工作区?在同一工作区内,你如何决定它里面存储了什么?

工作区是命令、M文件或函数执行时被MATLAB使用的变量或数组的收集器,所有命令都在命令窗口(所有的脚本文件也是从命令窗口执行)共享公共工作区,因此它们也共享所有变量,工作区的内容可以通过whos命令来查看,或者通过工作区浏览器来图形化地查看。 4.你怎样清空MATLAB 工作区内的内容?

要清除工作区的内容,只需在命令窗口中输入clear或clear variables即可。

第二章MATLAB基础

测试2.1

1.数组,矩阵,向量有什么区别?

数组是在内存中被组织成行和列的数据集合,只有一个名称,数据要通过在数组名后面圆括号里加上表示数据所在行和列的数字来访问。术语\向量\通常用来描述只有一维的数组,而\矩阵\通常用来描述二维或更多维的数组。

2.回答关于下列矩阵的有关问题

?1.1?3.23.40.6??

C??0.61.1?0.63.1???5.50.0??1.30.6?(a)C的大小是多少?这是一个3×4数组; (b)C(2,3)的值是多少?c(2,3) = -0.6;

(c)列出值为0.6的元素的下标?数组中值为0.6的元素是c(1,4),c(2,1)和c(3,2)。

3.确定下列数组的大小,通过whos或工作空间窗口(The workspace browser)检查你的答案。注意在本练习中后面的数组可能要用到前面数组的定义。

(a) u=[10 20*i 10+20] (b) v=[-1;20;3]

(c) w=[1 0 -9;2 -2 0;1 2 3] (d) x=[u' v] (e) y(3,3)=-7

(f) z=[zeros(4,1) ones(4,1) zeros(1,4)']

(g) v(4)=x(2,1)

数组大小分别是:(a) 1×3;(b) 3×1;(c) 3×3;(d) 3×2;(e) 3×3;(f) 4×3;(g) 4×1 4.w(2,1)的值是多少?w(2,1) = 2 5.x(2,1)的值是多少?x(2,1) = -20i 6.y(2,1)的值是多少? y(2,1) = 0

7.当语句(g)执行后,v(3)的值是多少?v(3) = 3

测试2.2

1. c数组的定义如下,写出下面子数组的内容。 c =

1.1000 -3.2000 3.4000 0.6000 0.6000 1.1000 -0.6000 3.1000 1.3000 0.6000 5.5000 0 (a) c(2,:) (b) c(:,end) (c) c(1:2,2:end) (e) c(4:end) (f) c(1:2,2:4) (g) c([1 4],2) 答案:

(a) c(2,:) = [0.6 1.1 -0.6 3.1]

?0.6?

(b) d(:,4) = ?3.1?

?0.0?

-3.23.40.6?

(c) c(1:2,2:4) = ??1.1-0.63.1? (d) c(6) = 0.6

(e) c(4,end) = [-3.2 1.1 0.6 3.4 -0.6 5.5 0.6 3.1 0.0]

-3.23.40.6?

(f) c(1:2,2:end) = ??1.1-0.63.1?

-3.2?

(g) c([1 3],2) = ??0.6?

-0.6-0.6?

(h) c([2 2],[3 3]) = ??-0.6-0.6?

2.当赋值语句执行后,下列数组的内容是多少? (a) a=[1 2 3; 4 5 6; 7 8 9]; a([3 1],:)=a([1 3],:); (b) a=[1 2 3; 4 5 6; 7 8 9]; a([1 3],:)=a([2 2],:); (c) a=[1 2 3; 4 5 6; 7 8 9]; a=a([2 2],:); 答案:

?789??456?(a) a = ?456? (b) a = ?456? (c) a = ??

?123??456?

3.当数组执行后,下列数组a的内容是多少? (a) a=eye(3,3); b=[1 2 3]; a(2,:)=b; (b) a=eye(3,3); b=[4 5 6 ]; a(:,3)=b'; (c) a=eye(3,3);

b=[7 8 9];

a(3,:)=b([3 1 2]);

答案:

(d) c(6)

(h) c([2 2],[3 3])

456?456?

?100?(a) a = ?123?

?001?

例2.1

假设a,b,c和d的定义如下

?104?(b) a = ?015?

?006??100?(c) a = ?010?

?978?

?10???12??3? a??b?c???01??2? d?5 21??????分别指出下列表达式的运算结果 (a) a + b (b) a .* c (c) a * b (e) a + c (f) a + d (g) a .* d 答案: (a) (b) (c) (d) (e) (f) (g) (h)

(d) a * c (h) a * d

?02?这是一个数组或矩阵加法:a?b???。

22????10?这是一个数组乘法:a.*b??。 ??01???12?这是一个矩阵乘法:a*b???。

?25???3?这是一个矩阵乘法:a*c???。

?8?操作非法,两数组形不同

?65?数组与标量的加法:a?d???。

76???50?数组乘法:a.*d??。 ??105??50?矩阵乘法:a*d???。

105??测试2.4

本测试提供了一个快速的检查方式,看你是否掌握了2.8和2.9的基本内容。如果你对

本测试有疑问,你可以重读2.8和2.9,问你的老师,或和同学们一起讨论。在附录B中可以找到本测试的答案。

1.假设abcd的定义如下,计算下面合法运算的结果,如果不合法,指出原因

?21? a?????12??0?1? b????31??1?c???

?2?d??3

(a) result = a .* c; (b) result = a * [c c]; (b) result = a .* [c c]; (d) result = a + b * c; (e) result = a + b .* c; 答案:

(a) 操作非法。数据相乘必须有相同形式,或者数组与标量之间相乘。 44?

(b) 合法矩阵相乘:result = ??33? 21?(c) 合法数据相乘:result = ??-24?

(d) 操作非法。矩阵相乘b * c 产生一个 1×2数组,而a是一个2×2数组,故相加非法。 (e) 操作非法。在两个不同大小的数组之间相乘b .* c是非法的。

2.求矩阵x,已知Ax=B,

?121??

A??232?????101???1?? B??1????0???-0.5?

结果可通过x = A/B操作得到:x = ?1.0?

?-0.5?

练习2.1

看下面的数组回答有关问题

?1.1?0.0array1???2.1???1.4a. b. c. d.

0.02.1?3.51.1?6.62.80.10.3?0.45.10.01.16.0?3.4?? 1.3??0.0?array1的大小是多少? array1(4,1)的值是多少?

array1(:,1:2)的大小和值为多少? array1([1 3],end)的大小和值为多少?

2.2

下面的变量名那些合法那些不合法.为什么? a. dog1 b. 1dog c. Do_you_know_the_way_to_san_jose d. _help e. What's_up?

2.3

写出下面的数组的大小和内容.注意后面的数组可能根据前面数组的定义. a. a=1:2:5; b. b=[a' a' a'];

c. c=b(1:2:3,1:2:3); d. d=a+b(2,:);

e. w=[zeros(1,3) ones(3,1)' 3:5']; f. b([1 3],2)=b([3 1],2);

2.4

数组定义如下,写下面的子数组的内容

?1.1?0.0array1???2.1???1.40.02.1?3.51.1?6.62.80.10.3?0.45.10.01.16.0?3.4?? 1.3??0.0?a. array1(3,:) b. array1(:,3)

c. array1(1:2:3,[3 3 4]) d. array1([1 1],:)

2.6

a,b,c的定义如下,如果下面运算是合法的,那么写出结果,如果不合法,说出原因.

?2?2? a?????12??1? a???

?2??a. result=a+b; e. result=a.*c;

?1?1? b????02?d?eye(2)

c. result=a.*d; g. result=a.\\b;

d. result=a*c; h. result=a .^ b;

b. result=a*d; f. result=a\\b;

2.9

求下列联立方程组中的各x的值

?2.0x1?5.0x2?1.0x3?3.0x4?4.0x5?1.0x6?0.02.0x1?1.0x2?5.0x3?2.0x4?6.0x5?4.0x6?1.0?1.0x1?6.0x2?4.0x3?5.0x4?3.0x5?1.0x6??6.04.0x1?3.0x2?6.0x3?5.0x4?2.0x5?2.0x6?10.0?3.0x1?6.0x2?4.0x3?2.0x4?6.0x5?4.0x6??6.02.0x1?4.0x2?4.0x3?4.0x4?5.0x5?4.0x6??2.0

测试5.1

本测试提供了一个快速的检查方式,看你是否掌握了5.1到5.3的基本内容。如果你对本测试有疑问,你可以重读5.1到5.3,问你的老师,或和同学们一起讨论。在附录B中可以找到本测试的答案。

1. 脚本文件与函数的区别是什么?

脚本文件是保存在文件中的MATLAB语句集合。脚本文件共享命令窗口工作区,所以任何之前运行的脚本文件中定义的变量都能被当前脚本文件使用,脚本文件定义的变量在文件执行之后还保留在工作区中。脚本文件没有输入参数,也没有输出参数,不过脚本文件之间可以通过工作区交换数据。相反,每一个MATLAB函数运行在它自己的独立工作区,函数通过输入参数列表获取输入数据,通过输出参数列表给调用者返回数据。

2. 自定义函数的help命令是如何工作的?

help命令显示某个函数的所有注释行,直到遇到空白注释行或执行语句为止。 3. 函数中的H1注释行有什么重要性?

H1注释行是文件中注释的第一行,这一行可以被lookfor命令搜索并显示。应该把该函数的用途摘要写在这一行中。

4. 什么是按值传递机制?它对结构化编程有什么好处。 在值传递机制中,每个输入参数的副本而不是参数本身从调用者传递给函数。这样设计可以避免输入数据在函数内被自由的修改,这可能并不是调用者实际上需要的,因而也为设计好程序提供保证。

5. 如何使MATLAB函数带有选择性参数。

MATLAB函数可以有任意数量的参数,并且并不是每次函数调用时,每个输出参数都必须具备。nargin函数用来确定函数被调用时实际提供了多少个参数,而nargout函数用来确定函数被调用后实际上有多少个输出参数。

第7,8题中,请你确定函数的调用是否正确。如果它是错误的,指出错误所在。 7. out = test1(6); function res = test1(x, y)

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库MATLAB系统仿真试题复习资料,有答案在线全文阅读。

MATLAB系统仿真试题复习资料,有答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/907767.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: