maab基础练习题带答案

合集下载

(完整版)matlab基础练习题(带答案)

(完整版)matlab基础练习题(带答案)

Matlab 基础练习题常量、变量、表达式1、 MATLAB 中,下面哪些变量名是合法的?( )(A )_num (B )num_ (C )num- (D )-num 2、 在MA TLAB 中,要给出一个复数z 的模,应该使用( )函数。

(A )mod(z) (B )abs(z) (C )double(z) (D )angle(z) 3、 下面属于MATLAB 的预定义特殊变量的是?( )(A )eps (B )none (C )zero (D )exp4、 判断:在MA TLAB 的内存工作区中,存放一个英文字符 'a' 需要占用1个字节,存放一个中文字符‘啊’需要占用2个字节。

( 错,都是2个字节 )5、 判断:MA TLAB 中,i 和j ( 对 )6、 判断:MA TLAB 中,pi 代表圆周率,它等于3.14。

( 错,后面还有很多位小数 )7、 在MA TLAB 中,若想计算的51)3.0sin(21+=πy 值,那么应该在MA TLAB 的指令窗中输入的MA TLAB 指令是__y1=2*sin(0.3*pi)/(1+sqrt(5))_。

8、 在MA TLAB 中,a = 1,b = i ,则a 占_8__个字节,b 占_16_个字节,c 占________字节。

9、 在MA TLAB 中,inf 的含义是__无穷大__,nan 的含义是__非数(结果不定)___。

数组1、 在MA TLAB 中,X 是一个一维数值数组,现在要把数组X 中的所有元素按原来次序的逆序排列输出,应该使用下面的( )指令。

(A )X[end:1] (B )X[end:-1:1] (C )X (end:-1:1) (D )X(end:1) 2、 在MA TLAB 中,A 是一个字二维数组,要获取A 的行数和列数,应该使用的MATLAB的命令是( )。

(A )class(A) (B )sizeof(A) (C )size(A) (D )isa(A)3、 在MATLAB 中,用指令x=1:9生成数组x 。

matlab入门习题答案

matlab入门习题答案

matlab入门习题答案MATLAB入门习题答案MATLAB是一种强大的数学软件工具,广泛应用于工程、科学和计算领域。

它具有丰富的功能和灵活的编程语言,使得用户可以轻松地进行数据分析、可视化、模拟和算法开发。

在学习MATLAB的过程中,习题是一个很好的学习方法,通过练习可以加深对MATLAB的理解和掌握。

下面是一些MATLAB入门习题的答案,希望对初学者有所帮助。

1. 编写一个MATLAB程序,计算1到100之间所有奇数的和。

```matlabsum = 0;for i = 1:2:100sum = sum + i;enddisp(sum);```2. 编写一个MATLAB程序,计算一个矩阵的转置矩阵。

```matlabA = [1 2 3; 4 5 6; 7 8 9];B = A';disp(B);```3. 编写一个MATLAB程序,生成一个包含1到10的整数的向量,并计算向量中所有元素的平均值。

```matlabvec = 1:10;avg = mean(vec);disp(avg);```4. 编写一个MATLAB程序,绘制正弦函数的图像。

```matlabx = 0:0.1:2*pi;y = sin(x);plot(x, y);```通过以上习题的练习,相信大家对MATLAB的基本语法和功能有了更深入的了解。

当然,MATLAB的学习是一个持续的过程,希望大家能够坚持练习,不断提升自己的编程能力。

同时,也欢迎大家分享更多的MATLAB习题答案,让我们一起学习进步。

maab部分题解

maab部分题解

(a). x(n) = 5(0.8) n µ(n)
(b). x(n) = 2(0.95) n+2 µ(n − 2)
(c). x(n) = n(0.6)n µ(n)
(d). x(n) = 5(−0.8)n cos(0.1π n)µ(n)
(e). x(n) = (n + 1)(−0.8)n−2 µ(n − 2)
10.0441
9.3859 25.3083 29.2556 29.9705 43.1808 43.7591
27.9580 24.0913 23.3864 10.1609
9.5726 25.3724 29.2410
29.9471
题 3-3 用解析法求出以下各序列的 DTFT.用 MATLAB 画出 X (e jω ) 的幅值和相角曲线.
[x1,nx1]=seqadd(y3,ny3,-2*x,nx)
% x1(n)=y3(n)-2x(n)
stem(nx1,x1) 答案 x1= 3 -6 10 22 -23 12 41 -18 -16 6 -5 8 10
nx1= [-1:11]
题 2-6 一个特定的线性和时不变系统,描述它的差分方程如下:
% 输入量数组 % 量化后输出 % 量化步长值 % 此输出对应的量化单位数(十进制) % 此输出对应的量化单位数(12 位二进制)
题 2-3. 令 x(n) = [1,-2,4,6,-5,8,10]. 产生并画出下列序列的样本. x1(n)=3x(n+2)+x(n-4)-2x(n)
解:解题的程序为:
(b). 如果原序列是一个因果的复序列 x(n),能不能同样做到? 解:(a).由于因果序列在 n≥0 区域的 x(-n)=0, 故 xe(n)= [x(n)+x(-n)]/2= x(n)/2, 即 x(n)=2xe(n)。同样,如果已知其奇序列部分 xo(n),根据 xo(n)= [x(n)-x(-n)]/2=

matlab复习题标准答案

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中的函数文件和脚本文件的区别。

- 答案:函数文件通常包含返回值和参数,可以被其他脚本或函数调用;而脚本文件主要用于执行一系列命令,不包含返回值。

maab课后习题答案到章

maab课后习题答案到章

习题二1.如何理解“矩阵是MATLAB最基本的数据对象”答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。

因此,矩阵是MATLAB最基本、最重要的数据对象。

2.设A和B是两个同维同大小的矩阵,问:(1)A*B和A.*B的值是否相等答:不相等。

(2) A./B和B.\A的值是否相等答:相等。

(3)A/B和B\A的值是否相等答:不相等。

(4)A/B和B\A所代表的数学含义是什么答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵的逆左乘A矩阵,即inv(B)*A。

3.写出完成下列操作的命令。

(1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。

答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5])(2)删除矩阵A的第7号元素。

答:A(7)=[](3)将矩阵A的每个元素值加30。

答:A=A+30;(4)求矩阵A的大小和维数。

答:size(A);ndims(A);(5)将向量t的0元素用机器零来代替。

答:t(find(t==0))=eps;(6)将含有12个元素的向量x转换成34⨯矩阵。

答:reshape(x,3,4);(7)求一个字符串的ASCII码。

答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。

答:char(49);4.下列命令执行后,L1、L2、L3、L4的值分别是多少A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为[0, 0, 0, 0, 1, 0,0, 0, 0]L2的值为[1, 1, 1, 1,1, 0, 0, 0, 0]L3的值为[0, 0, 0, 1,1, 1, 0, 0, 0]L4的值为[4, 5, 6]5.已知完成下列操作:(1)取出A的前3行构成矩阵B,前两列构成矩阵C,右下角32⨯子矩阵构成矩阵D,B与C的乘积构成矩阵E。

Ma ab基础与应用 期末考试 试题 参考试卷 附答案

