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

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

PARTI教材复习要点第一章MATLAB入门测试1.11.MATLAB的命令窗口的作用是什么?编辑/调试窗口?图象窗口?MATLAB命令窗口是MATLAB起动时第一个看到的窗口,用户可以在命令窗口提示符后面输入命令,这些命令会被立即执行。命令窗口也可以用来执行M文件。编辑/调试窗口是用来新建,修改或调试M文件的。图像窗口用来显示MATLAB的图形输出。2.列出几种不同的得到MATLAB帮助的方法。(1)在命令窗口中输入helpcommand_name,本命令将会在命令窗口中显示关于些命令的有信息。(2)在命令窗口中输入lookforkeyword,本命令将会在命令窗口中显示所有的在第一注释行中包含该关键字的命令和函数。(3)通过在命令窗口输入helpwin或helpdesk启动帮助浏览器,或者是在启动板中选择Help。帮助浏览器包含了基于超文本的MATLAB所有特性的描述,HTML或PDF格式的在线手册,这是MATLAB最全面的帮助资源。3.什么是工作区?在同一工作区内,你如何决定它里面存储了什么?工作区是命令、M文件或函数执行时被MATLAB使用的变量或数组的收集器,所有命令都在命令窗口(所有的脚本文件也是从命令窗口执行)共享公共工作区,因此它们也共享所有变量,工作区的内容可以通过whos命令来查看,或者通过工作区浏览器来图形化地查看。4.你怎样清空MATLAB工作区内的内容?要清除工作区的内容,只需在命令窗口中输入clear或clearvariables即可。第二章MATLAB基础测试2.11.数组,矩阵,向量有什么区别?数组是在内存中被组织成行和列的数据集合,只有一个名称,数据要通过在数组名后面圆括号里加上表示数据所在行和列的数字来访问。术语向量通常用来描述只有一维的数组,而矩阵通常用来描述二维或更多维的数组。2.回答关于下列矩阵的有关问题0.05.56.03.11.36.01.16.06.04.32.31.1C(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或工作空间窗口(Theworkspacebrowser)检查你的答案。注意在本练习中后面的数组可能要用到前面数组的定义。(a)u=[1020*i10+20](b)v=[-1;20;3](c)w=[10-9;2-20;123](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×14.w(2,1)的值是多少?w(2,1)=25.x(2,1)的值是多少?x(2,1)=-20i6.y(2,1)的值是多少?y(2,1)=07.当语句(g)执行后,v(3)的值是多少?v(3)=3测试2.21.c数组的定义如下,写出下面子数组的内容。c=1.1000-3.20003.40000.60000.60001.1000-0.60003.10001.30000.60005.50000(a)c(2,:)(b)c(:,end)(c)c(1:2,2:end)(d)c(6)(e)c(4:end)(f)c(1:2,2:4)(g)c([14],2)(h)c([22],[33])答案:(a)c(2,:)=[0.61.1-0.63.1](b)d(:,4)=0.63.10.0(c)c(1:2,2:4)=-3.23.40.61.1-0.63.1(d)c(6)=0.6(e)c(4,end)=[-3.21.10.63.4-0.65.50.63.10.0](f)c(1:2,2:end)=-3.23.40.61.1-0.63.1(g)c([13],2)=-3.20.6(h)c([22],[33])=-0.6-0.6-0.6-0.62.当赋值语句执行后,下列数组的内容是多少?(a)a=[123;456;789];a([31],:)=a([13],:);(b)a=[123;456;789];a([13],:)=a([22],:);(c)a=[123;456;789];a=a([22],:);答案:(a)a=789456123(b)a=456456456(c)a=4564563.当数组执行后,下列数组a的内容是多少?(a)a=eye(3,3);b=[123];a(2,:)=b;(b)a=eye(3,3);b=[456];a(:,3)=b';(c)a=eye(3,3);b=[789];a(3,:)=b([312]);答案:(a)a=100123001(b)a=104015006(c)a=100010978例2.1假设a,b,c和d的定义如下1201a1021b23c5d分别指出下列表达式的运算结果(a)a+b(b)a.*c(c)a*b(d)a*c(e)a+c(f)a+d(g)a.*d(h)a*d答案:(a)这是一个数组或矩阵加法:2220ba。(b)这是一个数组乘法:1001*.ba。(c)这是一个矩阵乘法:5221*ba。(d)这是一个矩阵乘法:83*ca。(e)操作非法,两数组形不同(f)数组与标量的加法:6756da。(g)数组乘法:51005*.da。(h)矩阵乘法:51005*da。测试2.4本测试提供了一个快速的检查方式,看你是否掌握了2.8和2.9的基本内容。如果你对本测试有疑问,你可以重读2.8和2.9,问你的老师,或和同学们一起讨论。在附录B中可以找到本测试的答案。1.假设abcd的定义如下,计算下面合法运算的结果,如果不合法,指出原因2112a1310b21c3d(a)result=a.*c;(b)result=a*[cc];(b)result=a.*[cc];(d)result=a+b*c;(e)result=a+b.*c;答案:(a)操作非法。数据相乘必须有相同形式,或者数组与标量之间相乘。(b)合法矩阵相乘:result=4433(c)合法数据相乘:result=21-24(d)操作非法。矩阵相乘b*c产生一个1×2数组,而a是一个2×2数组,故相加非法。(e)操作非法。在两个不同大小的数组之间相乘b.*c是非法的。2.求矩阵x,已知Ax=B,101232121A011B结果可通过x=A/B操作得到:x=-0.51.0-0.5练习2.1看下面的数组回答有关问题0.01.10.01.54.13.14.03.01.01.24.38.26.61.10.00.65.31.20.01.11arraya.array1的大小是多少?b.array1(4,1)的值是多少?c.array1(:,1:2)的大小和值为多少?d.array1([13],end)的大小和值为多少?2.2下面的变量名那些合法那些不合法.为什么?a.dog1b.1dogc.Do_you_know_the_way_to_san_josed._helpe.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([13],2)=b([31],2);2.4数组定义如下,写下面的子数组的内容0.01.10.01.54.13.14.03.01.01.24.38.26.61.10.00.65.31.20.01.11arraya.array1(3,:)b.array1(:,3)c.array1(1:2:3,[334])d.array1([11],:)2.6a,b,c的定义如下,如果下面运算是合法的,那么写出结果,如果不合法,说出原因.2122a2011b21a)2(eyeda.result=a+b;b.result=a*d;c.result=a.*d;d.result=a*c;e.result=a.*c;f.result=a\b;g.result=a.\b;h.result=a.^b;2.9求下列联立方程组中的各x的值0.20.40.50.40.40.40.20.60.40.60.20.40.60.30.100.20.20.50.60.30.40.60.10.30.50.40.60.10.10.40.60.20.50.10.20.00.10.40.30.10.50.2654321654321654321654321654321654321xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx测试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);functionres=test1(x,y)res=sqrt(x.^2+y.^2);函数调用不正确。调用test1必须提供二个输入参数。在这种情况下,变量y在test1中将没有定义,函数被忽略。8.out=test2(12);functionres=test2(x,y)error(nargchk(1,2,nargin));ifnargin==2res=sqrt(x.^2+y.^2);elseres=x;end函数调用正确PARTII题型复习要点一填空题:1.MATLAB常用的4个操作界面(或窗口)有(指令窗口),(历史指令窗口),(当前目录浏览器)和(工作空间浏览器)。2.MATLAB中的Inf或inf表

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功