Matlab期末复习提纲(答案)
- 格式:docx
- 大小:632.26 KB
- 文档页数:7
matlab期末复习题及答案1. MATLAB基础操作在MATLAB中,如何创建一个名为"myMatrix"的3x3矩阵,其元素分别为1, 2, 3, 4, 5, 6, 7, 8, 9?答案:在MATLAB中,可以通过直接输入矩阵元素来创建矩阵。
例如,要创建一个名为"myMatrix"的3x3矩阵,可以使用以下命令:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```这样,MATLAB就会创建一个3x3的矩阵,其元素按照行顺序排列。
2. 矩阵运算给定两个矩阵A和B,其中A = [1 2; 3 4],B = [5 6; 7 8],计算矩阵A和B的和。
答案:在MATLAB中,可以使用加号(+)来计算两个矩阵的和。
对于给定的矩阵A和B,可以使用以下命令来计算它们的和:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A + B;```执行上述命令后,矩阵C的结果将是:```C = [6 8;10 12];```3. 条件语句编写一个MATLAB脚本,判断一个给定的数n是否为质数,并输出相应的信息。
答案:在MATLAB中,可以使用if-else语句来判断一个数是否为质数。
以下是一个简单的脚本示例:```matlabn = input('请输入一个数:');if mod(n, 2) == 0 && n > 2disp('该数不是质数');elseif n == 1disp('1不是质数');elseisPrime = true;for i = 2:sqrt(n)if mod(n, i) == 0isPrime = false;break;endendif isPrimedisp('该数是质数');elsedisp('该数不是质数');endend```该脚本首先接收用户输入的数n,然后通过一个for循环检查n是否有除了1和它自身以外的因数,从而判断n是否为质数。
matlab期末考试复习资料如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出的窗口重新集成在桌面?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 寻找在线帮助的一种方便而快捷的方式。
matlab复习题标准答案# MATLAB复习题标准答案一、选择题1. MATLAB中的矩阵默认是按什么顺序存储的?- A. 行主序- B. 列主序- C. 随机序- D. 行主序2. 下列哪个函数用于计算矩阵的行列式?- A. `det`- B. `diag`- C. `trace`- A. `det`3. MATLAB中如何创建一个5x5的单位矩阵?- A. `eye(5,5)`- B. `zeros(5,5)`- C. `ones(5,5)`- A. `eye(5,5)`4. 下列哪个命令用于生成0到1之间的随机数?- A. `rand()`- B. `randi()`- C. `randn()`- A. `rand()`5. MATLAB中如何计算向量的范数?- A. `norm(vector)`- B. `abs(vector)`- C. `sum(vector)`- A. `norm(vector)`二、填空题1. MATLAB中的`%`符号用于______。
- 答案:注释2. 要创建一个从10到1的递减向量,可以使用______。
- 答案:`1:-1:10`3. MATLAB中,`zeros(3,4)`会生成一个______。
- 答案:3行4列的全零矩阵4. 函数`max(A)`会返回矩阵A中的______。
- 答案:最大值5. `plot(x,y)`函数在MATLAB中用于______。
- 答案:绘制x和y的数据点的图形三、简答题1. 请简述MATLAB中矩阵的基本操作有哪些?- 答案:矩阵的基本操作包括矩阵的创建、转置、求逆、矩阵乘法、矩阵加法、矩阵减法等。
2. MATLAB中如何实现循环结构?- 答案:MATLAB中实现循环结构主要有两种方式,一种是使用`for`循环,另一种是使用`while`循环。
3. 请解释MATLAB中的函数文件和脚本文件的区别。
- 答案:函数文件通常包含返回值和参数,可以被其他脚本或函数调用;而脚本文件主要用于执行一系列命令,不包含返回值。
MATLAB复习题(答案仅供参考)1⼀、填空题1. MATLAB命令窗⼝中可⽤clear 命令清除⼯作区中的变量;⽤clc 命令清除命令窗⼝中的内容。
2. MATLAB中的运算符包括数学运算符、矩阵运算符、数组运算符。
3 MATLAB的含义为矩阵运算。
4. MATLAB中的函数类型有嵌套函数、主函数、⼦函数、私有函数和匿名函数。
5. MATLAB中⽤系统预定义的特殊变量nargin 表⽰函数输⼊参数个数。
6. size命令的功能确定数组⼤⼩。
7. MATLAB中⽤linspace 符号定义单元数组。
8. MATLAB中⽤hold on 命令打开图形保持功能。
9 MATLAB中如果⼀个变量名为123,该变量名是否合法否(填是或否)。
10. MATLAB中⽤inv 函数完成矩阵的求逆运算,⽤det 函数求矩阵的⾏列式。
11.已知C={2+5i,’Hi’;1:4,[1 2]} 输⼊s=C(3) 即s=__'_Hi__'___.12.先输⼊P=struct(‘name’,’Jack‘,’num’,43) ,再输⼊s= 即s=___Jack___.13.当x=[ 1 2 3; 4 5 6] , y=[ 5 8; 5 8 ] 时,__不能__(能﹨不能)使⽤plot 命令绘图。
14.sym 或syms _能_______(能﹨不能)创建符号矩阵。
15.已知x=3:2:24,则x有__11_个元素。
结构的开始是“if”命令,结束是_end____命令。
17.已知x为⼀个向量,计算ln(x)的MATLAB命令是计算_log(x)___。
18.命令:>>subplot(3,3,x)中有__9_个⼦图。
19.已知s=‘显⽰“hey”’,则s的元素个数是___9__。
y=f()global WW=2y=f1(5)function y=f()global Wy=w+W创建以上函数⽂件,在命令窗⼝中运⾏“y=f”命令则显⽰__出错___。
2015-2016学年第一学期数值计算与MATLAB复习提纲考试知识点➢第二章1)变量的命名规则,正确判断合法变量2)常用预定义变量:ans、eps、pi、i、j、inf、Inf、NaN、nan。
预定义变量参与的运算。
3) 常用数学函数:sin、cos、sqrt、log、exp、abs、rem、mod、fix、floor、ceil、round(mod,rem只需要考虑参数都是大于0的情况)准确的写出MATLAB的数学表达式3)矩阵的建立:直接输入法, 利用冒号表达式建立一个向量、linspace的含义与用法、建立大矩阵a)熟练掌握书本相关例题4)矩阵的拆分:矩阵元素(下标法或序号法),矩阵拆分(冒号:运算符,end 运算符),利用空矩阵删除矩阵的元素size(), length()a)熟练掌握书本相关例题5)特殊矩阵: zeros/ones/eye/ zeros(size(A)),ones(size(A)), eye(size(A))a)给定区间内的随机矩阵的建立,(要求均匀分布rand,正态分布randn)b)熟练掌握相关例题P26,2-46)Matlab运算:a)算术运算:+、-、*、/、\、^、点运算b)关系运算:P32页6种关系运算运算法则、相关例题c)逻辑运算P33页3种逻辑运算符& | ~的运算法则、相关例题d)算术运算、关系运算、逻辑运算优先级,单目运算优先级问题。
e)find()函数及其应用7)对角阵与三角阵:diag()、triu()、tril(),diag(diag(A))8)矩阵的转置与旋转:rot90()9)矩阵的逆:inv()10)字符串✧本章相关的例题、上机习题➢第三章 matlab程序设计1)命令文件与函数文件的区别:参数、变量、调用方式2)程序的顺序结构,input函数及其应用、disp函数及其应用、程序的暂停3)选择结构if语句,switch语句4)循环结构for语句,while语句,循环的嵌套P65 3-8 P66 3-9,3-10,特别要注意for k=A (期中A是一个向量或矩阵)…end 这种程序的阅读和编写5)函数文件:函数的定义,函数的调用(包括函数的递归调用)P70-71,3-15,3-166)全局变量与局部变量的用法(要会读含有全局变量的程序):P72,3-18✧本章相关的例题和布置的上机习题➢第四章 matlab绘图1)二维曲线:a)plot :P83,4-1,4-2b)设置曲线样式:掌握线型中的虚线(:),实线(-),点划线(-.),颜色(蓝色b、绿色g、红色r、黄色y、白色w、黑色k), 标记符号(五角星p,星号*,叉号X字母)2)图形窗口的分割:subplot(m,n,p),已子图的形式绘制二维曲线3)最基本的三维曲线函数:plot3✧本章相关的例题和布置的上机习题➢第五章 matlab数据分析与多项式计算1) 5.1.1:max / min2) 5.1.2:sum / prod3) 5.1.3:mean / median4) 5.2:一维数据插值:interp1(),P124,5-115) 5.3:曲线拟合:polyfit()、polyval(),P127,5-146) 5.5:多项式运算:+ 、—、conv、deconv、ployval、roots 、poly,polyderP132-133,5-19,5-21✧本章相关的例题和布置的上机习题➢第六章 matlab解方程与函数极值1)直接解法:左除、矩阵求逆2)LU分解、QR分解3)Jacobi迭代法4)单变量非线性方程求解fzero、非线性方程组的求解fsolve。
matlab期末复习题及答案MATLAB期末复习题及答案一、选择题1. MATLAB中用于创建向量的函数是:A. vectorB. createVectorC. vectorizeD. [ ]答案:D2. 下列哪个命令可以计算矩阵的行列式?A. det(A)B. matrixDeterminant(A)C. determinant(A)D. A.det答案:A3. MATLAB中,以下哪个函数可以进行矩阵的转置?A. transposeB. transC. flipD. rot90答案:B4. 以下哪个函数可以用于绘制三维图形?A. plotB. scatterC. surfD. bar3答案:C5. 以下哪个命令可以计算向量的范数?A. norm(v)B. magnitude(v)C. length(v)D. distance(v)答案:A二、填空题1. MATLAB中,使用________命令可以创建一个与原矩阵相同大小的零矩阵。
答案:zeros2. 要生成一个从0到1的线性空间向量,包含101个元素,应使用________命令。
答案:linspace(0,1,101)3. 使用MATLAB绘制函数y=x^2的图形,可以使用________命令。
答案:plot(x, x.^2)4. 要对矩阵进行元素乘,应使用________操作符。
答案:.*5. MATLAB中,使用________函数可以求解线性方程组。
答案:inv三、简答题1. 请简述MATLAB中矩阵的基本操作有哪些?答案:矩阵的基本操作包括矩阵的创建、转置、求逆、行列式计算、矩阵乘法、矩阵加法、矩阵减法等。
2. MATLAB中如何实现循环结构?答案:MATLAB中实现循环结构主要有for循环和while循环两种方式。
for循环用于已知迭代次数的情况,while循环用于迭代次数不确定的情况。
四、计算题1. 给定矩阵A和B如下:A = [1 2; 3 4];B = [5 6; 7 8];请计算A与B的矩阵乘积,并求出结果矩阵的行列式。
MatLab复习提纲题型:⼀、填空题20分(20空,每空1分)⼆、判断题10分(5道,每题2分)三、问答题10分(2道,每题5分)四、程序理解30分(2道,每题15分)五、编程30分(2道,每题15分)Chap 11.load、save、clear、length、size、clc命令注意:length(X):当X为⾮空阵列时,为max(size(X)) 最长维尺⼨当X为向量时,等于向量长度X=[ 1 2 3 4; 5 6 7 8; 9 10 11 12] length(X)=4X=[ 1 2 3 4 5 6 7 8 9 10 11 12] length(X)=12区别:ndims(A) 返回A的维数size(A) 返回A各个维的最⼤元素个数length(A) 返回max(size(A))Chap21.变量名:字母、数字、下划线,以字母开头,区分⼤⼩写系统固定变量:ans 默认变量名, Inf(inf) 正⽆穷⼤, NaN(nan) 不定值不能被清除但可以重新赋值2.算术运算操作符:区别矩阵算术运算和阵列算术运算* .* / ./ \ .\ ^ .^ ′ .′例:22cos1x x yx-=+x=[0:100];y=(2*x-x.^2)./(cos(x)+1)3.区别关系运算操作符“==”和赋值号“=”4.表达式的构成:变量、数值、函数⽤操作符连接起来…表⽰续⾏5.命令⾏末:逗号/⽆标点-显⽰结果分号-抑制结果显⽰6.矩阵输⼊:输⼊矩阵的⽅法1) 直接输⼊元素列表。
⾏中-以空格或逗号间隔⾏间-分号或回车间隔例如,A = [1 2 3; 4 5 6]2) 从外部数据⽂件中读取矩阵。
例如,load s.dat (其中s.dat是已知的外部数据⽂件) 3) 利⽤MATLAB内部函数产⽣。
例如,B = ones(3,2)4) ⽤户⾃⼰编写m⽂件产⽣矩阵。
7.冒号操作符:1)建⽴向量,⽐如a = [1:6];2)阵列的下标,⽐如A(:, 2:3);3)循环迭代,⽐如for i = 1:N8.M函数产⽣矩阵:eye 单位矩阵ones 全1阵列zeros全0阵列diag 对⾓阵rand 均匀分布阵列randn 正态分布阵列9.矩阵按列存储,可以⽤⼀个下标寻址10.cat函数:cat(1,A,B)=[A;B] cat(2,A,B)=[A,B]11.repmat函数:repmat(A,m,n) repmat(5,2,3)=5*ones(2,3)12.reshape函数:reshape(A,m,n)13.利⽤取整和求余函数,可以得到整数或精确到⼩数点后第⼏位产⽣[-a,a]之间随机阵(m×n),精确到⼩数点后q位a-2×a×rand(m,n)a-round(2×a×10q×rand(m,n))/10q14.运算优先级算术〉关系〉逻辑〉、≧、〈、≦仅⽐较实部,==,~=⽐较实部和虚部1.plot、subplot、figure2.legend3.xlable、ylable、title、textxlabel (’标注’,’属性1’,属性值1,’属性2’,属性值2,…….)text (x ,y ,’标注⽂本及控制字符串’)例title(‘正弦函数','FontSize',12,'FontWeight','bold','FontName','⾪书',’color ’,’k ’)例:产⽣蓝⾊的曲线、绿⾊的标题、红⾊的x 、y 轴标注以及⿊⾊的曲线标注 x = [-pi:pi/50:pi]; y = exp(-2*sin(x)); plot(x, y, 'b-'); grid on;title('y = e^{-2sin(x)}', 'Color ', 'g');ylabel('y 轴标注', 'color ', 'r');xlabel('x 轴标注', 'color ', 'r');text(-0.6, 3.4, '\leftarrow 曲线标注', 'color ', 'k');-4-3-2-101234012345678y = e -2sin(x)y 轴标注x 轴标注例:title('\it{sine wave and {\itAe}^{-\alpha{\itt}}wave from zero to 3\pi}');'\it{sine wave and {\it Ae}^{-\alpha{\it t}}wave from zero to 3\pi}'斜体sine wave and斜体Aeα斜体t wave from zero to 3π4.polar、loglog、semilogx、semilogy、5.plotyy、hold on6.box、axis、grid on/off7.字符串采⽤Tex字符集特殊形式:^ 上标_ 下标\it 斜体\bf ⿊体1.两类M⽂件,区别(定义或语法形式不同;变量的⽣存期不同)2.MATLAB中函数⽂件构成,给出⼀个简单的函数⽂件⽰例。
Matlab 期末考试复习习题及答案1, 计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。
2, 对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。
3, 已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。
4, 角度[]604530=x ,求x 的正弦、余弦、正切和余切。
(应用sin,cos,tan.cot)5, 将矩阵⎥⎦⎤⎢⎣⎡=7524a 、⎥⎦⎤⎢⎣⎡=3817b 和⎥⎦⎤⎢⎣⎡=2695c 组合成两个新矩阵: (1)组合成一个4⨯3的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素,即 ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡237912685574 (2)按照a 、b 、c 的列顺序组合成一个行矢量,即 []2965318772546, 将(x -6)(x -3)(x -8)展开为系数多项式的形式。
(应用poly,polyvalm)7, 求解多项式x 3-7x 2+2x +40的根。
(应用roots)8, 求解在x =8时多项式(x -1)(x -2) (x -3)(x -4)的值。
(应用poly,polyvalm)9, 计算多项式9514124234++--x x x x 的微分和积分。
(应用polyder,polyint ,poly2sym)10, 解方程组⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡66136221143092x 。
(应用x=a\b)11, 求欠定方程组⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡5865394742x 的最小范数解。
(应用pinv) 12, 矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=943457624a ,计算a 的行列式和逆矩阵。
(应用det,inv)13, y =sin(x ),x 从0到2π,∆x =0.02π,求y 的最大值、最小值、均值和标准差。
第一章MATLAB语言基础命令窗口的分页输出•more off:不允许分页more on:允许分页•more(n):指定每页输出的行数多行命令(…)•如果命令语句超过一行或者太长希望分行输入,则可以使用多行命令继续输入。
一些特殊的变量ans:用于结果的缺省变量名i、j:虚数单位pi:圆周率nargin:函数的输入变量个数eps:计算机的最小数nargout:函数的输出变量个数inf:无穷大realmin:最小正实数realmax:最大正实数nan:不定量MATLAB的工作空间包含了一组可以在命令窗口中调整(调用)的参数•who:显示当前工作空间中所有变量的一个简单列表•whos:则列出变量的大小、数据格式等详细信息•clear :清除工作空间中所有的变量•clear 变量名:清除指定的变量保存和载入workspace(1)save filename variables•将变量列表variables所列出的变量保存到磁盘文件filename中•Variables所表示的变量列表中,不能用逗号,各个不同的变量之间只能用空格来分隔。
(2)load filename variables•将以前用save命令保存的变量variables从磁盘文件中调入MA TLAB工作空间。
•用load 命令调入的变量,其名称为用save命令保存时的名称,取值也一样。
•Variables所表示的变量列表中,不能用逗号,各个不同的变量之间只能用空格来分隔。
文件管理•what:显示当前目录下所有与matlab相关的文件及它们的路径。
•dir:显示当前目录下所有的文件•which:显示某个文件的路径•cd path:由当前目录进入path目录•cd ..:返回上一级目录•cd:显示当前目录•type filename:在命令窗口中显示文件filename•delete filename:删除文件filename使用帮助help命令,在命令窗口中显示helpwin:帮助窗口helpdesk:帮助桌面,浏览器模式lookfor命令:返回包含指定关键词的那些项demo:打开示例窗口结构数组和细胞数组结构数组元素是结构类型数据,包含结构类型的所有域,类似于数据库中的记录;域名(field)类似于数据库中的字段名。
M a t l a b期末复习题(答案)-CAL-FENGHAI.-(YICAI)-Company One1一、 选择题(有10个题,共20分)1.有一个4×4矩阵A,表示取得矩阵A 的第一行和第二行的第二列至第四列所有元素的命令是( A )(A) A(1:2,2:4) (B) A(2:4,1:2) (C) A(1:2:4) (D) A(4:2:1)2.将一个图形窗口分成3×4个子区并表示第一个子区的命令是( C )A . subplot(12,1)B .subplot(1,12)C .subplot(3,4,1)D .subplot(1,3,4)3.利用Matlab 的符号计算功能计算微分方程初值问题⎪⎩⎪⎨⎧=+-=2)1(42y x x y dx dy 在区间 [1,2]上的解析解时所用到的函数是( D )(A) ode23 (B) ode45 (C) solve (D) dsolve4.以下有关Matlab 子函数的性质中不正确的是( D )(A) 子函数只能被处于同一个文件的主函数或其他子函数调用;(B) 在M 函数文件中,任何指令通过“名字”对函数进行调用时,子函数的优先级仅次于内装函数;(C) 在M 函数文件内,主函数的位置不可改变,但子函数的排列次序可以任意改变;(D) help, lookfor 等帮助指令都能提供关于子函数的任何帮助信息。
5.以下语句中生成按钮控件的语句是( B )(A) h_1=uimenu(gcf,'Label','&Blue');(B) h_1=uicontrol(gcf,'style','push', 'string','grid off','callback','grid off');(C) h_1=uicontrol(gcf,'style','text', 'horizontal','left','string',{'输入'});(D) h_1=axes('unit','normalized','position',[0,0,1,1],'visible','off');6.以下有关Matlab 函数及其句柄的说法中正确的是( A,C )(A) 在该函数的目录下可定义该函数的句柄,句柄定义后,可用feval 函数和句柄在任何目录下调用该函数;(B) 函数不在Matlab 的当前工作目录下不可执行,但可以用feval 函数和句柄调用该函数;(C) 函数不在Matlab 的当前工作目录下时,可以定义函数的句柄;(D) 函数不在Matlab 的当前工作目录下时,不可以定义函数的句柄。
PART I 教材复习要点第一章 MATLAB 入门测试1.11.MATLAB 的命令窗口的作用是什么?编辑/调试窗口?图象窗口? MATLAB 命令窗口是MATLAB 起动时第一个看到的窗口,用户可以在命令窗口提示符">>"后面输入命令,这些命令会被立即执行。
命令窗口也可以用来执行M 文件。
编辑/调试窗口是用来新建,修改或调试M 文件的。
图像窗口用来显示MATLAB 的图形输出。
2.列出几种不同的得到MATLAB 帮助的方法。
(1)在命令窗口中输入help <command_name>,本命令将会在命令窗口中显示关于些命令的有信息。
(2)在命令窗口中输入lookfor <keyword>,本命令将会在命令窗口中显示所有的在第一注释行中包含该关键字的命令和函数。
(3)通过在命令窗口输入helpwin 或helpdesk 启动帮助浏览器,或者是在启动板中选择"Help"。
帮助浏览器包含了基于超文本的MATLAB 所有特性的描述,HTML 或PDF 格式的在线手册,这是MATLAB 最全面的帮助资源。
3.什么是工作区?在同一工作区内,你如何决定它里面存储了什么?工作区是命令、M 文件或函数执行时被MATLAB 使用的变量或数组的收集器,所有命令都在命令窗口(所有的脚本文件也是从命令窗口执行)共享公共工作区,因此它们也共享所有变量,工作区的内容可以通过whos 命令来查看,或者通过工作区浏览器来图形化地查看。
4.你怎样清空MATLAB 工作区内的内容?要清除工作区的内容,只需在命令窗口中输入clear 或clear variables 即可。
第二章MATLAB 基础测试2.11.数组,矩阵,向量有什么区别?数组是在内存中被组织成行和列的数据集合,只有一个名称,数据要通过在数组名后面圆括号里加上表示数据所在行和列的数字来访问。
一、 选择题(有10个题,共20分)1.有一个4×4矩阵A,表示取得矩阵A 的第一行和第二行的第二列至第四列所有元素的命令是( A )(A) A(1:2,2:4) (B) A(2:4,1:2) (C) A(1:2:4) (D) A(4:2:1)2.将一个图形窗口分成3×4个子区并表示第一个子区的命令是( C )A . subplot(12,1)B .subplot(1,12)C .subplot(3,4,1)D .subplot(1,3,4)3.利用Matlab 的符号计算功能计算微分方程初值问题⎪⎩⎪⎨⎧=+-=2)1(42y x x y dx dy 在区间 [1,2]上的解析解时所用到的函数是( D )(A) ode23 (B) ode45 (C) solve (D) dsolve4.以下有关Matlab 子函数的性质中不正确的是( D )(A) 子函数只能被处于同一个文件的主函数或其他子函数调用;(B) 在M 函数文件中,任何指令通过“名字”对函数进行调用时,子函数的优先级仅次于内装函数;(C) 在M 函数文件内,主函数的位置不可改变,但子函数的排列次序可以任意改变;(D) help, lookfor 等帮助指令都能提供关于子函数的任何帮助信息。
5.以下语句中生成按钮控件的语句是( B )(A) h_1=uimenu(gcf,'Label','&Blue');(B) h_1=uicontrol(gcf,'style','push', 'string','grid off','callback','grid off');(C) h_1=uicontrol(gcf,'style','text', 'horizontal','left','string',{'输入'});(D) h_1=axes('unit','normalized','position',[0,0,1,1],'visible','off');6.以下有关Matlab 函数及其句柄的说法中正确的是( A,C )(A) 在该函数的目录下可定义该函数的句柄,句柄定义后,可用feval 函数和句柄在任何目录下调用该函数;(B) 函数不在Matlab 的当前工作目录下不可执行,但可以用feval 函数和句柄调用该函数;(C) 函数不在Matlab 的当前工作目录下时,可以定义函数的句柄;(D) 函数不在Matlab 的当前工作目录下时,不可以定义函数的句柄。
MATLAB期末复习资料(终极版)一、填空题:(共20分)1、产生4阶全0方阵的命令为 zeros(4);产生3阶全1方阵的命令为ones(3).2、标点符号;可以使命令行不显示运算结果; % 用来表示该行为注释行。
3、P,Q分别是两个多项式的系数向量,求P对应的多项式的积分(对应的常数为K),使用的命令是polyint(P,K);求P/Q的解,商和余数分别保存在k和r中,使用的命令是[k,r]= deconv (P,Q)4、在C盘上创建目录my_dir的命令是mkdir(…c:\?,?my-dir?);使c:\my_dir成为当前目录的命令是cd c:\my -dir。
5、已知A=[0 9 6;1 3 0];B=[1 4 3;1 5 0];写出各指令运行的结果。
A&B的运行结果ans= 0 1 11 1 0A./B的运行结果ans= 0 2.2500 2.00001.0000 0.6000 NaN6、要判断else是否是MATLAB关键字的命令是exist User Name;exist else的运行结果非零,说明else是(填“是”或“不是”) MATLAB的关键字。
7、A=rand(2,5);b=size(A);c=length(A);则b和c的值分别为[ 2 ,5 ] 和 5 。
8、为了使两个plot的图形在同一个坐标显示,可以使用hold on 命令进行图形保持;可以使用grid on 命令为图形添加网格。
9、MATLAB的工作空间中有三个变量v1,v2,v3,写出把它们保存到文件mydata.mat中的指令save mydata.mat;写出把mydata.mat文件中的变量读取到MATLAB工作空间内的指令load mydata.mat。
10、用if语句判断80≥x>60,在MATLAB中if语言后的判断应写为 if x<= 80 & x>6011、写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值。
MATLAB 期末复习1.在MATLAB 帮助文件中查找有关title 的使用方法,并为y1对应的图形添加标题 y1=sin(t) ;为y2对应图形添加标题 y2=e -at cos(3t),其中a 根据输入显示具体值(使用num2str 函数)。
请写出有关指令。
答:title('y1=sin(t)') title(['y2=exp^{-',num2str(a),'t},cos(3t)'])3. 运行以下指令x=-3*pi:pi/15:3*pi;y=x;[X,Y]=meshgrid(x,y); warning off;Z=sin(X).*sin(Y)./X./Y;1)继续编写指令求出矩阵Z 中有多少个“非数”数据。
答: 指令:m=sum(sum(isnan(Z)))运行结果: m =1814)写出绘制相应“无裂缝”图形的全部指令。
(参考课本p147)答:x=-3*pi:pi/15:3*pi;x=x+(x==0)*eps;%用逻辑数组参与计算,使0元素被一个“机器零”小数替代y=x; [X,Y]=meshgrid(x,y); warning off;Z=sin(X).*sin(Y)./X./Y; sum(sum(isnan(Z))) %统计Z 中非数的数目,数组要用两个sum surf(X,Y,Z); shading interp xlabel('x') ylabel('y') zlabel('z')4.运行clear, rand('state',1),A=rand(3,3)1)编写指令,获得一个对角矩阵B ,其相应元素由A 的对角元素构成答:B=diag(A)2)编写指令,获得一个矩阵C ,其对角元素全部为零,其余元素与A 对应元素相同。
(使用diag 函数)答:C=diag(diag(A));5. 运行clear, rand('state',1),A=rand(3,5)生成二维数组A ,编写指令对A 矩阵进行以下操作,记录相应的结果。
第二单元:1.计算复数3+4i与5-6i的乘积。
>> (3+4i)*(5-6i)5.按水平和数值方向分别合并下述两个矩阵:>> A=[1 0 0;1 1 0;0 0 1];>> B=[2 3 4;5 6 7;8 9 10];>> C=[A;B]>> D=[A B]6.分别删除第5题两个结果的第2行。
>> C(2,:)=[]>> D(2,:)=[]7.分别将第5 题两个结果的第2行最后3列的数值改为[11 12 13]。
>> C(2,1:3)=[11 12 13]>> D(2,4:6)=[11 12 13]8.分别查看第5题两个结果的各方向的长度。
>> size(C)>> size(D)9.分别判断pi是否为字符长和浮点数。
>> ischar(pi)>> isfloat(pi)10.分别将第5题两个结果转换为2*9的矩阵。
>> C1=reshape(C,2,9)>> D1=reshape(D,2,9)11.计算第5 题矩阵A的转秩。
>> A=[1 0 0;1 1 0;0 0 1];>> E=transpose(A)12.分别计算第5题矩阵A和B的A+B、A*B、A\B。
>> A=[1 0 0;1 1 0;0 0 1];>> B=[2 3 4;5 6 7;8 9 10];>> X=A+B>> Y=A*B13.判断第5题矩阵A和B中哪些元素值不小于4。
>> A=[1 0 0;1 1 0;0 0 1];>> B=[2 3 4;5 6 7;8 9 10];>> A>=4>> B>=4第三单元:1.计算矩阵A的范数,行列式,秩,化零空间和正交空间。
1、图像的最小基本单位:像素
2、根据每个像素所代表信息的不同,可将图像分为二值图像、灰度图像、RGB
图像以及索引图象、多帧图像
3、图像的空间分辨率是指图像中每单位长度所包含的像素或点的数目,常以像
素/英寸为单位表示
4、当高分辨率下的图像以低分辨率表示时,在同等的显示或者打印输出条件下,
图像的尺寸变小,细节变得不明显;而当将低分辨率的图像放大,则会导致图像的细节仍然模糊
5、了解相邻像素的概念。
依据标准的不同,我们可以关注像素P的4邻域和8
邻域
6、常见的几种距离函数:
(1)欧氏距离:
即距离等于r的像素形成以P为圆心的圆
(2) D4距离(街区距离):
即距离等于r的像素形成以P为中心的菱形
(3) D8距离(棋盘距离):
距离等于r的像素形成以P为中心的方形
7、表2.5 提取矩阵元素或子块的方法
8、表2.11 图像格式转换函数
9、读取图像文件:I=imread;显示图像:imshow(I)
10、图像和直方图的关系:多对1
11、图像的点运算:线性变换,对数变换,伽马变换,阈值变换,直方图均
衡化,直方图规定化。
12、伽玛变换又称指数变换或幂次变换,是另一种常用的灰度非线性变换。
●γ>1时,图像的高灰度区域对比度得到增强。
●γ<1时,图像的低灰度区域对比度得到增强。
●γ=1时,这一灰度变换是线性的,即不改变原图像。
15、图像平移的变换公式书P68
则平移之后的点坐标(x1,y1)变为
用矩阵表示为
对变换矩阵求逆,可以得到逆变换
即
16、表4.1 合法值
17、图像镜像的变换公式
●水平镜像的变换关系为
对矩阵求逆得到
●竖直镜像变换关系可形式化地描述如下。
逆运算为
18、空间域图像增强:图像平滑,图像锐化。
19、图像平滑(低通滤波器),包括平均平滑和高斯平滑,中值滤波 20、图像锐化(高通滤波器),包括梯度算子、拉普拉斯算子、高提升滤波和高斯-拉普拉斯变换
21、例5.1中的w 提供了一种平均的加权模式,首先在以点(x ,y )为中心3×3邻域内的点都参与了决定在新图像g 中(x ,y )点像素值的运算;而且所有系数都为1,表示它们在参与决定g (x ,y )值的过程中贡献(权重)都相同;最后前面的系数是要保证整个模板元素和为1,这里应为1/9,这样就能让新图像同原始图像保持在一个灰度范围中(如[0,255])。
22、频域原点位置的傅里叶变换为
23、幅度谱、相位谱和功率谱 幅度谱:
相位谱:φ(u,v )=argtan(Im(u,v)/Re(u,v)) 功率谱:P(u,v)=|F(u,v)|²=Re(u,v) ²+Im(u,v)²
24、幅度谱又叫频率谱,幅度谱直接反映频率信息,是频域滤波中的一个主要依据
25、频谱与其空间域图像之间的联系:低频(频谱图像中靠近中心的区域)对应着图像的慢变化分量;高频(频谱图像中远离中心的区域)对应着一幅图像中较快变化的灰度级。
电路板的灰度较为一致的背景区域就对应着频谱的低频部分,而横竖电路线条的灰度变换则是相对高频的成份,且灰度变换越剧烈,就对应着越高的频域分量
26、图像中整体灰度分布的特性,如明暗、灰度变化趋势等则是在比较大的程度上取决于对应的幅度谱,因为幅度谱反映了图像整体上各个方向的频率分量的相对强度。
27、相位谱决定图像结构,幅度谱决定图像灰度分部特性。
28、灰度的阈值变换也常被称为阈值化或二值化,可以将灰度图像转换成黑白的
二值图像;直方图修正技术—直方图均衡化又被称为灰度均衡化,是指通过某种灰度映射使图像转换为在每一灰度级上都有近似相同的像素点数的输出图像。
29、Robert 交叉梯度对应的模板为w1 = [−1 001],w2 = [0 1−1
],w1对接近+45°边缘有较强响应;w2对接近-45°边缘有较强响应;Sobel 梯度对应的模板为
w1 = [−10
1−2
2
−1
1
]w2 = [−1−2
−1
2
1
2
1
],w1对水平边缘有较大的竖直梯度;w2对竖直
边缘有较大的水平梯度。
30、跨行语句的方法是在行末使用3个半角圆点。
简答题
1、灰度图像和RGB图像的区别?
灰度图像指每个像素的信息由一个量化后的灰度级来描述的数字图像,灰度图像中不包含彩色信息。
标准灰度图像中每个像素的灰度值是0-255之间的一个值,灰度级数为256级。
RGB图像是根据三原色成像原理来实现对自然界中的色彩描述的。
红、绿、蓝这三种基色的灰度分别用256级表示,三基色之间不同的灰度组合可以形成不同的颜色。
2、简述图像几何变换和图像变换的区别?
图像几何变换:改变图像的大小或形状。
比如:图像的平移、旋转、放大、缩小等。
图像变换:通过数学映射的方法,将空域的图像信息转换到频域、时频域等空间上进行分析。
比如:傅里叶变换,小波变换等。
3、图像平滑和图像锐化有什么区别和联系?
图像平滑用于消除图像噪声,但是也容易引起边缘的模糊;图像锐化是用于增强边缘,导致高频分量增强,会使图像清晰。
联系:都属于图像增强,改善图像效果。
4、为什么进行图像增强?
图像增强是指根据特定的需要突出一幅图像中的某些信息,同时削弱或去除某些不需要的信息的处理方法。
其主要目的是使处理后的图像对某种特定的应用来说,比原始图像更适用。
因此,这类处理是为了某种应用目的而去改善图像质量的。
处理的结果使图像更适合于人的观察或机器的识别系统。
5、为什么要对傅里叶频谱图像进行对数变换?
由对数函数曲线可知,这种变换可以增强一幅图像中的较暗部分的细节;直接显示频谱时,图像显示设备的动态范围往往不能满足要求,从而丢失了大量的暗部细节。
而在使用对数变换之后,图像的动态范围被合理地非线性压缩,从而可以清晰地显示。
计算题
1、
A=->B=?
当x,y方向分别缩小到原来的0.7,0.8倍时
解:
1)变换后大小4*4——>(4*0.7)*(4*0.8)——>3*3
2)行列变换x变换后(行)(1,2,3)—x/0.7—>(1,3,4)Y变换后(列)(1,2,3)—y/0.8—>(1,3,4)
3)变换后结果B=
2、
H=1/16A=——>B=
编程题(三选一)
1、‘a.jpg’ I(m*n*3) 同一窗口显示原图,直方图,均衡化后的图,均衡化后的直方图。
clear all;clc;close all;
I=imread(‘a.jpg’);
A=rgb2gray(I);
B=im2double(I);
subplot(4,4,1);imshow(A);title(‘原图’);
subplot(4,4,2);imhist(A);title(‘原图直方图’);
subplot(4,4,3);imshow(histeq(B));title(‘均衡化后的图’);
subplot(4,4,1);imhist(histeq(B));title(‘均衡化后的直方图’);
2、对‘rise.tif’进行傅里叶变换(同窗口显示原图,未经对数变换图,经对数变换图)
clear all;clc;close all;
I=imread(‘rise.tif’);
F=fft2(im2double(I));
F=fftshift(F);
T=log(F+1);
subplot(3,3,1);imshow(I);title(‘原图’);
subplot(3,3,2);imshow(F,[]);title(‘未经对数变换图’);
subplot(3,3,3);imshow(T,[]);title(‘经对数变换图’);
3、以7*7的平均模板对a.jpg进行平均平滑滤波(显示原图,平均平滑后图像)要求:卷积滤波,重复填充边界
clear all;clc;close all;
I=imread(‘a.jpg’);
h=fspecial(‘average’,7);
I7=imfilter(I,h,’conv’,’replicate’);
subplot(2,2,1);imshow(I);title(‘原图’);
subplot(2,2,2);imshow(I7);title(‘平均平滑后图像’);。