Ma ab基础与应用 期末考试 试题 参考试卷 附答案
4. 绘制函数曲线,要求写出程序代码(12 分)
(1)在区间[0:2π]均匀的取 50 个点,构成向量 t。
第 8 页 共 12 页
(2)在同一窗口绘制曲线 y1=sin(2*t-0.3); y2=3cos(t+0.5);要求 y1 曲 线为红色点划线,标记点为圆圈;y2 为蓝色虚线,标记点为星号
【答案】
C= 010 101
D= 000 0ห้องสมุดไป่ตู้0
E= 111 111
2. 将矩阵 a=[4 2;5 7], b=[7 1;8 3], c=[5 9;6 2]组合成两个新矩阵: (1)组合成一个43的矩阵,第一列为按列顺序排列的a矩阵元素,第二 列为按列顺序排列的b矩阵元素,第三列为按列顺序排列的c矩阵元素,即
WorkSpace
中,要产生矩阵
D=
(aij

cij
⁄bicjij
)
m∗n
,可用命
第 6 页 共 12 页

, 计 算 行 列 式 |(A′B)−1| 可 用 命

;
【答案】 D=(A-C)/(B) ^C
det(inv(A’*B)
9. 已知 A 是矩阵,求 A 的对角矩阵函数是
下三角矩阵函数是

,求 A 的
【答案】 diag
tril
10. A=[1,2,3;4,5,6]; A(:,[1,3])=[];A=

【答案】 [2;5]
三、写出程序的执行结果或写出给定要求的指令(总共 30 分)
1. 写出执行以下代码后 C,D,E 的值 (6 分) >> A=[1 2 3; 4 5 6]; >> B=[8 -7 4; 3 6 2]; >> C=A>B >> D=A==B >> E=A~=B

MATLAB基础训练作业(含答案)

MATLAB基础训练作业(含答案)

实验一 MATLAB 工作环境熟悉及简单命令的执行一、实验目的:熟悉MATLAB 的工作环境,学会使用MATLAB 进行一些简单的运算。

二、实验内容:MATLAB 的启动和退出,熟悉MATLAB 的桌面(Desktop ),包括菜单(Menu )、工具条 (Toolbar )、命令窗口(Command Window)、历史命令窗口、工作空间(Workspace)等;完成一些基本的矩阵操作;学习使用在线帮助系统。

三、实验步骤:1、启动MATLAB ,熟悉MATLAB 的桌面。

2、在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。

(1)(365-52⨯2-70)÷3(2)>>area=pi*2.5^2(3)已知x=3,y=4,在MATLAB 中求z :()232y x y x z -= (4)将下面的矩阵赋值给变量m1,在workspace 中察看m1在内存中占用的字节数。

m1=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡11514412679810115133216 执行以下命令>>m1( 2 , 3 )>>m1( 11 )>>m1( : , 3 )>>m1( 2 : 3 , 1 : 3 )>>m1( 1 ,4 ) + m1( 2 ,3 ) + m1( 3 ,2 ) + m1( 4 ,1)(5)执行命令>>help abs查看函数abs 的用法及用途,计算abs( 3 + 4i )(6)执行命令>>x=0:0.1:6*pi;>>y=5*sin(x);>>plot(x,y)(6)运行MATLAB 的演示程序,>>demo ,以便对MATLAB 有一个总体了解。

四、思考题1、以下变量名是否合法?为什么?(1)x2(2)3col(3)_row(4)for2、求以下变量的值,并在MATLAB 中验证。

matlab习题及答案

matlab习题及答案

matlab习题及答案Matlab习题及答案Matlab是一种强大的数学计算软件,被广泛应用于科学计算、数据分析和工程设计等领域。

在学习和使用Matlab的过程中,习题是一种非常有效的学习方式。

本文将给出一些常见的Matlab习题及其答案,帮助读者更好地掌握Matlab的使用技巧。

一、基础习题1. 计算1到100之间所有奇数的和。

解答:```matlabsum = 0;for i = 1:2:100sum = sum + i;enddisp(sum);```2. 编写一个函数,计算任意两个数的最大公约数。

解答:```matlabfunction gcd = computeGCD(a, b)while b ~= 0temp = b;a = temp;endgcd = a;end```3. 编写一个程序,生成一个5×5的随机矩阵,并计算矩阵的行和列的平均值。

解答:```matlabmatrix = rand(5);row_average = mean(matrix, 2);col_average = mean(matrix);disp(row_average);disp(col_average);```二、进阶习题1. 编写一个程序,实现插入排序算法。

解答:```matlabfunction sorted_array = insertionSort(array)n = length(array);for i = 2:nj = i - 1;while j > 0 && array(j) > keyarray(j+1) = array(j);j = j - 1;endarray(j+1) = key;endsorted_array = array;end```2. 编写一个程序,实现矩阵的转置。

解答:```matlabfunction transposed_matrix = transposeMatrix(matrix) [m, n] = size(matrix);transposed_matrix = zeros(n, m);for i = 1:mfor j = 1:ntransposed_matrix(j, i) = matrix(i, j);endendend```3. 编写一个程序,实现二分查找算法。

matlab基础与应用部分习题答案

matlab基础与应用部分习题答案

作业一4、写出完成下列操作的命令。

(1)将矩阵 A 第2~5 行中第1,3,5 列元素赋给矩阵B。

>> M=[0:1:48];>> A=reshape(M,7,7)0 7 14 21 28 35 421 8 15 22 29 36 432 9 16 23 30 37 443 10 17 24 31 38 454 11 18 25 32 39 465 12 19 26 33 40 476 13 20 27 34 41 48 >> B=A(2:5,1:2:5)B =1 15 292 16 303 17 314 18 32( 2)删除矩阵 A 的第七行元素。

>> A(7,:)=[]A =0 7 14 21 28 35 421 8 15 22 29 36 432 9 16 23 30 37 443 10 17 24 31 38 454 11 18 25 32 39 465 12 19 26 33 40 47 (3) 将矩阵A 的每个元素值加30。

>> A=A+30A =30 37 44 51 58 65 7231 38 45 52 59 66 7332 39 46 53 60 67 7433 40 47 54 61 68 7534 41 48 55 62 69 7635 42 49 56 63 70 77(4 求矩阵A 的大小和维素。

sizeA = size(A)dA = ndims(A) sizeA = dA =2(5)将向量t的0元素用机器零来代替。

>> t=[1 2 3 4 0 5];t =1 2 3 4 0 5>> find(t==0)ans =5>> t(5)=epst =1.00002.00003.00004.0000 0.00005.0000(6)将含有12个元素的向量x 转换成3*4 矩阵。

>> x=[0:11]x =0 1 2 3 4 5 6 7 8 9 10 >>11 y=reshape(x,3,4)y =0 3 6 91 4 7 102 5 8 117)求一个字符串的ASCII。

matlab基础练习题及答案

matlab基础练习题及答案

第1章MATLAB基础1.4 MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?答:在MATLAB操作桌面上有五个窗口。

在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口。

在独立窗口的Desktop菜单中选择Dock...项就可以将独立的窗口重新放置到桌面上。

1.5 如何启动M文件编辑/调试器?答:在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。

在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。

1.6 存储在工作空间中的数组能编辑吗?如何操作?答:存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。

1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?答:命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。

1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别?答:当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的Set Path菜单项来完成。

在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。

1.9 在MATLAB中有几种获得帮助的途径?答:(1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的MATLAB Help菜单项可以打开帮助浏览器。

Maab考试题库答案

Maab考试题库答案

填空题1、标点符号; %—用来表示该行为注释行。

可以使命令行不显示运算结果,2、x 为0 ~4pi ,步长为 的向量,使用命令 x=0:*pi:4*pi 创建。

3、输入矩阵A=[1323−57569] ,使用全下标方式用A(2,2)取出元素“-5 ”,使用单下标方式用A(5)取出元素“-5 ”。

4、符号表达式sin(2*a+t)+m 中独立的符号变量为 t 。

5、M 脚本文件和M 函数文件的主要区别是M 脚本文件没有函数定义和M 函数文件有函数定义_______。

6. 设x 是一维数组,x 的倒数第3个元素表示为x(_end-2_)设y 为二维数组,要删除y 的第34行和48列,可使用命令y(34,:)=[] ;y(:,48)=[];7. 将变量x 以Ascii 文本格式存储到文件,应使用命令 save _x ;8. 在while 表达式, 语句体, End 循环语句中,表达式的值 非零 时表示循环条件为真,语句体将被执行,否则跳出该循环语句;9.要从键盘读入一个字符串并赋值给变量x ,且给出提示“Who is she ”,应使用命令x=input(‘Who is she’,’s’) ;10.设A=(a ij )m ∗n 和B=(b ij )m ∗n 和C=(c ij )m ∗n 均为m*n 矩阵,且存在于WorkSpace 中,要产生矩阵D=(a ij −c ij b ij c ij ⁄)m ∗n ,可用命令D=(A-C)/B.^C , 计算|(A ′B )−1| 可用命令det(inv(A’*B)11. 在MATLAB 命令窗口中的“>>”标志为MATLAB 的 命令行 提示符,“│”标志为 输入 提示符。

12.已知A=[1 2 3;4 5 0;7 8 9];B=[1 0 3;1 5 0;0 1 2];写出下列各指令运行的结果。

A+B ;A.*B ;A==B ;ans= [2,2,6;5,10,0;7,9,11]ans= [1,0,9;4,25,0;0,8,18]ans= [1,0,1;0,1,1;0,0,0]13.已知A 是矩阵,求A 的对角矩阵函数是 diag ;求A 的下三角矩阵函数是 tril 。

MatLab考试题题库(带答案)

MatLab考试题题库(带答案)

MatLab 考试题题库(必做题)(带答案)一,1.请登陆美国MathWorks公司的网站,查看看现在大概有多少本MATLAB-based books (以MATLAB为基本软件,来说明各个专业领域的教科书或工具书)。

哪一个领域的MATLAB-based books最多中文书共有几本答: 1612 本,数学方面的最多,中文书共有37 本。

2.请在 MATLAB 中直接输入下列常数,看它们的值是多少:a.ib.jc.epsd.infe.nanf.pig.realmaxh.realmin依次解为: ans = 0 +ans = 0 +ans =ans =Inf ans = NaN ans =ans = +308ans =3.试写一函数regPolygon(n) ,其功能为画出一个圆心在(0, 0)、半径为 1 的圆,并在圆内画出一个内接正n 边形,其中一顶点位于(0, 1)。

例如regPolygon(8)可以画出如下之正八边型:解:新建文件如下:function y=regPolyfon(n)n=8;%要画的 n 边形R=1; %圆的半径t=0::2*pi;x=R*cos(t);y=R*sin(t);m=linspace(pi/ 2,5/2*pi,n+1);xz=R*cos(m);yz=R*sin(m);hold onplot(x,y,xz,yz);axis 'equal';4.一条参数式的曲线可由下列方程式表示:x= sin(t), y = 1 - cos(t) + t/10当 t 由 0 变化到4*pi时,请写一个MATLAB 的脚本,画出此曲线在XY 平面的轨迹。

解:新建:t = linspace(0, 4*pi);x = sin(t);y = 1-cos(t)+t/10;plot(x, y, '-o');32.521.510.5-1-0.8-0.6-0.4-0.200.20.40.60.815.当一个小圆轮沿着一条曲线行进时,轮缘任一点的轨迹就会产生变化丰富的摆线。

Maab考试题库答案

Maab考试题库答案

填空题1、标点符号; %—用来表示该行为注释行。

可以使命令行不显示运算结果,2、x 为0 ~4pi ,步长为0.1pi 的向量,使用命令 x=0:0.1*pi:4*pi 创建。

3、输入矩阵A=[1323−57569] ,使用全下标方式用A(2,2)取出元素“-5 ”,使用单下标方式用A(5)取出元素“-5 ”。

4、符号表达式sin(2*a+t)+m 中独立的符号变量为 t 。

5、M 脚本文件和M 函数文件的主要区别是M 脚本文件没有函数定义和M 函数文件有函数定义_______。

6. 设x 是一维数组,x 的倒数第3个元素表示为x(_end-2_)设y 为二维数组,要删除y 的第34行和48列,可使用命令y(34,:)=[] ;y(:,48)=[];7. 将变量x 以Ascii 文本格式存储到文件fname.txt ,应使用命令 save _x ;8. 在while 表达式, 语句体, End 循环语句中,表达式的值 非零 时表示循环条件为真,语句体将被执行,否则跳出该循环语句;9.要从键盘读入一个字符串并赋值给变量x ,且给出提示“Who is she?”,应使用命令x=input(‘Who is she?’,’s’) ;10.设A=(a ij )m∗n 和B=(b ij )m∗n 和C=(c ij )m∗n 均为m*n 矩阵,且存在于WorkSpace 中,要产生矩阵D=(a ij −c ij b ij c ij ⁄)m∗n ,可用命令D=(A-C)/B.^C ,计算|(A ′B )−1| 可用命令det(inv(A’*B) 11. 在MATLAB 命令窗口中的“>>”标志为MATLAB 的 命令行 提示符,“│”标志为 输入 提示符。

12.已知A=[1 2 3;4 5 0;7 8 9];B=[1 0 3;1 5 0;0 1 2];写出下列各指令运行的结果。

A+B ;A.*B ;A==B ;ans= [2,2,6;5,10,0;7,9,11]ans= [1,0,9;4,25,0;0,8,18]ans= [1,0,1;0,1,1;0,0,0]13.已知A 是矩阵,求A 的对角矩阵函数是 diag ;求A 的下三角矩阵函数是 tril 。

MAAB数学实验第二版答案胡良剑

MAAB数学实验第二版答案胡良剑

数学实验答案Chapter 1Page20,ex1(5) 等于[exp(1),exp(2);exp(3),exp(4)](7) 3=1*3, 8=2*4(8) a为各列最小值,b为最小值所在的行号(10) 1>=4,false, 2>=3,false, 3>=2, ture, 4>=1,ture(11) 答案表明:编址第2元素满足不等式(30>=20)和编址第4元素满足不等式(40>=10)(12) 答案表明:编址第2行第1列元素满足不等式(30>=20)和编址第2行第2列元素满足不等式(40>=10)Page20, ex2(1)a, b, c的值尽管都是1,但数据类型分别为数值,字符,逻辑,注意a与c相等,但他们不等于b(2)double(fun)输出的分别是字符a,b,s,(,x,)的ASCII码Page20,ex3>> r=2;p=0.5;n=12;>> T=log(r)/n/log(1+0.01*p)Page20,ex4>> x=-2:0.05:2;f=x.^4-2.^x;>> [fmin,min_index]=min(f)最小值最小值点编址>> x(min_index)ans =0.6500 最小值点>> [f1,x1_index]=min(abs(f)) 求近似根--绝对值最小的点f1 =0.0328x1_index =24>> x(x1_index)ans =-0.8500>> x(x1_index)=[];f=x.^4-2.^x; 删去绝对值最小的点以求函数绝对值次小的点>> [f2,x2_index]=min(abs(f)) 求另一近似根--函数绝对值次小的点f2 =0.0630x2_index =65>> x(x2_index)ans =1.2500Page20,ex5>> z=magic(10)z =92 99 1 8 15 67 74 51 58 4098 80 7 14 16 73 55 57 64 414 81 88 20 22 54 56 63 70 4785 87 19 21 3 60 62 69 71 2886 93 25 2 9 61 68 75 52 3417 24 76 83 90 42 49 26 33 6523 5 82 89 91 48 30 32 39 6679 6 13 95 97 29 31 38 45 7210 12 94 96 78 35 37 44 46 5311 18 100 77 84 36 43 50 27 59>> sum(z)>> sum(diag(z))>> z(:,2)/sqrt(3)>> z(8,:)=z(8,:)+z(3,:)Chapter 2Page 45 ex1先在编辑器窗口写下列M函数,保存为eg2_1.m function [xbar,s]=ex2_1(x)n=length(x);xbar=sum(x)/n;s=sqrt((sum(x.^2)-n*xbar^2)/(n-1)); 例如>>x=[81 70 65 51 76 66 90 87 61 77]; >>[xbar,s]=ex2_1(x)Page 45 ex2s=log(1);n=0;while s<=100n=n+1;s=s+log(1+n);endm=nPage 40 ex3clear;F(1)=1;F(2)=1;k=2;x=0;e=1e-8; a=(1+sqrt(5))/2;while abs(x-a)>ek=k+1;F(k)=F(k-1)+F(k-2); x=F(k)/F(k-1); enda,x,k计算至k=21可满足精度Page 45 ex4clear;tic;s=0;for i=1:1000000s=s+sqrt(3)/2^i;ends,toctic;s=0;i=1;while i<=1000000s=s+sqrt(3)/2^i;i=i+1;ends,toctic;s=0;i=1:1000000;s=sqrt(3)*sum(1./2.^i);s,tocPage 45 ex5t=0:24;c=[15 14 14 14 14 15 16 18 20 22 23 25 28 ...31 32 31 29 27 25 24 22 20 18 17 16];plot(t,c)Page 45 ex6(1)x=-2:0.1:2;y=x.^2.*sin(x.^2-x-2);plot(x,y)y=inline('x^2*sin(x^2-x-2)');fplot(y,[-2 2]) (2)参数方法t=linspace(0,2*pi,100);x=2*cos(t);y=3*sin(t); plot(x,y)(3)x=-3:0.1:3;y=x;[x,y]=meshgrid(x,y);z=x.^2+y.^2;surf(x,y,z)(4)x=-3:0.1:3;y=-3:0.1:13;[x,y]=meshgrid(x,y);z=x.^4+3*x.^2+y.^2-2*x-2*y-2*x.^2.*y+6;surf(x,y,z)(5)t=0:0.01:2*pi;x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z)(6)theta=linspace(0,2*pi,50);fai=linspace(0,pi/2,20); [theta,fai]=meshgrid(theta,fai);x=2*sin(fai).*cos(theta);y=2*sin(fai).*sin(theta);z=2*cos(fai);surf(x,y,z)(7)x=linspace(0,pi,100);y1=sin(x);y2=sin(x).*sin(10*x);y3=-sin(x);plot(x,y1,x,y2,x,y3)page45, ex7x=-1.5:0.05:1.5;y=1.1*(x>1.1)+x.*(x<=1.1).*(x>=-1.1)-1.1*(x<-1.1); plot(x,y)page45,ex9clear;close;x=-2:0.1:2;y=x;[x,y]=meshgrid(x,y);a=0.5457;b=0.7575;p=a*exp(-0.75*y.^2-3.75*x.^2-1.5*x).*(x+y>1);p=p+b*exp(-y.^2-6*x.^2).*(x+y>-1).*(x+y<=1);p=p+a*exp(-0.75*y.^2-3.75*x.^2+1.5*x).*(x+y<=-1);mesh(x,y,p)page45, ex10lookfor lyapunovhelp lyap>> A=[1 2 3;4 5 6;7 8 0];C=[2 -5 -22;-5 -24 -56;-22 -56 -16]; >> X=lyap(A,C)X =1.0000 -1.0000 -0.0000-1.0000 2.0000 1.0000-0.0000 1.0000 7.0000Chapter 3Page65 Ex1>> a=[1,2,3];b=[2,4,3];a./b,a.\b,a/b,a\bans =0.5000 0.5000 1.0000ans =2 2 1ans =0.6552 一元方程组x[2,4,3]=[1,2,3]的近似解ans =0 0 00 0 00.6667 1.3333 1.0000矩阵方程[1,2,3][x11,x12,x13;x21,x22,x23;x31,x32,x33]=[2,4,3]的特解Page65 Ex 2(1)>> A=[4 1 -1;3 2 -6;1 -5 3];b=[9;-2;1];>> rank(A), rank([A,b]) [A,b]为增广矩阵ans =ans =3 可见方程组唯一解>> x=A\bx =2.38301.48942.0213(2)>> A=[4 -3 3;3 2 -6;1 -5 3];b=[-1;-2;1]; >> rank(A), rank([A,b])ans =3ans =3 可见方程组唯一解>> x=A\b-0.4706-0.2941(3)>> A=[4 1;3 2;1 -5];b=[1;1;1]; >> rank(A), rank([A,b])ans =2ans =3 可见方程组无解>> x=A\bx =0.3311-0.1219 最小二乘近似解(4)>> a=[2,1,-1,1;1,2,1,-1;1,1,2,1];b=[1 2 3]';%注意b的写法>> rank(a),rank([a,b])ans =3ans =3 rank(a)==rank([a,b])<4说明有无穷多解>> a\bans =110 一个特解Page65 Ex3>> a=[2,1,-1,1;1,2,1,-1;1,1,2,1];b=[1,2,3]';>> x=null(a),x0=a\bx =0.6255-0.20850.4170x0 =11通解kx+x0Page65 Ex 4>> x0=[0.2 0.8]';a=[0.99 0.05;0.01 0.95]; >> x1=a*x, x2=a^2*x, x10=a^10*x>> x=x0;for i=1:1000,x=a*x;end,xx =0.8333>> x0=[0.8 0.2]';>> x=x0;for i=1:1000,x=a*x;end,x x =0.83330.1667>> [v,e]=eig(a)v =0.9806 -0.70710.1961 0.7071e =1.0000 00 0.9400>> v(:,1)./xans =1.17671.1767 成比例,说明x是最大特征值对应的特征向量Page65 Ex5用到公式(3.11)(3.12)>> B=[6,2,1;2.25,1,0.2;3,0.2,1.8];x=[25 5 20]'; >> C=B/diag(x)C =0.2400 0.4000 0.05000.0900 0.2000 0.01000.1200 0.0400 0.0900>> A=eye(3,3)-CA =0.7600 -0.4000 -0.0500-0.0900 0.8000 -0.0100-0.1200 -0.0400 0.9100>> D=[17 17 17]';x=A\Dx =37.569625.786224.7690Page65 Ex 6(1)>> a=[4 1 -1;3 2 -6;1 -5 3];det(a),inv(a),[v,d]=eig(a) ans =-94ans =0.2553 -0.0213 0.04260.1596 -0.1383 -0.22340.1809 -0.2234 -0.0532v =0.0185 -0.9009 -0.3066-0.7693 -0.1240 -0.7248-0.6386 -0.4158 0.6170-3.0527 0 00 3.6760 00 0 8.3766(2)>> a=[1 1 -1;0 2 -1;-1 2 0];det(a),inv(a),[v,d]=eig(a) ans =1ans =2.0000 -2.0000 1.00001.0000 -1.0000 1.00002.0000 -3.0000 2.0000v =-0.5773 0.5774 + 0.0000i 0.5774 - 0.0000i-0.5773 0.5774 0.5774-0.5774 0.5773 - 0.0000i 0.5773 + 0.0000i1.0000 0 00 1.0000 + 0.0000i 00 0 1.0000 - 0.0000i(3)>> A=[5 7 6 5;7 10 8 7;6 8 10 9;5 7 9 10]A =5 76 57 10 8 76 8 10 95 7 9 10>> det(A),inv(A), [v,d]=eig(A)ans =1ans =68.0000 -41.0000 -17.0000 10.0000-41.0000 25.0000 10.0000 -6.0000 -17.0000 10.0000 5.0000 -3.0000 10.0000 -6.0000 -3.0000 2.0000v =0.8304 0.0933 0.3963 0.3803-0.5016 -0.3017 0.6149 0.5286-0.2086 0.7603 -0.2716 0.55200.1237 -0.5676 -0.6254 0.5209d =0.0102 0 0 00 0.8431 0 00 0 3.8581 00 0 0 30.2887(4)(以n=5为例)方法一(三个for)n=5;for i=1:n, a(i,i)=5;endfor i=1:(n-1),a(i,i+1)=6;endfor i=1:(n-1),a(i+1,i)=1;enda方法二(一个for)n=5;a=zeros(n,n);a(1,1:2)=[5 6];for i=2:(n-1),a(i,[i-1,i,i+1])=[1 5 6];enda(n,[n-1 n])=[1 5];a方法三(不用for)n=5;a=diag(5*ones(n,1));b=diag(6*ones(n-1,1));c=diag(ones(n-1,1));a=a+[zeros(n-1,1),b;zeros(1,n)]+[zeros(1,n);c,zeros(n-1,1)] 下列计算>> det(a)ans =665>> inv(a)ans =0.3173 -0.5865 1.0286 -1.6241 1.9489 -0.0977 0.4887 -0.8571 1.3534 -1.6241 0.0286 -0.1429 0.5429 -0.8571 1.0286 -0.0075 0.0376 -0.1429 0.4887 -0.5865 0.0015 -0.0075 0.0286 -0.0977 0.3173 >> [v,d]=eig(a)v =-0.7843 -0.7843 -0.9237 0.9860 -0.9237 0.5546 -0.5546 -0.3771 -0.0000 0.3771 -0.2614 -0.2614 0.0000 -0.1643 0.0000 0.0924 -0.0924 0.0628 -0.0000 -0.0628-0.0218 -0.0218 0.0257 0.0274 0.0257d =0.7574 0 0 0 00 9.2426 0 0 00 0 7.4495 0 00 0 0 5.0000 00 0 0 0 2.5505Page65 Ex 7(1)>> a=[4 1 -1;3 2 -6;1 -5 3];[v,d]=eig(a) v =0.0185 -0.9009 -0.3066-0.7693 -0.1240 -0.7248-0.6386 -0.4158 0.6170d =-3.0527 0 00 0 8.3766>> det(v)ans =-0.9255 %v行列式正常, 特征向量线性相关,可对角化>> inv(v)*a*v 验算ans =-3.0527 0.0000 -0.00000.0000 3.6760 -0.0000-0.0000 -0.0000 8.3766>> [v2,d2]=jordan(a) 也可用jordanv2 =0.0798 0.0076 0.91270.1886 -0.3141 0.1256-0.1605 -0.2607 0.4213 特征向量不同d2 =0 -3.0527 - 0.0000i 00 0 3.6760 + 0.0000i>> v2\a*v2ans =8.3766 0 0.00000.0000 -3.0527 0.00000.0000 0.0000 3.6760>> v(:,1)./v2(:,2) 对应相同特征值的特征向量成比例ans =2.44912.44912.4491(2)>> a=[1 1 -1;0 2 -1;-1 2 0];[v,d]=eig(a)v =-0.5773 0.5774 + 0.0000i 0.5774 - 0.0000i-0.5773 0.5774 0.5774-0.5774 0.5773 - 0.0000i 0.5773 + 0.0000id =1.0000 0 00 1.0000 + 0.0000i 00 0 1.0000 - 0.0000i>> det(v)ans =-5.0566e-028 -5.1918e-017i v的行列式接近0, 特征向量线性相关,不可对角化>> [v,d]=jordan(a)v =1 0 11 0 01 -1 0d =0 1 10 0 1 jordan标准形不是对角的,所以不可对角化 (3)>> A=[5 7 6 5;7 10 8 7;6 8 10 9;5 7 9 10]A =5 76 57 10 8 76 8 10 95 7 9 10>> [v,d]=eig(A)v =0.8304 0.0933 0.3963 0.3803-0.5016 -0.3017 0.6149 0.5286-0.2086 0.7603 -0.2716 0.55200.1237 -0.5676 -0.6254 0.52090.0102 0 0 00 0.8431 0 00 0 3.8581 00 0 0 30.2887>> inv(v)*A*vans =0.0102 0.0000 -0.0000 0.00000.0000 0.8431 -0.0000 -0.0000-0.0000 0.0000 3.8581 -0.0000-0.0000 -0.0000 0 30.2887本题用jordan不行, 原因未知(4)参考6(4)和7(1)Page65 Exercise 8只有(3)对称, 且特征值全部大于零, 所以是正定矩阵.Page65 Exercise 9(1)>> a=[4 -3 1 3;2 -1 3 5;1 -1 -1 -1;3 -2 3 4;7 -6 -7 0] >> rank(a)ans =3>> rank(a(1:3,:))ans =2>> rank(a([1 2 4],:)) 1,2,4行为最大无关组ans =3>> b=a([1 2 4],:)';c=a([3 5],:)';>> b\c 线性表示的系数ans =0.5000 5.00000 -5.0000Page65 Exercise 10>> a=[1 -2 2;-2 -2 4;2 4 -2] >> [v,d]=eig(a)v =0.3333 0.9339 -0.12930.6667 -0.3304 -0.6681-0.6667 0.1365 -0.7327d =-7.0000 0 00 2.0000 00 0 2.0000>> v'*vans =1.0000 0.0000 0.00000.0000 0 1.0000 v确实是正交矩阵Page65 Exercise 11设经过6个电阻的电流分别为i1, ..., i6. 列方程组如下20-2i1=a; 5-3i2=c; a-3i3=c; a-4i4=b; c-5i5=b; b-3i6=0;i1=i3+i4;i5=i2+i3;i6=i4+i5;计算如下>> A=[1 0 0 2 0 0 0 0 0;0 0 1 0 3 0 0 0 0;1 0 -1 0 0 -3 0 0 0; 1 -1 0 0 0 0 -4 0 0;0 -1 1 0 0 0 0 -5 0;0 1 0 0 0 0 0 0 -3; 0 0 0 1 0 -1 -1 0 0;0 0 0 0 -1 -1 0 1 0;0 0 0 0 0 0 -1 -1 1];>>b=[20 5 0 0 0 0 0 0 0]'; A\bans =13.34536.44018.5420-1.18071.60111.72630.42042.1467Page65 Exercise 12>> A=[1 2 3;4 5 6;7 8 0];>> left=sum(eig(A)), right=sum(trace(A))left =6.0000right =6>> left=prod(eig(A)), right=det(A) 原题有错, (-1)^n应删去left =27.000027>> fA=(A-p(1)*eye(3,3))*(A-p(2)*eye(3,3))*(A-p(3)*eye(3,3)) fA =1.0e-012 *0.0853 0.1421 0.02840.1421 0.1421 0-0.0568 -0.1137 0.1705>> norm(fA) f(A)范数接近0ans =2.9536e-013Chapter 4Page84 Exercise 1(1)roots([1 1 1])(2)roots([3 0 -4 0 2 -1])(3)p=zeros(1,24);p([1 17 18 22])=[5 -6 8 -5];roots(p)(4)p1=[2 3];p2=conv(p1, p1);p3=conv(p1, p2);p3(end)=p3(end)-4; %原p3最后一个分量-4roots(p3)Page84 Exercise 2fun=inline('x*log(sqrt(x^2-1)+x)-sqrt(x^2-1)-0.5*x'); fzero(fun,2)Page84 Exercise 3fun=inline('x^4-2^x');fplot(fun,[-2 2]);grid on;fzero(fun,-1),fzero(fun,1),fminbnd(fun,0.5,1.5)Page84 Exercise 4fun=inline('x*sin(1/x)','x');fplot(fun, [-0.1 0.1]);x=zeros(1,10);for i=1:10, x(i)=fzero(fun,(i-0.5)*0.01);end;x=[x,-x]Page84 Exercise 5fun=inline('[9*x(1)^2+36*x(2)^2+4*x(3)^2-36;x(1)^2-2*x(2)^2-20*x(3);16*x(1)-x( 1)^3-2*x(2)^2-16*x(3)^2]','x');[a,b,c]=fsolve(fun,[0 0 0])Page84 Exercise 6fun=@(x)[x(1)-0.7*sin(x(1))-0.2*cos(x(2)),x(2)-0.7*cos(x(1))+0.2*sin(x(2))]; [a,b,c]=fsolve(fun,[0.5 0.5])Page84 Exercise 7clear; close; t=0:pi/100:2*pi;x1=2+sqrt(5)*cos(t); y1=3-2*x1+sqrt(5)*sin(t);x2=3+sqrt(2)*cos(t); y2=6*sin(t);plot(x1,y1,x2,y2); grid on; 作图发现4个解的大致位置,然后分别求解y1=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[1.5,2] )y2=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[1.8,-2 ])y3=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[3.5,-5 ])y4=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[4,-4]) Page84 Exercise 8(1)clear;fun=inline('x.^2.*sin(x.^2-x-2)');fplot(fun,[-2 2]);grid on; 作图观察x(1)=-2;x(3)=fminbnd(fun,-1,-0.5);x(5)=fminbnd(fun,1,2);fun2=inline('-x.^2.*sin(x.^2-x-2)');x(2)=fminbnd(fun2,-2,-1);x(4)=fminbnd(fun2,-0.5,0.5);x(6)=2feval(fun,x)答案: 以上x(1)(3)(5)是局部极小,x(2)(4)(6)是局部极大,从最后一句知道x(1)全局最小, x(2)最大。

