matlab基础练习题(带答案)

合集下载

matlab简单编程21个题目及答案

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带答案例题

一、必做题:
1.已知典型二阶系统的传递函数为2
22210)(ωωω++=s k s s G ,试绘制当100ωπ=时,8,7,6,5,4,3,2,1=k 时的系统在单位阶跃相应,要求编制程序实现,并在同一图面中绘制要有必要的文字标志说明和图形编辑。

2.试用Simulink构建三相整流逆变电路。

要求:给出整流桥桥臂电流和电压,整流桥输出电压和逆变桥输入电压,逆变滤波以后的输出电压,并有必要的分析和说明。

第二题 、选做题
5、已知某控制系统的开环传递函数,)
9)(5()2()()(2+++=s s s s k s H s G ,要求绘制系统正反馈、负反馈时系统的根轨迹,并判断系统的稳定性有何区别。

要求编制相应的程序实现。

7、已知如图1所示的电路中,电源
电压10)(=t u s V 时,L =2H ,Ω=1R 求解
图中的电流波形。

假设初始电流
A i 2)0(=,试用Simulink 工具箱搭建模型求出电流波形。

15.用Simulink构建如图8所示的电路,其中R1=5 Ώ,R2=3 Ώ,R3=4 Ώ,R4=2 Ώ,R5=1 Ώ,求电流I。

大学matlab考试题及答案

大学matlab考试题及答案

大学matlab考试题及答案一、选择题(每题2分,共10分)1. MATLAB中用于创建向量的命令是?A. vectorB. arrayC. linspaceD. [ ]答案:D2. 以下哪个函数用于计算矩阵的行列式?A. detB. rankC. invD. eig答案:A3. 在MATLAB中,以下哪个命令用于绘制三维曲面?A. plot3B. surfC. meshD. contour答案:B4. MATLAB中,以下哪个函数用于求解非线性方程?A. fsolveB. fzeroC. linsolveD. solve答案:A5. 如何在MATLAB中创建一个全为1的3x3矩阵?A. ones(3,3)B. zeros(3,3)C. eye(3,3)D. rand(3,3)答案:A二、填空题(每题3分,共15分)1. 在MATLAB中,使用________函数可以计算矩阵的逆。

答案:inv2. 要将向量[1, 2, 3]转置成行向量,可以使用________运算符。

答案:.'3. MATLAB中,________函数用于计算两个矩阵的点乘。

答案:dot4. 若要在MATLAB中生成一个从0到1的100个等间隔的数,可以使用________函数。

答案:linspace5. 使用________函数可以在MATLAB中创建一个随机数矩阵。

答案:rand三、简答题(每题5分,共20分)1. 描述MATLAB中矩阵的基本操作有哪些?答案:矩阵的基本操作包括矩阵的创建、转置、加法、减法、乘法、点乘、求逆、行列式计算、特征值和特征向量的计算等。

2. MATLAB中如何实现循环结构?答案:MATLAB中可以使用for循环、while循环和switch-case结构来实现循环结构。

3. 简述MATLAB中函数定义的基本语法。

答案:MATLAB中函数定义的基本语法是:function [输出参数列表] = 函数名(输入参数列表)函数体end4. MATLAB中如何实现条件判断?答案:MATLAB中可以使用if-else语句、switch-case语句来实现条件判断。

matlab试题及答案

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的矩阵。

matlab20道试题及解答

matlab20道试题及解答

试题1.“数学黑洞”:任意一个4位自然数,将组成该数的各位数字重新排列,形成一个最大数和一个最小数,之后两数相减,其差仍为一个自然数。

重复进行上述运算,最终会出现一个神秘的数,请编程输出这个神秘的数。

clear;a=input('请输入一个四位正整数:');str_a=num2str(a); %将a转化为一个字符串b_min=str2double(sort(str_a)); %形成最小数b_max=str2double(sort(str_a,'descend')); %形成最大数b=b_max-b_min; %求最大数与最小数之差while (b~=a)a=b;str_a=num2str(a); %将a转化为一个字符串b_min=str2double(sort(str_a)); %形成最小数b_max=str2double(sort(str_a,'descend')); %形成最大数b=b_max-b_min; %求最大数与最小数之差endb试题2.将数字1、2、3、4、5、6填入一个2行3列的表格中,要使得每一列右边的数字比左边的数字大,每一行下面的数字比上面的数字大。

请编写程序求出按此要求可有几种填写方法。

a(1)=1;a(6)=6;count=0; %用来计数b=perms('2345'); %产生2345的全排列[m,n]=size(b);for i=1:mtemp=b(i,:);a(2)=str2double(temp(1));a(3)=str2double(temp(2));a(4)=str2double(temp(3));a(5)=str2double(temp(4));if ((a(4)>a(2))&&(a(4)>a(3))&&(a(5)>a(3)))count=count+1;c=reshape(a,2,3); %将a向量转化为2*3矩阵输出disp(c);endenddisp(['共有',num2str(count),'种填写方法']); %输出填写方法的种数试题3.编写成绩排序程序。

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基础练习题及答案

第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菜单项可以打开帮助浏览器。

MATLAB习题及参考答案

MATLAB习题及参考答案

习题:1, 计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。

2, 对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。

3, 已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。

4, 角度[]604530=x ,求x 的正弦、余弦、正切和余切。

(应用sin,cos,5, 将矩阵⎥⎦⎤⎢⎣⎡=7524a 、⎥⎦⎤⎢⎣⎡=3817b 和⎥⎦⎤⎢⎣⎡=2695c 组合成两个新矩阵: (1)组合成一个43的矩阵,第一列为按列顺序排列的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 =,求y 的最大值、最小值、均值和标准差。

matlab简单编程21个题目及答案

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考试题库+标准答案

Matlab考试题库+标准答案Matlab考试题库+答案————————————————————————————————作者:————————————————————————————————⽇期:3 填空题 1、标点符号; %—⽤来表⽰该⾏为注释⾏。

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

3、输⼊矩阵A= ,使⽤全下标⽅式⽤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=和B= 和C=均为m*n 矩阵,且存在于WorkSpace 中,要产⽣矩阵D= ,可⽤命令D=(A-C)/B.^C ,计算可⽤命令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];写出下列各指令运⾏的结果。

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.当一个小圆轮沿着一条曲线行进时,轮缘任一点的轨迹就会产生变化丰富的摆线。

matlab试题及答案开卷

matlab试题及答案开卷

matlab试题及答案开卷1. MATLAB基础操作在MATLAB中,如何创建一个名为“myMatrix”的3x3矩阵,其元素从1到9按顺序排列?答案:在MATLAB中,可以使用以下命令创建名为“myMatrix”的3x3矩阵:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```或者使用内置函数`magic`:```matlabmyMatrix = magic(3);```2. 矩阵运算给定两个矩阵A和B,其中A = [2 3; 4 5],B = [6 7; 8 9],计算A+B的结果。

答案:在MATLAB中,可以使用加号`+`来计算两个矩阵的和:```matlabA = [2 3; 4 5];B = [6 7; 8 9];C = A + B;```计算结果C为:```matlabC = [8 10; 12 14];```3. 向量操作创建一个从0到1的等差数列,步长为0.1。

答案:在MATLAB中,可以使用`linspace`函数或`:`操作符来创建等差数列:```matlabv = 0:0.1:1;```或者使用`linspace`函数:```matlabv = linspace(0, 1, 11);```两种方法都将得到一个包含11个元素的向量,从0开始,到1结束,步长为0.1。

4. 条件语句编写一个MATLAB脚本,判断一个给定的数n是否为素数。

答案:可以通过以下MATLAB脚本来判断一个数n是否为素数:```matlabfunction isPrime = isPrimeNumber(n)if n <= 1isPrime = false;elsefor i = 2:sqrt(n)if mod(n, i) == 0isPrime = false;return;endendisPrime = true;endend```调用此函数时,传入一个数值n,函数将返回一个布尔值,表示n 是否为素数。

matlab试题及答案

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习题及答案

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考试试题及答案

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上机练习题答案

(完整版)matlab 上机练习题答案1.计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积>〉 a=[6 9 3;2 7 5]; 〉〉 b=[2 4 1;4 6 8]; 〉〉 a 。

*b ans =12 36 3 8 42 402。

对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。

〉〉 A=[4 9 2;7 6 4;3 5 7]; 〉> B=[37 26 28]’; >〉 X=A\B X = -0.5118 4.0427 1.33183。

⎥⎦⎤⎢⎣⎡-=463521a ,⎥⎦⎤⎢⎣⎡-=263478b ,观察a 与b 之间的六种关系运算的结果 >〉 a=[1 2 3;4 5 6]; 〉> b=[8 –7 4;3 6 2]; >〉 a 〉b ans =0 1 0 1 0 1 〉> a 〉=b ans =0 1 0 1 0 1 >> a 〈b ans =1 0 1 0 1 0 〉> a<=b ans =1 0 1 0 1 0 >〉 a==b ans =0 0 0 0 0 0 〉〉 a~=b ans =1 1 1 1 1 14计算多项式乘法(x 2+2x +2)(x 2+5x +4)>> c=conv ([1 2 2],[1 5 4]) c =1 7 16 18 8 5计算多项式除法(3x 3+13x 2+6x +8)/(x +4) 〉〉 d=deconv ([3 13 6 8],[1 4]) d =3 1 26求欠定方程组⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡5865394742x 的最小范数解〉〉 a=[2 4 7 4;9 3 5 6]; 〉> b=[8 5]’; 〉> x=pinv (a )*b x =—0.2151 0.4459 0。

matlab作业练习及答案(有程序和截图)

matlab作业练习及答案(有程序和截图)

1. 给出如下方程组:16323313915111081697612534141543s u p w s u p w s u p w s u p w +++=+++=+++=+++=求s ,u ,p ,w 的值,并求出系数行列式。

[答案:s =-0.1258,u =-8.7133,p =11.2875,w =-0.0500。

行列式=7680。

]>> A=[16 32 33 13;5 11 10 8;9 7 6 12;34 14 15 1];>> B=[91 16 5 43]';>> C=A\B2. 求矩阵H1()H X X X X -''=其中1731565419289121110X ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦〔答案:H =〔0.7294,0.9041,0.4477,0.9188〕'〕>> X=[17 31 5;6 5 4;19 28 9;12 11 10]; >> H=X/(X'*X)*X'>> X=[17 31 5;6 5 4;19 28 9;12 11 10]; >> H=X*inv((X'*X))*X'3.用MA TLAB语言实现下面的分段函数,()/,||,h x Dy f x h Dx x Dh x D>⎧⎪==≤⎨⎪-<-⎩。

y=h*(x>D)+h/D*x.x>=-D&x<=D)-h*(x<-D)4.636263 0S=2124822 ii==++++++∑①试不采用循环的形式,用数值方法求出上式的解。

②由于数值方法采用double形式进行计算,难以保证有效数字,试采用符号运算的方法求该式的精确解。

并给出保留16位有效数字的结果。

>> sum(2.^[1:63])>> sum(sym(2).^[1:63])5.编写一个矩阵相加函数mat_add(),使其具体的调用格式为,要求该函数能接受任意多个矩阵进行加法运算。

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中,如何创建一个名为"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的基础知识。

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

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 。

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

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

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

8、在MA TLAB中,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 [0 0 0; 0 1 0; 0 0 0](2) A.*B [2 2 18;32 25 12;98 16 0](3)A(:)' [1 4 7 2 5 8 3 6 0](4)A(1,:)*B(:,3) 139、在MA TLAB中,写出下面MA TLAB语句执行的结果:(1)clear,A = ones(2,6)A =1 1 1 1 1 11 1 1 1 1 1(2)A(:) = 1:2:24A =1 5 9 13 17 213 7 11 15 19 23(3)A([1:3:7])ans =1 7 13(4)diag(diag(A))ans =1 00 7(5) B = A(:,end:-1:1)B =21 17 13 9 5 123 19 15 11 7 310、请编写一段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、 在MA TLAB 中,A 是一个10×10数组,我们把该数组看成矩阵的话,则此矩阵的行列式值 = ___det(A)__,此矩阵的逆矩阵(如果存在的话) = _inv(A)___。

(用MATLAB 的函数表示) 2、 求解下列方程组:1234234123412343212240x x x x x x x x x x x x x x x ++-=⎧⎪-+=⎪⎨+++=⎪⎪-+-=⎩34712457423859652108x y z w x y z w x z w x y z w +--=⎧⎪-++=-⎪⎨+-=⎪⎪-+-+=-⎩ A=[1 1 3 -1;0 1 -1 1;1 1 2 2;1 -1 1 -1];b=[2;1;4;0]; x=A\bA=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10]; b=[4;-3;9;-8]; xyzw=A\b3、 求有理分式()()()()3323230.522521xx x R xx x x ++=+-++的商多项式和余多项式n=conv([3 0 1 0],[3 0 0 0.5]); d=conv([1 2 -2],[5 2 0 1]); [q,r]=deconv(n,d)4、 一元多项式42234p x x x =-+,写出表示p 的MATLAB 语句__p=[2 0 -3 4 0]__,求0p =的根的MA TLAB 语句是____ roots(p)__,求 4.3x =时p 的数值的MA TLAB 语句是__ polyval(p,4.3)___。

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

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

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

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

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

function r=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;for n=100:999m=[fix(n/100) fix(mod(n,100)/10) mod(n,10)]; if n==sum(m.^3),fprintf('%i = %i^3 + %i^3 + %i^3\n',n,m); c=c+1; end endfprintf('\n 共%i 个水仙花数\n',c)输出结果:153 = 1^3 + 5^3 + 3^3 370 = 3^3 + 7^3 + 0^3 371 = 3^3 + 7^3 + 1^3 407 = 4^3 + 0^3 + 7^3共4个水仙花数绘图1、 MATLAB 中,绘制三维曲面图的函数是( )(A )surf (B )plot (C )subplot (D )plot3 2、 MATLAB 中,要绘制三维空间曲线,应该使用( )函数。

相关文档
最新文档