如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出的窗口重新集成在桌面?MATLAB 操作桌面有几个窗口?答:MATLAB的默认操作桌面包括命令窗口(Command Window)、启动平台窗口(Launch Dad)、工作空间窗口(Workspace)、命令历史窗口(Command History)和当前路径窗口(Current Directory)等5个窗口。
每个窗口的右上角都有按钮,可以使该窗口脱离操作桌面独立出来;2、 who和whos命令有什么不同之处?答:查看工作空间中有哪些变量名,可以使用who命令完成;若想了解这些变量具体细节,可以使用whos命令查看。
3、分别使用help命令和lookfor命令查找plot函数的帮助信息。
答:>> help plot>> lookfor plot4、一些命令在matlab中的应用1.clf 清除图对象clear清除工作空间内的所有变量clc 清除当前屏幕上显示的所有内容,但不清除工作空间中的数据2.ceil 沿+∞方向取整factor符号计算的因式分解3.box on 打开框状坐标轴开grid off网格关一些4.logspace 对数分度向量cat 串接成高维数组5.sym2poly 符号多项式转变为双精度多项式系数向量poly2sym 双精度多项式系数转变为向量符号多项式6.plot3 三维线图poly2str 以习惯方式显示多项式7.bar 二维直方图pie 二维饼图8.zoom on打开图形缩放模式 edit M文件编辑9.whos 对当前工作空间变量的信息进行列表figure 生成图形窗口10.cart2sph 直角坐标变为球坐标pol2cart 极或柱坐标变为直角坐标11.diff数值差分、符号微分dsolve 符号计算解微分方程12.ezplot3画三维曲线的简捷指令fix向零取整factor 符号计算的因式分解5. 在MATLAB中有几种获得帮助的途径?答:(1)help 命令:在命令窗口输入help命令,也是MATLAB寻找在线帮助的一种方便而快捷的方式。
(图示、操作演示)(2)帮助浏览器:MATLAB通过选择help可以获得各类帮助信息,通过勾选或删除勾选Desktop 菜单中的Help选项可打开或关闭窗口中独立的交互式帮助浏览器。
(3)lookfor 命令:(lookfor commend) 可以根据用户提供的完整或不完整的关键词,搜索出一组与之相关的命令或函数。
(图示、操作演示)(4)模糊查询:(fuzzy Inquiry) 用户只须输入命令的前几个字母,然后键入Tab 键MATLAB 就会列出所有以这个字母开始的命令。
(图示、操作演示)(5)帮助台:(doc)帮助台比帮助命令及帮助窗口提供更多的帮助信息。
键入命令helpdesk可进入帮助台,可以利用浏览器的功能浏览帮助信息。
(6)在线帮助页:(doc)命令doc后加关键字,MATLAB会自动定位到相关页码,在线帮助页包括所有的字体、图形和图像都可以直接打印。
6. 在进行算术运算时,数组运算和矩阵运算各有什么特点,如何区分两种运算?左除与右除有什麽区别?答:普通的数组运算方式:(Array computation) 在数组中对应元素之间进行运算;矩阵运算方式:(matrix computations) 将标量当作1×1阶矩阵,一维数组当作一行或一列的矢量(即1×n阶或n×1阶的矩阵),二维数组当作m×n阶矩阵,然后按照矩阵的运算规则进行运算。
二者输入形式和书写方法相同,差别仅在于使用不同的运算符号,执行不同的计算过程,数组的运算是对应元素之间的运算,而矩阵运算是根据矩阵的运算规则进行。
数组的除法(Array division)条件:a与b必须具有相同的维数。
符号“. \ ”或“. / ”,运算结果相同,a.\b 表示b中的元素分别除以a中的对应元素,即z(i,j)=x(i,j)\y(i,j)=y(i,j)/x(i,j)。
矩阵除法(Matrix division)条件:a矩阵是非奇异方阵,则a\b(左除)和b/a(右除)都可以实现。
a\b等效于a矩阵的逆左乘b矩阵,即a\b=inv(a)*b,b/a等效于a矩阵的逆右乘b矩阵,即b/a=b*inv(a).通常x=a\b 是a*x=b 的解,x=b/a 是x*a=b 的解。
一般a\ b ≠b/a,右除与左除的关系为:(b/a)’=(a ’\b ’)7. 计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。
>> A=[6 9 3;2 7 5];>> B=[2 4 1;4 6 8];>> A.*Bans =12 36 38 42 408.MATLAB 的变量命名有什么规则?能用”pi ”来作为变量名吗,为什么?(4分)①.变量名区分大小写;②变量名最多包含63个字符,其后的字符将被忽略;③变量名必须以一个字母开始,其后可以是如意数量的字母、数字或下划线;④变量名中不允许出现标点符号,因为许多标点符号在MATLAB 中有特殊意义。
不能以“pi ”来作为变量,因为“pi ”在MATLAB 中默认为3.1416,若要定义可改为大写的”PI ”。
9. 命令文件与函数文件的主要区别是什么?答:(1)命令文件是一系列命令的组合,函数文件的第一行必须用function 说明;(2)命令文件没有输入参数,也不用返回参数,函数文件可以接受输入参数,也可以返回参数;(3)命令文件处理的变量为工作空间变量,函数文件处理的变量为函数内部的局部变量,也可以处理全局变量。
13. M 文件中的函数文件的基本结构是什么?各结构部分起什么作用?(4分)1、函数声明行2、H1行 %帮助文字的第一行,给出M 文件帮助最关键的信息3、帮助文字 %对M 文件更为详尽的说明4、M 文件正文 %所实现的功能部分5、注释部分 %10.if 语句有几种表现形式?答:(1) if —end 语句(simple if statement)(2)if —else--end 语句(3)if —elseif —end 语句(4) if —elseif —else —end11. 设矩阵A=⎥⎦⎤⎢⎣⎡---4212,矩阵B=⎥⎦⎤⎢⎣⎡--5030,矩阵C=⎥⎦⎤⎢⎣⎡31,矩阵D=eye(2),求解下列问题。
① A ⨯3 ② B A + ③ D A * ④ D A *. ⑤ C A * ⑥ C A *. ⑦ B A \ ⑧ B A \. ⑨ B A ^.答:①>> a=[2 -1;-2 -4];>> 3*a②>> a=[2 -1;-2 -4];>> b=[0 -3;0 -5];>> a+b③>> a=[2 -1;-2 -4];>> d=eye(2);>> a*d④>> a=[2 -1;-2 -4];>> c=[1;3];>> a*c⑤>> a=[2 -1;-2 -4];>> b=[0 -3;0 -5];>> a\b12.设矩阵A 为5阶的范德蒙德矩阵,试使用矩阵的特殊操作函数实现矩阵A 的90度旋转、上下翻转和左右翻转。
答:>> v=[1 2 3 4 5];>> a=vander(v);>> rot90(a)>> flipud(a)>> fliplr(a)13. 设矩阵A 为一个34⨯阶的矩阵,试使用reshape 函数将矩阵A 变为一个43⨯阶的矩阵。
答:>> a=[2 3 1;3 6 2;4 10 8;7 9 3];>> reshape(a,3,4)14. 试将图形窗口分割成四个区域,并分别绘制sinx、cosx、sin2x和cos2x在[0,2π]区间的图形,并加上适当的图形修饰。
答:>> x=0:pi/20:2*pi;>> y1=sin(x);>> y2=cos(x);>> y3=sin(2*x);>> y4=cos(2*x);>> subplot(221)>> plot(x,y1);>> title('sin(x)')>> subplot(222)>> plot(x,y2);>> title('cos(x)')>> subplot(223)>> plot(x,y3);>> title('sin(2x)')>> subplot(224)>> plot(x,y4);>> title('cos(2x)')15.编制MATLAB程序,要求绘制两条曲线,一条为正弦曲线,另一条为余弦曲线,自变量的取值范围为[0,2π],以π/10为步长,正弦曲线为绿色,余弦曲线为红色,增添图例分别为“正弦曲线”和“余弦曲线”。
答:>> x=0:pi/10:2*pi;>> y1=sin(x);>> y2=cos(x);>> plot(x,y1,'g',x,y2,'r')>> legend('sin(x)','cos(x)')编写一个脚本程序实现:在同一图上分别用红色虚线和绿色点划线绘制函数y1=sinx和y2=x2+2x-1在区间[-10,10]的曲线,标题为“用作图法求两条函数曲线的交点”,x轴为“自变量x”,y轴为“函数y1、y2的曲线”,并给出图例“‘y1=sinx’,‘y2=x2+2x-1’”。
16. 命令文件与函数文件的主要区别是什么?答:(1)命令文件是一系列命令的组合,函数文件的第一行必须用function说明;(2)命令文件没有输入参数,也不用返回参数,函数文件可以接受输入参数,也可以返回参数;(3)命令文件处理的变量为工作空间变量,函数文件处理的变量为函数内部的局部变量,也可以处理全局变量。
17. if语句有几种表现形式?答:(1)if 表达式语句体end(2)if 表达式语句体1else语句体2end(3)if 表达式1语句体1elseif 表达式2语句体2end(4)if 表达式1语句体1elseif 表达式2语句体2else语句体3end18.使用if … else … end结构编写一段程序,判断学生是否通过学业?(条件要求出勤率高于90%,平均成绩高于60分)答:if ((attendance>=0.9)&(grade>=60))pass=1;elsefail=1;end19. 通过编程说明break语句和return语句的用法。