matlab笔试试题及答案

matlab笔试试题及答案

matlab笔试试题及答案MATLAB笔试试题及答案1. MATLAB中,如何创建一个名为`myMatrix`的3x3矩阵,其元素从1到9依次排列?答案:可以使用以下命令创建矩阵:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```2. 在MATLAB中,如何计算向量`v`的范数?答案:可以使用`norm`函数来计算向量的范数。

例如,如果`v`是一个向量,则:```matlabv = [1, 2, 3];norm_v = norm(v);```3. MATLAB中,如何将一个矩阵`A`转置?答案:可以使用单引号(`'`)来转置矩阵`A`:```matlabA = [1 2 3; 4 5 6; 7 8 9];A_transpose = A';```4. 如果要找到矩阵`B`中的最大元素,应该如何操作?答案:可以使用`max`函数来找到矩阵中的最大元素:```matlabB = [10 20 30; 40 50 60; 70 80 90];max_element = max(B(:));```5. 在MATLAB中,如何实现一个简单的for循环,计算从1到10的和?答案:可以使用以下代码实现:```matlabsum = 0;for i = 1:10sum = sum + i;end```6. MATLAB中,如何创建一个二维数组,其元素为当前索引的乘积?答案:可以使用以下代码创建:```matlabC = zeros(3,3);for i = 1:3for j = 1:3C(i,j) = i * j;endend```7. 如何在MATLAB中使用条件语句?答案:可以使用`if`语句来实现条件判断。

例如:```matlabx = 5;if x > 0disp('x is positive');elsedisp('x is not positive');end```8. 在MATLAB中,如何使用`plot`函数绘制一个正弦波?答案:可以使用以下代码绘制正弦波:```matlabx = 0:0.1:2*pi;y = sin(x);plot(x, y);title('Sine Wave');xlabel('x');ylabel('sin(x)');```9. MATLAB中如何使用`fft`函数计算一个信号的快速傅里叶变换?答案:可以使用以下代码计算信号的FFT:```matlabt = 0:0.001:1;x = cos(2*pi*50*t) + randn(size(t));X = fft(x);f = linspace(0, 1000, length(x));plot(f, abs(X));title('Frequency Domain');xlabel('Frequency (Hz)');ylabel('Amplitude');```10. 如何在MATLAB中使用`subplot`函数创建多个子图?答案:可以使用以下代码创建多个子图:```matlabsubplot(2,1,1); % 第一个子图plot(1:10, (1:10).^2);title('Square of Numbers');subplot(2,1,2); % 第二个子图plot(1:10, (1:10).^3);title('Cube of Numbers');```。

matlab考试题B卷及答案

matlab考试题B卷及答案

matlab考试题B卷及答案1. MATLAB基础操作题:请在MATLAB中创建一个名为`myVector`的向量,包含元素1, 2, 3, 4, 5,并计算其元素之和。

答案:首先,创建向量`myVector`可以使用以下代码:```matlabmyVector = [1 2 3 4 5];```然后,计算元素之和可以使用`sum`函数:```matlabsumOfElements = sum(myVector);```最终,`sumOfElements`的值将为15。

2. MATLAB矩阵运算题:给定一个3x3的矩阵A,其元素为A=[1 2 3;4 5 6; 7 8 9],请计算矩阵A的转置。

答案:计算矩阵A的转置可以使用`transpose`函数或者简单的`.'`操作符。

