实用工程软件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试题及答案一、选择题1. MATLAB的基本数据单位是:A. 矩阵B. 向量C. 标量D. 数组答案:A2. 下列哪个命令可以用来绘制函数图形?A. `plot`B. `graph`C. `draw`D. `chart`答案:A3. MATLAB中,以下哪个是正确的矩阵转置操作?A. `transpose(A)`B. `A'`C. `A^T`D. `flip(A)`答案:B二、简答题1. 简述MATLAB中矩阵的基本操作。
答案:在MATLAB中,矩阵是最基本的数据结构,可以进行加、减、乘、除等基本运算。
矩阵的创建可以使用方括号`[]`,例如`A = [1 2;3 4]`。
矩阵的转置使用单引号`'`,例如`A'`。
矩阵的求逆使用`inv`函数,例如`inv(A)`。
2. MATLAB中如何实现循环结构?答案:MATLAB中实现循环结构主要有两种方式:`for`循环和`while`循环。
`for`循环用于已知迭代次数的情况,例如:```matlabfor i = 1:5disp(i);end````while`循环用于迭代次数未知的情况,例如:```matlabi = 1;while i <= 5disp(i);i = i + 1;end```三、计算题1. 给定矩阵A和B,请计算它们的乘积C,并求C的行列式。
A = [1 2; 3 4]B = [5 6; 7 8]答案:首先计算矩阵乘积C:```matlabC = A * B;```然后计算C的行列式:```matlabdetC = det(C);```结果为:```matlabC = [19 22; 43 50]detC = -16```2. 编写一个MATLAB函数,计算并返回一个向量的范数。
答案:```matlabfunction norm_value = vector_norm(v)norm_value = norm(v);end```四、编程题1. 编写一个MATLAB脚本,实现以下功能:- 随机生成一个3x3的矩阵。
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习题及答案《Matlab习题及答案:提升编程技能,解决实际问题》Matlab是一种强大的数值计算和数据分析工具,它被广泛应用于工程、科学和其他领域的计算和模拟。
为了帮助大家提升编程技能,解决实际问题,我们为大家准备了一些Matlab习题及答案,希望能够帮助大家更好地掌握Matlab的使用。
1. 习题一:编写一个Matlab程序,计算斐波那契数列的前20个数字,并将结果打印出来。
答案:下面是一个简单的Matlab程序,用于计算斐波那契数列的前20个数字。
```matlaba = 0;b = 1;fib = zeros(1, 20);fib(1) = a;fib(2) = b;for i = 3:20fib(i) = fib(i-1) + fib(i-2);enddisp(fib);```2. 习题二:编写一个Matlab程序,求解一个二次方程ax^2 + bx + c = 0的根。
答案:下面是一个简单的Matlab程序,用于求解二次方程的根。
```matlaba = 1;b = -3;c = 2;delta = b^2 - 4*a*c;if delta > 0x1 = (-b + sqrt(delta))/(2*a);x2 = (-b - sqrt(delta))/(2*a);disp(['The roots are ', num2str(x1), ' and ', num2str(x2)]);elseif delta == 0x = -b/(2*a);disp(['The root is ', num2str(x)]);elsedisp('The equation has no real roots');end```通过以上两个习题及答案的示例,我们可以看到Matlab的强大功能和灵活性。
通过练习这些习题,我们可以更好地掌握Matlab的基本语法和常用函数,从而在实际问题中更快更准确地解决数值计算和数据分析的挑战。
matlab习题与答案
matlab习题与答案
MATLAB习题与答案
MATLAB是一种强大的数学软件,广泛应用于工程、科学和金融等领域。
通过MATLAB,用户可以进行数据分析、图像处理、模拟建模等多种操作。
为了帮
助大家更好地掌握MATLAB的应用,我们为大家准备了一些习题与答案,希望
能够帮助大家更好地理解和掌握MATLAB的使用。
习题一:编写一个MATLAB程序,实现对给定矩阵的转置操作。
解答:可以使用MATLAB中的transpose函数来实现矩阵的转置操作。
例如,
对于一个3x3的矩阵A,可以使用以下代码实现转置操作:
A = [1 2 3; 4 5 6; 7 8 9];
B = transpose(A);
习题二:编写一个MATLAB程序,实现对给定矩阵的逆矩阵计算。
解答:可以使用MATLAB中的inv函数来实现对矩阵的逆矩阵计算。
例如,对
于一个3x3的矩阵A,可以使用以下代码实现逆矩阵计算:
A = [1 2 3; 4 5 6; 7 8 9];
B = inv(A);
习题三:编写一个MATLAB程序,实现对给定矩阵的特征值和特征向量计算。
解答:可以使用MATLAB中的eig函数来实现对矩阵的特征值和特征向量计算。
例如,对于一个3x3的矩阵A,可以使用以下代码实现特征值和特征向量计算:A = [1 2 3; 4 5 6; 7 8 9];
[V, D] = eig(A);
通过以上习题与答案的学习,相信大家对MATLAB的应用已经有了更深入的了
解。
希望大家能够多加练习,不断提升自己的MATLAB技能,为今后的工作和学习打下坚实的基础。
matlab练习题及答案详解(附程序)
Matlab练习题及答案详解一、基础题1、下表为1)2) 把任意两点距离的表中,自己到自己的距离,转变成无穷大clcclearclose alldata=xlsread('ti1.xls');%从excel里导入数据x=data(1,:);%将data里第一行的所有列赋值给xy=data(2,:);%将data里第二行的所有列赋值给xn=length(x);%表x的长度dis=zeros(n,n);%对距离表进行初始化for i=1:nfor j=1:ndis(i,j)=sqrt((x(i)-x(j))^2+(y(i)-y(j))^2);%平面坐标距离公式endenddis(dis==0)=inf;%将距离表中为0的数值,变成无穷大redis=dis;2、按要求步骤,操作下表要求:1) 对每列进行[0,1]区间化'(min())/(max min())=--;x x x x2) 把区间化后的表的右边3列,连接在左边3列下边,构成16行3列的表;3) 把16行3列进行转置,得到3行16列的表。
然后对列进行操作,把3行16列的表变成一列,后转置成一行,得到最终的结果。
clcclearclose allx=load('ti2.txt');%从txt里导入数据big=max(x);small=min(x);%算出每列的最大最小值[m,n]=size(x);%表x的行和列的大小newx1=zeros(m,n);%对newx1进行初始化,大小和初始x一样大for i=1:nnewx1(:,i)=(x(:,i)-small(i))./(big(i)-small(i));endnewx2=zeros(2*m,n/2);%对最新的表进行初始化大小为,行为newx1的2倍,列为一半newx2(1:m,1:n/2)=newx1(1:m,1:n/2);%把左边3列不操作的值,直接赋值给newx2上边newx2(m+1:end,1:n/2)=newx1(1:m,n/2+1:end);%把右边的3列,赋值给newx2下边[p,q]=size(newx2);%表newx2的行和列的大小 newx3=zeros(p*q,1);%对newx3进行初始化 for j=1:qnewx3((j-1)*p+1:j*p,1)=newx2(:,q);%对newx3进行操作 end% newx3=reshape(newx2,[],1); renewx=newx3';%最终的结果3、数值运算1)用matlab 求下列式子极限(a) lim x → (b) 0x →2)用matlab 求下列函数的导数(a)22sin (1)y x =+ (b) arccos()(,)x f x y ye =3)用matlab 求下列式子的定积分(a) 4⎰(b) 312-⎰⎰clc clear %===求极限 %====3.1.a=== syms xy=(x^(1/2)-8)/(x^(1/3)-4);re1a=limit(y,x,64)%====3.1.b===syms xy=((x^2-2*x+4)^(1/2)-2)/x;re1b=limit(y,x,0)%===求导数%====3.2.a===syms xf=(sin(x^2+1))^2;re2a=diff(f,x)%对x求导%====3.2.b===syms x yf=y*exp(acos(x));re2bx=diff(f,x)%对x求偏导re2by=diff(f,y)%对y求偏导%===求定积分===%====3.3.a===syms xre3a=int((x+2)/(2*x+1)^(1/2),x,0,4)%一重积分%====3.3.b===syms x yre3b=int(int(y/(x^2-1),x,-2,-sqrt(2)),y,1,3)%二重积分二、提高题1、画一个正五边形,边长自定。
MATLAB习题及答案
一、填空题1.MATLAB于1984年由美国Mathworks公司推出,其后每年更新(两)次。
2.MATLAB是一种以(矩阵)运算为基础的交互式程序设计语言。
3.MATLAB具有卓越的数值计算能力和符号计算、文字处理、可视化建模仿真和实时控制等众多功能,其每个变量代表一个(矩阵),每个元素都看作(复数)。
4.通过命令(help)、(lookfor),可以查找所有命令或函数的使用方法。
5.执行语句a=1:2:10,得到的一维数组是(1 3 5 7 9).6.执行语句b=linspace(1,10,10)后,一维数组b包含(10)个元素,最大值是(10)。
7.函数rem()的功能是取(余)数。
8.若p=[1 0 0;1 1 0],则p|~p=([1 1 1;1 1 1]).(注:填空时请用本题的p的方式表示结果)9.若p=[1 0 0;1 1 0],则all(p)=([1 0 0]).10.矩阵的加减运算,要求相加减的矩阵阶数相同。
若A=[1 2 3 4;2 3 1 8],则执行语句:[n,m]=size(A),则n=( 2 ),m=( 4 ).11.对于一维矩阵,求其长度的函数是(length() ).12.数组和数组之间的运算,尤其是对于乘除运算和乘方运算,如果采用点方式进行计算,表明是数组的(元素)之间的运算关系。
13.求矩阵运算A*B时,要求在维度上,A的(列)数与B的(行)数相等。
二、判断题1.MATLAB只有一种数据类型,一种标准的输入输出语句,不需编译,可直接运行。
(对)2.MATLAB的特殊常量是一些预选定义好的数值变量。
(对)3.MATLAB变量名不区分大小写。
(错)4.i是特殊常量。
(对)5.NAN是非数。
(对)6.MATLAB中所有的变量都表示一个矩阵或一个向量。
(对)7.MATLAB中变量不需要先定义后使用,会自动根据实际赋值的类型对变量类型进行定义。
(对)8.clc命令可以从内存中删除一个、多个和所有变量。
matlab简单编程21个题目及答案
1、设⎥⎦⎤⎢⎣⎡++=)1(sin35.0cos2xxxy,把x=0~2π间分为101点,画出以x为横坐标,y为纵坐标的曲线。
第一题的matlab源程序:①考虑cos(x)为一个整体,然后乘以中括号里面的全部x=0:2*pi/100:2*pi; %x的步长以及范围从0到2*pi y=cos(x).*(0.5+3*sin(x)./(1+x.^2)); %y的表达式plot(x,y)%画出图形图如下:②考虑对整体求解cos,先求x乘以括号中的部分x=0:2*pi/100:2*pi; %x的步长以及范围从0到2*pi y=cos(x.*(0.5+3*sin(x)./(1+x.^2))); %y的表达式plot(x,y) %画出图形图如下:2、产生8×6阶的正态分布随机数矩阵R1, 求其各列的平均值和均方差。
并求该矩阵全体数的平均值和均方差。
第二题的matlab源程序如下:R1=randn(8,6) %产生正态分布随机矩阵R1 =1.0933 -0.7697 1.5442 -0.1924 1.4193 0.21571.1093 0.3714 0.0859 0.8886 0.2916 -1.1658-0.8637 -0.2256 -1.4916 -0.7648 0.1978 -1.14800.0774 1.1174 -0.7423 -1.4023 1.5877 0.1049-1.2141 -1.0891 -1.0616 -1.4224 -0.8045 0.7223-1.1135 0.0326 2.3505 0.4882 0.6966 2.5855-0.0068 0.5525 -0.6156 -0.1774 0.8351 -0.66691.5326 1.1006 0.7481 -0.1961 -0.2437 0.1873aver=(sum(R1(1:end,1:end)))./8 %产生各行的平均值aver =0.0768 0.1363 0.1022 -0.3473 0.4975 0.1044a=std(R1(1:end,1:end)) %产生各行的均方差也就是标准差a =1.0819 0.8093 1.3456 0.8233 0.8079 1.2150aver1=(sum(R1(:)))./48 %全体数的平均值aver1 =0.0950b=std(R1(:)) %全体数的均方差即标准差b =1.01033、设x=rcost+3t,y=rsint+3,分别令r=2,3,4,画出参数t=0~10区间生成的x~y 曲线。
matlab试题及答案
matlab试题及答案一、单项选择题(每题2分,共10分)1. MATLAB中用于创建向量的命令是:A. vectorB. arrayC. linspaceD. colon答案:D2. 在MATLAB中,以下哪个函数用于计算矩阵的行列式?A. detB. rankC. invD. eig答案:A3. MATLAB中用于进行矩阵转置的运算符是:A. 'B. .C. ^D. !答案:A4. 若A是一个3x3的矩阵,执行命令A(2,:)=0;后,矩阵A的第二行将变为:A. [0 0 0]B. [1 0 0]C. [0 1 0]D. [0 0 1]答案:A5. MATLAB中,以下哪个函数用于绘制三维曲面图?A. plotB. surfC. barD. hist答案:B二、填空题(每题3分,共15分)1. MATLAB中,使用________命令可以清除所有变量。
答案:clear2. 若要在MATLAB中创建一个从0到1的100个元素的向量,可以使用命令________。
答案:linspace(0,1,100)3. MATLAB中,使用________函数可以计算矩阵的特征值。
答案:eig4. 在MATLAB中,________函数用于计算两个矩阵的点乘。
答案:dot5. 若要在MATLAB中绘制一个圆,可以使用________函数。
答案:plot三、简答题(每题5分,共20分)1. 请解释MATLAB中矩阵索引的概念。
答案:在MATLAB中,矩阵索引指的是通过行号和列号来访问矩阵中特定元素的过程。
例如,A(2,3)表示访问矩阵A的第二行第三列的元素。
2. MATLAB中如何实现矩阵的元素乘法?答案:在MATLAB中,矩阵的元素乘法可以通过使用点乘运算符(.*)来实现。
例如,C = A .* B,其中A和B是相同大小的矩阵。
3. 请说明MATLAB中如何使用循环结构。
答案:MATLAB中可以使用for循环和while循环两种循环结构。
(完整版)matlab经典习题及解答
第1章 MATLAB 概论1.1 与其他计算机语言相比拟,MATLAB 语言突出的特点是什么?MATLAB 具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。
1.2 MATLAB 系统由那些局部组成?MATLAB 系统主要由开发环境、MATLAB 数学函数库、MATLAB 语言、图形功能和应用程序接口五个局部组成。
1.4 MATLAB 操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?在MATLAB 操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口成为独立窗口的Undock 按钮,点击Undock 按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view 菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。
1.5 如何启动M 文件编辑/调试器?在操作桌面上选择“建立新文件〞或“翻开文件〞操作时,M 文件编辑/调试器将被启动。
在命令窗口中键入edit 命令时也可以启动M 文件编辑/调试器。
1.6 存储在工作空间中的数组能编辑吗?如何操作?存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名翻开数组编辑器,再选中要修改的数据单元,输入修改内容即可。
1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M 文件中。
1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别?当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的Set Path 菜单项来完成。
在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB 运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时那么优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。
matlab练习题答案
matlab练习题答案一、求解线性方程组题目描述:解以下线性方程组2x + 3y - z = 7x - y + 2z = 33x + 2y + 4z = 12解答:使用MATLAB的线性方程组求解函数linsolve,可以得到该线性方程组的解。
代码如下:A = [2, 3, -1; 1, -1, 2; 3, 2, 4];B = [7; 3; 12];X = linsolve(A, B);其中,A为系数矩阵,B为常数矩阵,X为方程组的解矩阵。
运行以上代码,即可得到方程组的解为:X =2.0000-1.00003.0000所以,该线性方程组的解为x=2,y=-1,z=3。
二、矩阵运算题目描述:计算矩阵A和矩阵B的乘积,其中A为3×2矩阵,B为2×4矩阵。
A = [1, 2; 3, 4; 5, 6];B = [7, 8, 9, 10; 11, 12, 13, 14];解答:使用MATLAB的矩阵乘法运算符*,可以计算矩阵A和矩阵B的乘积。
代码如下:A = [1, 2; 3, 4; 5, 6];B = [7, 8, 9, 10; 11, 12, 13, 14];C = A * B;运行以上代码,即可得到矩阵A和矩阵B的乘积矩阵C。
C =29 32 35 3865 72 79 86101 112 123 134所以,矩阵A和矩阵B的乘积为一个3×4矩阵C,其中C的元素为上述结果。
三、绘制函数图像题目描述:绘制函数y = sin(x)在区间[0, 2π]上的图像。
解答:使用MATLAB的绘图函数plot,可以绘制函数的图像。
代码如下:x = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);其中,linspace函数用于生成0到2π之间的线性间隔向量,共100个点。
sin函数用于计算每个点的函数值。
plot函数用于绘制图像。
运行以上代码,即可得到函数y = sin(x)在区间[0, 2π]上的图像。
MATLAB习题及参考答案
2 9 0 1310,解方程组3 4 11 x 6。
(应用x=a\b)2 2 6 611,求欠定方程组294 73 54x68的最小范数解。
(应用pinv)5习题:6 9 3 2 4 1与b 的数组乘积。
2 7 5 4 6 81,计算a2, 对于AX B,如果A 3726,求解X。
283,已知:a 1 2 34 5 6,分别计算a的数组平方和矩阵平方,并观察其结果。
7 8 94,角度x 30 45 60,求x的正弦、余弦、正切和余切。
(应用sin,cos,4 2 7 15 95,将矩阵a 、b 和c 组合成两个新矩阵:5 7 8 36 2(1)组合成一个4 3的矩阵,第一列为按列顺序排列的a矩阵元素,第二列为按列顺序排列的元素,第三列为按列顺序排列的c矩阵元素,即b矩阵4 7 55 8 62 1 97 3 2(2)按照a、b、c的列顺序组合成一个行矢量,即4527781356926,将(x-6)(x-3)(x-8)展开为系数多项式的形式。
(应用poly,polyvalm)7,求解多项式X3-7X2+2X+40的根。
(应用roots)8,求解在x=8 时多项式(x-1)( x-2) ( x-3)( x-4)的值。
(应用poly,polyvalm)9, 计算多项式4x412x314x25x 9的微分和积分。
(应用polyder,polyint ,poly2sym)2 2计算表达式z 10 x 3 y 5 e x y 的梯度并绘图。
(应用meshgrid, gradient, con tour, holdon, quiver)15,用符号函数法求解方程a t 2+b*t +c=0。
(应用solve )16,用符号计算验证三角等式:(应用syms,simple )用 syms,ezplot)用 plot,title,text,legend)24, x= [66 49 71 56 38] ,绘制饼图,并将第五个切块分离出来。
Matlab考试题库及答案(教师出卷参考专用)
Matlab考试题库及答案(教师出卷参考专用)一、选择题1.以下哪个函数用于在Matlab中创建一个图形窗口?A. figureB. plotC. graphD. window答案:A2.在Matlab中,以下哪个选项可以用来定义一个矩阵?A. A = [1 2 3; 4 5 6]B. A = (1, 2, 3, 4, 5, 6)C. A = {1, 2, 3, 4, 5, 6}D. A = 1 2 3; 4 5 6答案:A3.以下哪个函数用于求解线性方程组Ax=b?A. solveB. linsolveC. solve(A, b)D. linsolve(A, b)答案:D4.在Matlab中,如何计算矩阵A和矩阵B的乘积?A. A BB. A \ BC. A . BD. A .\ B答案:A5.以下哪个函数用于在Matlab中绘制三维散点图?A. scatterB. scatter3C. plot3D. bar3答案:B二、填空题1.在Matlab中,要创建一个名为"myfig"的图形窗口,可以使用______函数。
答案:figure('Name', 'myfig')2.在Matlab中,要计算矩阵A的行列式,可以使用______函数。
答案:det(A)3.在Matlab中,若要计算变量x的平方,可以使用______运算符。
答案:.^24.在Matlab中,若要计算矩阵A的逆矩阵,可以使用______函数。
答案:inv(A)5.在Matlab中,要绘制一个正弦波形,可以使用______函数。
答案:plot(sin(x))三、判断题1.在Matlab中,矩阵的索引从1开始计数。
()答案:正确2.在Matlab中,可以使用逻辑运算符"&&"和"||"。
()答案:错误3.在Matlab中,矩阵乘法满足交换律。
MATLAB习题及答案
填空题1. MATLAB于1984年由美国Mathworks公司推出,其后每年更新(两次。
2. MATLAB是一种以(矩阵)运算为基础的交互式程序设计语言。
3. MATLAB具有卓越的数值计算能力和符号计算、文字处理、可视化建模仿真和实时控制等众多功能,其每个变量代表一个(矩阵),每个元素都看作(复数)。
4.通过命令(help)、(lookfor),可以查找所有命令或函数的使用方法。
5.执行语句a=1:2:10,得到的一维数组是(1 3 5 7 9).6.执行语句b=linspace(1,10,10)后,一维数组b包含(10)个元素,最大值是10)7.函数rem()的功能是取(余)数。
8.若p=[1 0 0;1 1 0],则p|〜p=([1 1 1;1 1 1]).(注:填空时请用本题的p的方式表示结果)9.若p=[1 0 0;1 1 0],则all(p)=([1 0 0]).10.矩阵的加减运算,要求相加减的矩阵阶数相同。
若A=[1 2 3 4;2 3 1 8],则执行语句:[n,m]=size(A),则n=(2 ),m=(4 ).11.对于一维矩阵,求其长度的函数是(length()).12.数组和数组之间的运算,尤其是对于乘除运算和乘方运算,如果采用点方式进行计算,表明是数组的(元素)之间的运算关系。
13.求矩阵运算A*B时,要求在维度上,A的(列)数与B的(行)数相等。
二、判断题1.MATLAB只有一种数据类型,一种标准的输入输出语句,不需编译,可直接运行。
(对2.MATLAB的特殊常量是一些预选定义好的数值变量。
(对3.MATLAB变量名不区分大小写。
(错4.i是特殊常量。
(对5.NAN是非数。
(对6.MATLAB中所有的变量都表示一个矩阵或一个向量。
(对7.MATLAB中变量不需要先定义后使用,会自动根据实际赋值的类型对变量类型进行定义。
(对8.clc命令可以从内存中删除一个、多个和所有变量。
MATLAB考试试题及答案
MATLAB考试试题及答案一、选择题(每题5分,共25分)1. 在MATLAB中,下列哪个命令用于创建一个行向量?A. v = [1; 2; 3]B. v = [1 2 3]C. v = [1, 2, 3]D. v = (1, 2, 3)答案:B2. 在MATLAB中,下列哪个命令用于计算矩阵A的行列式?A. det(A)B. det(A')C. det(inv(A))D. det(A^2)答案:A3. 在MATLAB中,下列哪个命令用于计算矩阵A的逆?A. inv(A)B. A^(-1)C. pinv(A)D. A\B答案:A4. 在MATLAB中,下列哪个命令用于求解线性方程组Ax= b?A. A\bB. A/BC. B/AD. A^-1b答案:A5. 在MATLAB中,下列哪个命令用于绘制二维图形?A. plot(x, y)B. scatter(x, y)C. bar(x, y)D. pie(x, y)答案:A二、填空题(每题5分,共25分)6. 在MATLAB中,可以使用______命令创建一个等差数列。
答案:linspace7. 在MATLAB中,可以使用______命令创建一个等比数列。
答案:logspace8. 在MATLAB中,可以使用______命令计算矩阵A的特征值。
答案:eig(A)9. 在MATLAB中,可以使用______命令计算矩阵A的特征向量。
答案:eigenvector(A)10. 在MATLAB中,可以使用______命令计算矩阵A的奇异值。
答案:svd(A)三、解答题(每题25分,共75分)11. 编写MATLAB程序,求解以下线性方程组:2x + 3y - z = 1x - y + 2z = 03x + 2y - 4z = -3答案:```A = [2 3 -1; 1 -1 2; 3 2 -4];b = [1; 0; -3];x = A\b;disp('解为:');disp(x);```12. 编写MATLAB程序,绘制以下函数的图形:y = sin(x) + cos(x),x ∈ [0, 2π]答案:```x = linspace(0, 2pi, 100);y = sin(x) + cos(x);plot(x, y);title('y = sin(x) + cos(x)');xlabel('x');ylabel('y');grid on;```13. 编写MATLAB程序,计算以下矩阵的特征值和特征向量:A = [1 2 3; 4 5 6; 7 8 9]答案:```A = [1 2 3; 4 5 6; 7 8 9];[V, D] = eig(A);disp('特征值:');disp(diag(D));disp('特征向量:');disp(V);```14. 编写MATLAB程序,使用牛顿迭代法求解方程f(x) = x^3 - 4x + 2 = 0在x = 1附近的根。
matlab考试题库
matlab考试题库一、选择题1.以下哪个函数可以在MATLAB中保存变量到文件中?A. savevar()B. writevar()C. savematrix()D. writematrix()2. MATLAB的注释符号是什么?A. //B. ++C. %%D. ##3. MATLAB中,以下哪个函数可以生成一个随机数?A. random()B. rand()C. randomnum()D. randnum()4. MATLAB的关系运算符是什么?A. >>B. <=C. !!D. ^^5. 在MATLAB中,以下哪个函数可以取数组的最大值?A. maximum()B. max()C. big()D. large()二、填空题1. 在MATLAB中,使用______函数可以创建一个全零矩阵。
2. MATLAB中,________运算符可以求两个矩阵的逐元素积。
3. MATLAB中,______函数可以返回行矩阵的列数。
三、简答题1. 请简要介绍MATLAB的基本功能和应用领域。
2. 列举并说明MATLAB中常用的数据类型。
3. 在MATLAB中如何定义一个函数,并举例说明。
四、编程题1. 编写一个MATLAB程序,输入一个矩阵,然后计算该矩阵的转置并输出结果。
2. 编写一个MATLAB函数,输入一个整数n,输出一个n行n列的单位矩阵。
3. 编写一个MATLAB程序,输入一个数组,然后统计该数组中大于10的元素个数,并输出结果。
以上是MATLAB考试题库的部分题目,希望能帮助你进行练习和复习。
祝你考试顺利!。
MATLAB测试题
一、(填空题)1. 清除命令窗口内容的命令是( clc )。
2. 要在命令窗口中查看对函数log 的帮助信息,所用命令是( help log )。
3. 设置图例的Matlab 库函数名是( figure )。
4. 绘制三维表面图的Matlab 库函数名是( mesh / surf )。
5. 将三维图形视角设置成方位角60度、仰角45度的语句是( view(60,45) )。
6. 在同一图形窗口中开多个子窗口的Matlab 库函数名是( subplot )。
7. 表达式 (5>2)*(6~=5)的值是( 1 )。
8. 设x 是复数,取x 的实部存入变量y 的语句是( y=real(x) )。
9. 绘制三维线图的Matlab 库函数名是( plot3 )。
10. 将图题设置成“Fig. 1 示意图”的语句是( title(Fig. 1 示意图) )。
二、(操作题)1对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。
a=[1,2,3;4,5,6;7,8,9]; b=[1;2;3];x=a/b'x =1.00002.28573.57142 求解多项式x 3-7x 2+2x +40的根。
(应用roots)d=[1,-7,2,40]d =1 -72 40>> x=roots(d)x =5.00004.0000-2.00003 计算多项式9514124234++--x x x x 的微分和积分。
(应用polyder,polyint ,poly2sym)sym xy=sym('4*x^4-12*x^3-14*x^2+5*x+9')a=diff(y,'x')b=int(y,'x')ans =xy =4*x^4-12*x^3-14*x^2+5*x+9a =16*x^3-36*x^2-28*x+5b =4/5*x^5-3*x^4-14/3*x^3+5/2*x^2+9*x4 绘制曲线13++=x x y ,x 的取值范围为[-5,5]。
MatLab考试题题库(必做题)(带答案)
MatLab考试题题库(必做题)(带答案)一,1.请登陆美国MathWork公司的网站,查看看现在大概有多少本MATLAB-baedbook(以MATLAB为基本软件,来说明各个专业领域的教科书或工具书)。
哪一个领域的MATLAB-baedbook最多中文书共有几本答:1612本,数学方面的最多,中文书共有37本。
2.请在MATLAB中直接输入下列常数,看它们的值是多少:a.ib.jc.epd.infe.nanf.pig.realma某h.realmin依次解为:an=0+an=0+an=an=Infan=NaNan=an=+308an=3.试写一函数regPolygon(n),其功能为画出一个圆心在(0,0)、半径为1的圆,并在圆内画出一个内接正n边形,其中一顶点位于(0,1)。
例如regPolygon(8)可以画出如下之正八边型:解:新建文件如下:functiony=regPolyfon(n)n=8;%要画的n边形R=1;%圆的半径t=0::2某pi;某=R某co(t);y=R某in(t);m=linpace(pi/2,5/2某pi,n+1);某z=R某co(m);yz=R某in(m);holdonplot(某,y,某z,yz);a某i'equal';4.一条参数式的曲线可由下列方程式表示:某=in(t),y=1-co(t)+t/10当t由0变化到4某pi时,请写一个MATLAB的脚本,画出此曲线在某Y平面的轨迹。
解:新建:t=linpace(0,4某pi);某=in(t);y=1-co(t)+t/10;plot(某,y,'-o');5.当一个小圆轮沿着一条曲线行进时,轮缘任一点的轨迹就会产生变化丰富的摆线。
假设小圆轮的半径r=2。
a.当小圆轮绕着一个大圆(半径R=5)的外部滚动时,请画此「圆轮摆线」或「外花瓣线」。
b.重复上小题,但改成在大圆的内部滚动,请画出此「内花瓣线」。
MATLAB40道题与答案修正版
操作方法:首先点击File —New —M-File ,输入相应代码,然后点击运行按钮即可。
P1.已知两序列[]0.8{[][5]}nx n u n u n =--,[]{1,1,1,1,1}h n =计算两序列的卷积并绘制其波形。
%function a1 for i=1:5x(i)=0.8^(i-1); endh=[1 1 1 1 1]; y=conv(x,h) m=0:8;stem(m,y,'filled')P2。
已知复指数序列(1.52)[] 1.2j nx n e +=,绘制20点该序列的实部和虚部。
n=0:19;x=1.2*exp((1.5+j*2)*n); subplot(211); stem(n,real(x)); ylabel('real part'); xlabel('n'); legend('x[n]'); subplot(212); stem(n,imag(x)); ylabel('imag part'); xlabel('n'); legend('x[n]');P3.编写长度为5的中值滤波器程序。
原始未受干扰的序列为:s[n]=3[n(0.5) ]n ,加性噪声信号d[n]为随机序列,幅度0.4,分别绘制长度为40的受干扰序列,以及中值滤波器的输出。
% Program 2_5% Illustration of Median Filtering N = 5; R = 40;a = 0.8*rand(1,R)-0.4;b = round(a); % Generate impulse noise m = 0:R-1;s =3*m.*(0.5.^m); % Generate signalx = s + b; % Impulse noise corrupted signal y = medfilt1(x,N); % Median filtering subplot(2,1,1) stem(m,x);xlabel('n');ylabel('Amplitude');title('Impulse Noise Corrupted Signal'); subplot(2,1,2) stem(m,y);xlabel('n');ylabel('Amplitude'); title('Output of Median Filter'); P4. 已知序列x1[n]={2.2,3,1.5,4.2,1.8}, x2[n]= {0.8,1,1.6,0.8},x[n]=x1[n]∗x2[n] (卷积),分别绘制序列x1[n] ,x2[n]和x [n]的波形。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章、程序设计1.编写一个函数,将百分制的学生成绩转换为五级制的成绩function s=score(n)n=input('n=');if (n>=90&&n<=100)s='A';elseif (n>=80&&n<90)s='B';elseif (n>=70&&n<80)s='C';elseif (n>=60&&n<70)s='D';elseif (n>=0&&n<=60)s='E';elsedisp('输入错误')end2. 编写一个函数,计算Fibonacci数F(n)已知:F(1)=F(2)=1 F(k)=F(K-1)+F(K-2)function Fn=Fibonacci(n)n=input('输入正整数n=');s=0;t=1;i=0;while i>=0&&i<nt=t+s;s=t-s;i=i+1;enddisp('Fn=')disp(s)3. 编写m程序,找出300以内所有满足下两个条件的数(1)各位数字之和为奇数(2)该数为素数Y=primes(300);for i=1:length(Y)a=fix(i/100);b=fix((i-100*a)/10);c=i-100*a-10*b;Ysum(i)=a+b+c;endY(find(mod(Ysum, 2) == 1))4、所谓“水仙花数”是一个3位数,其各位数字的立方和等于该数本身。
例如:153=1^3+5^3+3^3。
找出所有的“水仙花数”,并求出水仙花数共有多少个d=0;for i=100:999a=fix(i/100);b=fix((i-100*a)/10);c=i-100*a-10*b;if i==a*a*a+b*b*b+c*c*cd=d+1;A(d)=i;elseendenddisp('水仙花数')disp(A)disp('水仙花个数')disp(d)5、验证哥德巴赫猜想:使用input函数读入一个大于2的偶数,并输出一个哥德巴赫素数等式例如:6=3+3100=41+59要求读入一个,计算一个,能够连续执行,直到读入0才结束,退出程序clear allfor s=1:infn=input('输入一个偶数n=');if n~=0if mod(n,2)==0X=primes(n);X(1)=[];e=length(X);N=zeros(1,e);N(:)=n;Y=N-X;i=1;j=1;if i<=nif j<(Y(i)-1)j=j+1;if mod(Y(i),j)==0disp('哥德巴赫猜想不成立');endendi=i+1;endelseX=[]; %n输入为奇数,清空XY=[]; %n输入为奇数,清空YN=[]; %n输入为奇数,清空Ndisp('输入错误,请重新输入');endA=cat(1,X,Y,N); %每一列的第三行是输入的偶数,第一行与第三行均是与之对应的素数disp(A)elsereturnendend选作6、输入n,输出n阶魔方阵(各行各列之和都相等)n=input('请输入正整数n=');if (rem(n,1)==0)&&(n>=0)A=magic(n);elsedisp('输入错误')enddisp(A)第四章、MATLAB绘图1.在[0 2π]范围内绘制二维曲线图y=sin(x)*cos(5x)。
(注意使用点乘)x=0:pi/200:2*pi;y=sin(x).*cos(5*x);plot(x,y);xlabel('x');ylabel('y');title('y=sin(x)*cos(5x)')2.在[0 2π]范围内绘制以Y轴为对数的二维曲线图。
(semilogy)y=|1000sin(4x)|+1x=0:pi/200:2*pi;y=abs(1000*sin(4*x))+1;semilogy(x,y);xlabel('x');ylabel('logy');title(' y=|1000sin(4x)|+1');grid on3.绘制z=sin(x)*cos(y)的三维网格和三维曲面图,x,y变化范围均为[0 2π]。
[x,y]=meshgrid(0:pi/20:2*pi);z=sin(x).*cos(y);subplot(1,2,1);surf(x,y,z);xlabel('x');ylabel('y');zlabel('z');title('曲面图')subplot(1,2,2);mesh(x,y,z);xlabel('x');ylabel('y');zlabel('z');title('网格图');4 .画画,画一个简单的机器人二维图或三维图axis equalfor i=0:pi/1000:pi;a=[0,cos(i)];b=[0,sin(i)];line(a,b,'Color','g','LineWidth',2);endfor j=0:pi/1000:2*pi;c=[0.5,0.5+0.1*cos(j)];d=[0.5,0.5+0.1*sin(j)];line(c,d,'Color','w','LineWidth',2);x=[-0.5,-0.5+0.1*cos(j)];y=[0.5,0.5+0.1*sin(j)];line(x,y,'Color','w','LineWidth',2);ende=[0.5 0.8];f=[-0.5 -0.8];g=[0.86 1.3];line(e,g,'Color','g','LineWidth',5);line(f,g,'Color','g','LineWidth',5);rectangle('position',[-1,-1,2,0.9],'edgecolor','g','facecolor','g'); rectangle('position',[-1,-2,2,1.5],'curvature',[0.5,0.5],'edgecolor', 'g','facecolor','g');rectangle('position',[1.2,-1.5,0.3,1.3],'curvature',[0.5,0.5],'edgeco lor','g','facecolor','g');rectangle('position',[-1.5,-1.5,0.3,1.3],'curvature',[0.5,0.5],'edgec olor','g','facecolor','g');rectangle('position',[-0.65,-3,0.3,1.3],'curvature',[0.5,0.5],'edgeco lor','g','facecolor','g');rectangle('position',[0.45,-3,0.3,1.3],'curvature',[0.5,0.5],'edgecol or','g','facecolor','g');5. 画一个带分针和时针的钟表,并较快速的旋转24小时axis equalfor i=0:1440X=[0,sin(pi*i/360)];Y=[0,cos(pi*i/360)];h=line(X,Y,'LineWidth',4,'erasemode','xor');A=[0,2*sin(pi*i/30)];B=[0,2*cos(pi*i/30)];h1=line(A,B,'LineWidth',2,'erasemode','xor');axis([-2,2,-2,2]);axis off;for j=1:length(X)set(h,'xdata',X(j),'ydata',Y(j));drawnow;endfor k=1:length(A)set(h1,'xdata',A(k),'ydata',B(k));drawnow;endend第六章数值计算1.已知某班的5名学生的三门课成绩列表如下:学生序号 1 2 3 4 5高等数学78 89 64 73 68外语83 77 80 78 70MATLAB语言82 91 78 82 68试写出有关命令,先分别找出三门课的最高分及其学生序号;然后找出三门课总分的最高分及其学生序号。
A=[78 89 64 73 68; 83 77 80 78 70;82 91 78 82 68];y0=max(A);[y1,l1]=max(y0);y2=sum(A);[y3,l2]=max(y2);fprintf('三门课中最高分为%.0f,学生学号为=%.0f\n三门课总分最高分为%.0f,学生学号为%.0f\n’,y1,l1,y3,l2)2.针对上小题的成绩表,求出其三门课总分存入数组ZF,再利用SORT命令对之按降序排序,同时把相应的学生序号存入数组XH。