以下是使用`transpose`函数的代码:```matlabA = [1 2 3; 4 5 6; 7 8 9];A_transpose = transpose(A);```或者使用`.'`操作符:```matlabA_transpose = A.';```得到的转置矩阵`A_transpose`将是:```1 4 72 5 83 6 9```3. MATLAB编程题:编写一个MATLAB函数,该函数接受一个整数n作为输入,并返回一个n阶的魔方矩阵。

答案:魔方矩阵是一个方阵,其中每一行、每一列以及两条对角线上的元素之和都相等。

以下是一个生成n阶魔方矩阵的MATLAB函数:```matlabfunction magicMatrix = createMagicSquare(n)if mod(n, 2) == 0error('n must be an odd number.');endmagicMatrix = zeros(n);num = 1;for i = 1:nfor j = 1:nif i == 1j = j;elsej = (j + 2 * (i - 1) - n) % n + 1;endmagicMatrix(i, j) = num;num = num + 1;endendend```调用此函数并传入一个奇数n,例如`createMagicSquare(3)`,将返回一个3阶魔方矩阵。

Matlab考试题库答案(教师出卷参考专用)

Matlab考试题库答案(教师出卷参考专用)
ans=[0 1 1;1 1 0] ans= [0 2.25 2;1 0.6 NaN] 26. 产生 4 阶全 0 方阵的命令为_______; 产生 3 阶全 1 方阵的命令为。 zeros(4) ones(3) 27. A=rand(2,5);b=size(A);c=length(A);则 b 和 c 的值分别为_______ 。 2 5和 5 28. 用 if 判断语句判断 80≥ x >60,在 MATLAB 中 if 语言后的判断应写为 _______。 if x<=80 & x>60 29.为了使两个 plot 的图形在同一个坐标显示,可以使用_______命令进行图形 保持;可以使用_______命令为图形添加网格。
1111 1111 1111 1111
>> rand(4) ans =
0.8147 0.9058 0.1270 0.9134
0.6324 0.0975 0.2785 0.5469
0.9575 0.9649 0.1576 0.9706
0.9572 0.4854 0.8003 0.1419
CCaDb
16.求解线性方程组 Ax=b,当 det(A)≠0 时,方程的解是().
a=input('a=?');
b=input('b=?');
c=input('c=?');
d=b*b-4*a*c;
x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)];
[1 2 3;1 4 9;0 7 27] 24. A=[4,15,-45,10,6;56,0,17,-45,0]; find(A>=10 & A<=20)=___ __________.

matlab基础考试题及答案

matlab基础考试题及答案

matlab基础考试题及答案1. MATLAB中,如何创建一个名为"myMatrix"的3x3矩阵,其元素为1到9的连续整数?答案:可以使用以下命令创建矩阵:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```或者使用`magic`函数:```matlabmyMatrix = magic(3);```2. 在MATLAB中,如何计算一个向量的元素平方?答案:可以使用`.^`运算符来计算向量元素的平方:```matlabv = [1 2 3 4];v_squared = v.^2;```3. MATLAB中,如何将一个向量逆序?答案:可以使用`flip`函数或者`end`索引来逆序一个向量:```matlabv = [1 2 3 4];v_reversed = flip(v);```或者```matlabv_reversed = v(end:-1:1);```4. 在MATLAB中,如何计算矩阵的行列式?答案:可以使用`det`函数来计算矩阵的行列式:```matlabA = [1 2; 3 4];detA = det(A);```5. MATLAB中,如何使用循环结构来计算1到100的自然数之和?答案:可以使用`for`循环来计算总和:```matlabsum = 0;for i = 1:100sum = sum + i;end```或者使用`sum`函数直接计算:```matlabsum = sum(1:100);```6. 在MATLAB中,如何创建一个复数?答案:可以通过指定实部和虚部来创建一个复数:```matlabcomplexNumber = 3 + 4i;```7. MATLAB中,如何绘制一个正弦波?答案:可以使用`plot`函数和`sin`函数来绘制正弦波:```matlabx = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);```8. 如何在MATLAB中计算两个矩阵的点积?答案:可以使用`dot`函数或`*`运算符来计算两个矩阵的点积:```matlabA = [1 2; 3 4];B = [5 6; 7 8];dotProduct = dot(A, B);```或者```matlabdotProduct = A * B;```9. MATLAB中,如何使用条件语句来检查一个数是否为偶数?答案:可以使用`if`语句和模运算符来检查一个数是否为偶数:```matlabnum = 10;if mod(num, 2) == 0disp('The number is even.');elsedisp('The number is odd.');end```10. 在MATLAB中,如何将一个字符串转换为小写?答案:可以使用`lower`函数来将字符串转换为小写:```matlabstr = 'Hello World';lowerStr = lower(str);```结束语:以上是MATLAB基础考试题及答案,希望这些题目能帮助你更好地理解和掌握MATLAB的基础知识。

MAAB模拟试题

MAAB模拟试题

一、填空题1. MATLAB命令窗口中可用命令清除工作区中的变量;用命令清除命令窗口中的内容。

2. MATLAB中的运算符包括数学运算符、、。

3 MATLAB中的M文件有和。

4. MATLAB中的函数类型有嵌套函数、、、私有函数和匿名函数。

5. MATLAB中用系统预定义的特殊变量表示函数输入参数个数。

6. MATLAB中用系统预定义的特殊变量表示无穷大。

7. MATLAB中用符号定义单元数组。

8. MATLAB中用命令打开图形保持功能。

9 MATLAB中如果一个变量名为123,该变量名是否合法(填是或否)。

10. MATLAB中用函数完成矩阵的求逆运算,用函数求矩阵的行列式。

二、阅读下述MATLAB脚本程序A=[3 5 7 9;0 2 4 1;6 4 4 8];B=ones(3,3);b=A([1 2],2:3);B(4,4)=5;A([1,2],:)=[];C=[A;B(:,1:3)'];D=reshape(C,2,8);写出b 、A 、B 、C 、D 的结果。

三、已知矩阵A 为4×4的正态分布的随机矩阵,编写脚本程序实现矩阵B, B 矩阵为对角矩阵,主对角线元素为A 矩阵的主对角线元素加1,并将矩阵B 存入文件result.mat 文件中。

四、用struct 函数创建空结构体person ,结构体的域包括name 、weight 、height 和female ,给name 域赋值字符串变量MATLAB ,然后删除female 域,编写脚本程序实现。

五、已知多项式532)(3++=x x x a 和13)(24++=x x x b ,编写脚本程序计算1) 多项式a(x)+b(x)2) a(x)*b(x)2) 多项式a(x)/b(x)的部分分式展开。

六、用MATLAB 编写函数,计算()⎪⎩⎪⎨⎧<≤-<≤=其他021210x f x x x x ,函数的输入参数为x ,输出参数为f ,函数名为fun 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

M a t l a b 基础练习题 常量、变量、表达式1、 MATLAB 中,下面哪些变量名是合法的?( )(A )_num (B )num_ (C )num- (D )-num2、 在MATLAB 中,要给出一个复数z 的模,应该使用( )函数。

(A )mod(z) (B )abs(z) (C )double(z) (D )angle(z)3、 下面属于MATLAB 的预定义特殊变量的是?( )(A )eps (B )none (C )zero (D )exp4、 判断:在MATLAB 的内存工作区中,存放一个英文字符'a'需要占用1个字节,存放一个中文字符‘啊’需要占用2个字节。

( 错,都是2个字节 )5、 判断:MATLAB 中,i 和j 对 )6、 判断:MATLAB 中,pi 代表圆周率,它等于3.14。

( 错,后面还有很多位小数 )7、 在MATLAB 中,若想计算的51)3.0sin(21+=πy 值,那么应该在MATLAB 的指令窗中输入的MATLAB 指令是__y1=2*sin(0.3*pi)/(1+sqrt(5))_。

8、 在MATLAB 中,a=1,b=i ,则a 占_8__个字节,b 占_16_个字节,c 占________字节。

9、 在MATLAB 中,inf 的含义是__无穷大__,nan 的含义是__非数(结果不定)___。

数组1、 在MATLAB 中,X 是一个一维数值数组,现在要把数组X 中的所有元素按原来次序的逆序排列输出,应该使用下面的( )指令。

(A )X[end:1] (B )X[end:-1:1] (C )X(end:-1:1) (D )X(end:1)2、 在MATLAB 中,A 是一个字二维数组,要获取A 的行数和列数,应该使用的MATLAB 的命令是( )。

(A )class(A) (B )sizeof(A) (C )size(A) (D )isa(A)3、 在MATLAB 中,用指令x=1:9生成数组x 。

现在要把x 数组的第二和第七个元素都赋值为0,应该在指令窗中输入( )(A )x([27])=(00)(B )x([2,7])=[0,0] (C )x[(2,7)]=[00] (D )x[(27)]=(00)4、在MATLAB中,依次执行以下指令:clear;A=ones(3,4);A(:)=[-6:5];这时,若在指令窗中输入指令b=A(:,2)',那么,MATLAB 输出的结果应该是()(A)b=-3 -2 -1(B)b=-2-101(C)b=-5-13 (D)b=-5-2145、在MATLAB中,A=1:9,现在执行如下指令L1=~(A>5),则MATLAB的执行结果应该是L1=___111110000___。

6、在MATLAB中,要求在闭区间[0,5]上产生50个等距采样的一维数组b,请写出具体的MATLAB指令___linspace(0,5,50)___。

7、在MATLAB中,A=[0:1/2:2]*pi,那么sin(A)=___[010-10]_____。

8、在MATLAB中,A=[1,2,3;4,5,6;7,8,0],B=[2,1,6;8,5,2;14,2,1]。

写出下面MATLAB语句执行的结果:(为节省篇幅,把矩阵写成mat2str的形式)(1)A==B [000;010;000](2) A.*B [2218;322512;98160](3)A(:)' [147258360](4)A(1,:)*B(:,3) 139、在MATLAB中,写出下面MATLAB语句执行的结果:(1)clear,A=ones(2,6)A=111111111111(2)A(:)=1:2:24A=1591317213711151923(3)A([1:3:7])ans=1713(4)diag(diag(A))ans=1007(5)B=A(:,end:-1:1)B=211713951231915117310、请编写一段matlab程序,完成以下功能:(1)生成一个100行,200列的二维随机数组;A=rand(100,200);(2)找出数组A中所有大于0.49且小于0.51的元素的单下标;Idx=find(A(:)>0.49&A(:)<0.51)(3)数组A中满足(2)中的条件的元素有多少个?length(Idx)(4) 求出数组A 中满足(2)中的条件的元素的和,并求出这些元素的平均值;sum(A(Idx)),m=mean(A(Idx))(5) 将(4)求出的平均值赋值给数组A 中满足(1)中的条件的每个元素。

A(Idx)=m;11、请编写一段matlab 程序,完成以下功能:(1) 找出100到200之间的所有质数,将这些质数存放在一个行数组里;X=100:200;p=X(isprime(X))(2) 求出这些质数之和;sum(p)(3) 求出100到200之间的所有非质数之和(包括100和200)。

sum(X(~isprime(X)))12、22cos 0.7sin (1)x y x x ⎡⎤=+⎢⎥+⎣⎦,编写一段matlab 程序,要求如下 (1) 在[0,2]π区间,每隔0.01取一x 数值,计算出相应的y 的函数值;x=0:0.01:2*pi;y=(0.7+2*cos(x)./(1+x.^2)).*sin(x)(2) 根据MATLAB 计算出的数据,找出在[0,2]π内该函数的极小值的坐标。

[my,idx]=min(y)x(idx)数值计算1、在MATLAB 中,A 是一个10×10数组,我们把该数组看成矩阵的话,则此矩阵的行列式值=___det(A)__,此矩阵的逆矩阵(如果存在的话)=_inv(A)___。

(用MATLAB 的函数表示)2、求解下列方程组:A=[113-1;01-11;1122;1-11-1];b=[2;1;4;0];x=A\bA=[34 -7 -12;5-742;108-5;-65-210];b=[4;-3;9;-8];xyzw=A\b3、求有理分式()()()()3323230.522521x x x R x x x x ++=+-++的商多项式和余多项式n=conv([3010],[3000.5]);d=conv([12-2],[5201]);[q,r]=deconv(n,d)4、一元多项式42234p x x x =-+,写出表示p 的MATLAB 语句__p=[20-340]__,求0p =的根的MATLAB 语句是____roots(p)__,求 4.3x =时p 的数值的MATLAB 语句是__polyval(p,4.3)___。

程序设计1、 M 脚本文件和函数文件的有什么区别?最主要的差别是,函数有自己的独立工作区,和外界的信息交换通过输入输出参数实现;而脚本没有独立工作区,其直接使用宿主程序的工作区,并把结果留在宿主程序中。

2、 掌握下面程序设计中常用的函数及关键字:input pause warning nargin nargoutfor while if elseif else switch case otherwise end try catch break continue end3、 分别用for 和while 循环语句计算6302i i K ==∑的程序。

还请写出一种避免循环的计算程序。

(不要用symsum 函数)K=0;fori=0:63K=K+i;endK=0;i=0;whilei<=63K=K+i;i=i+1;endK=sum(2.^(0:63))4、 MATLAB 提供了两种循环结构,一种是for 循环结构,另一种是__while _循环结构。

5、 编写M 函数求和123s n =++++Lfunctions=mysum(n)s=sum(1:n);6、 编写M 函数求积123p n =⨯⨯⨯⨯Lfunctionp=mysum(n)p=prod(1:n);7、 编写M 函数列出从整数a 到整数b 之间能被3整除的奇数。

functionr=odds3(a,b)r=a:b;r=r(mod(r,2)==1&mod(r,3)==0)8、 编写M 脚本列出从100到200不能被3整除同时也不能被7整除的数。

X=100:200;X(mod(X,3)~=0&mod(X,7)~=0)9、 一张纸厚0.06mm 且足够大,试问将纸对折多少次,其厚度将超过10000m ?按题意,就是要求2^n*0.06E-3>=10000,所以n=ceil(log(10000/0.06e-3)/log(2))10、编写MATLAB 脚本输出“水仙花数”及水仙花数的个数。

所谓“水仙花数”是一个3位数,其各位数字的立方和等于该数本身。

例如333153153=++。

c=0;forn=100:999m=[fix(n/100)fix(mod(n,100)/10)mod(n,10)];ifn==sum(m.^3),fprintf('%i=%i^3+%i^3+%i^3\n',n,m);c=c+1;endendfprintf('\n 共%i 个水仙花数\n',c)输出结果:153=1^3+5^3+3^3370=3^3+7^3+0^3371=3^3+7^3+1^3407=4^3+0^3+7^3共4个水仙花数绘图1、 MATLAB 中,绘制三维曲面图的函数是( )(A )surf (B )plot (C )subplot (D )plot32、 MATLAB 中,要绘制三维空间曲线,应该使用( )函数。

(A )polar (B )plot (C )subplot (D )plot33、 在MATLAB 中,A 是一个1000行2列的二维数值数组,现在要把A 的第一列数据作为横坐标,把A 的第二列数据作为纵坐标,画出一条曲线,试写出相应的MATLAB 语句_____plot(A(:,1),A(:,2))______。

4、 MATLAB 绘图指令中的__subplot _指令允许用户在同一个图形窗里布置几个独立的子图。

5、 编写一段matlab 程序,绘制出二元函数2sin sin x y z xy=三维网线图,要求如下:(1)x ,y 的取值范围为99x -≤≤,99y -≤≤;(2)x ,y 每隔0.5取一个点;(3)图形的线型和颜色由MATLAB 自动设定[x,y]=meshgrid((-9:0.5:9)+eps);%加eps 避免出现0/0z=2*sin(x).*sin(y)./(x.*y);mesh(x,y,z)6、 编写一段matlab 程序,绘制出函数11sin(),2sin(2)y x y x x==图形的MATLAB 语句,要求如下:(1)x 的取值范围为33≤≤-x ;(2)x 每隔0.01取一个点;(3)y1和y2的图形要画在同一幅图里;(4)图形的线型和颜色由MATLAB 自动设定。

相关文档
最新文档