MATLAB计算与仿真课程试卷+答案
matlab考试题库及答案大学
matlab考试题库及答案大学# MATLAB考试题库及答案大学一、选择题1. MATLAB中用于生成0到1之间均匀分布随机数的函数是: - A. rand- B. randi- C. randperm- D. randn答案:A2. 下列哪个命令可以用于绘制函数图像?- A. plot- B. text- C. title- D. xlabel答案:A3. MATLAB中,以下哪个不是矩阵的属性?- A. size- B. length- C. rank- D. transpose答案:D4. 以下哪个函数可以用于求解线性方程组?- A. solve- B. linsolve- C. linprog- D. fsolve答案:A5. MATLAB中,用于计算矩阵特征值的函数是:- A. eig- B. eign- C. eigen- D. eigenvalue答案:A二、填空题1. MATLAB的基本数据单位是________。
答案:矩阵2. 使用MATLAB进行数值计算时,可以利用________来存储数据。
答案:变量3. MATLAB中的向量可以是________或________。
- 答案:行向量;列向量4. 矩阵的转置可以通过________操作实现。
答案:.'5. MATLAB中,使用________函数可以计算矩阵的行列式。
答案:det三、简答题1. 简述MATLAB中使用循环结构的注意事项。
答案:在MATLAB中使用循环结构时,应注意以下几点:确保循环体内部逻辑正确,避免无限循环;使用for循环时,循环变量的初始化和步长设置要合理;使用while循环时,循环条件要明确,确保循环能够正常退出。
2. 描述MATLAB中如何实现数组的多维索引。
答案:在MATLAB中,多维数组的索引可以通过使用圆括号来实现,每个维度的索引用逗号分隔。
例如,对于一个三维数组A,可以使用A(i,j,k)来访问第i行、第j列、第k层的元素。
大学matlab考试题及答案
大学matlab考试题及答案大学MATLAB考试题及答案一、选择题1. MATLAB的全称是什么?A. Matrix LaboratoryB. Microprocessor Application Tool SetC. Microsoft Advanced Tool SetD. Microprocessor Application Test System答案:A2. 在MATLAB中,以下哪个命令用于绘制三维图形?A. plotB. scatterC. surfD. bar答案:C3. MATLAB中用于求解线性方程组的函数是?A. solveB. linsolveC. linprogD. fsolve答案:A二、简答题1. 简述MATLAB的基本数据类型有哪些,并给出至少两个每种类型的示例。
答案:MATLAB的基本数据类型包括数值数组、字符数组和单元数组。
数值数组可以是向量、矩阵或多维数组。
例如,向量 `v = [1 2 3]`,矩阵 `M = [1 2; 3 4]`。
字符数组是由单引号或双引号括起来的字符序列,如 `C = 'Hello'`。
单元数组可以包含不同类型的数据,如`{1, 'text', [1; 2; 3]}`。
2. 描述如何在MATLAB中实现矩阵的转置和翻转。
答案:矩阵的转置可以通过 `'T'` 来实现,例如 `A'` 表示矩阵A 的转置。
矩阵的翻转可以通过 `flip` 函数实现,例如 `flip(A)` 可以翻转矩阵A的所有行和列,`flipud(A)` 仅翻转矩阵A的行,而`fliplr(A)` 仅翻转矩阵A的列。
三、编程题1. 编写一个MATLAB函数,该函数接受一个向量作为输入,并返回向量中所有元素的和以及平均值。
```matlabfunction [sumVal, avgVal] = calculateSumAndAverage(V)sumVal = sum(V);avgVal = mean(V);end```2. 设计一个MATLAB脚本来解决以下问题:给定一个3x3的矩阵,找出其中最大的元素,并显示其位置。
MATLAB语言:Simulink系统仿真习题与答案
一、单选题1、将模块连接好之后,如果要分出一根连线,操作方法是()。
A.把鼠标指针移到分支点的位置,按住鼠标左键拖曳到目标模块的输入端B.双击分支点的位置,按住鼠标左键拖曳到目标模块的输入端C.把鼠标指针移到分支点的位置,按下Ctrl键并按住鼠标拖曳到目标模块的输入端D.把鼠标指针移到分支点的位置,按下Shift键并按住鼠标拖曳到目标模块的输入端正确答案:C2、在一个模型窗口上按住一个模块并同时按Shift键移动到另一个模型窗口,则()。
A.在两个模型窗口都有这个模块B.在后一个窗口有这个模块C.在前一个窗口有这个模块D.在两个窗口都有模块并添加连线正确答案:A3、为子系统定制参数设置对话框和图标,使子系统本身有一个独立的操作界面,这种操作称为子系统的()。
A.包装B.封装C.集成D.组合正确答案:B4、使用S函数时,要在模型编辑窗口添加()。
A.Sine Wave模块B.S-Program模块C.Subsystem模块D.S-Function模块正确答案:D二、多选题1、启动Simulink的方法有()。
A.在命令行窗口中输入simulink命令B.在“主页”选项卡中单击SIMULINK命令组中的“Simulink”命令按钮C.在“主页”选项卡中单击“文件”命令组中的“新建”命令按钮D.在“主页”选项卡中单击“文件”命令组中的“新建脚本”命令按钮正确答案:A、B、C2、根据控制信号的控制方式不同,条件执行子系统分为()。
A.事件驱动子系统B.使能子系统C.触发子系统D.使能加触发子系统正确答案:B、C、D3、以下关于S函数的描述中,正确的有()。
A.利用S函数可以对Simulink模块库进行扩充B.S函数只能用MATLAB语言编写C.S函数有现成的模板程序D.S函数模块能够被封装正确答案:A、C、D三、判断题1、建立系统仿真模型是在Simulink模型编辑窗口中进行的。
正确答案:√2、利用触发子系统能够将锯齿波转换为方波。
matlab考试试卷及答案
MATLAB 考试试卷及答案1、 用抛物法编程计算定积分⎰-=11)sin(3)(dx e x x I x 。
第一题编程如下:format longn=100;a=-1;b=1;inum=0;syms x fxfx=x^3*exp(sin(x));for i=1:nxj=a+(i-1)*(b-a)/n;xi=a+i*(b-a)/n;xk=(xi+xj)/2;fxj=subs(fx,'x',xj);fxi=subs(fx,'x',xi);fxk=subs(fx,'x',xk);inum=inum+(fxj+4*fxk+fxi)*(b-a)/(6*n);endinumintegrate=int(fx,0,1)integrate=double(integrate)2、 画出分段函数所表示的曲线:⎪⎪⎩⎪⎪⎨⎧-<-≤>==7107710710)(x x x x x f y ,要求曲线的第一分段用绿色点划线,第二分段用黑色虚线圆圈,第三分段用蓝色实线画出,给x轴加上标注“x 轴”,y轴加上标注“y轴”,给图形加上标题“分段函数f(x)”,给三个分段曲线添加图例说明,并加注网格线。
第二题编程如下:clear;clc;x=-10:0.1:10;y=10*x.*(x>7)+10/7*x.*(abs(x)<=7)-10*(x<-7);x1=x(1:30);y1=y(1:30);x2=x(31:170);y2=y(31:170);x3=x(171:201);y3=y(171:201);plot(x1,y1,'g.');hold on;plot(x2,y2,'k--');plot(x3,y3,'b');hold on;xlabel('x轴');ylabel('y轴');title('分段函数f(x)');grid on;legend('y=10','y=10/7*x','y=-10',2);3、对于给定的方程0=xxxf,-1-)(3=)2,0(之间的近似根,要求精确到小数点后四位。
MATLAB与控制系统仿真大作业
>> G1=tf(num,den);
>> G1=zpk(G1)
G1 =
5 (s+0.6) ----------------(s+3) (s+2) (s+1)
>> num=[2 1]; den=[1 2.9 1]; G2=tf(num,den); >> G2=zpk(G2)
G2 =
2 (s+0.5)
>> xlabel('x') ylabel('exp(-2.*x)')
三、simulink 建模(每题 10 分,共 20 分)
1、已知单位负反馈的开环传递函数为 G(s) =
2 s2 + 4s
,试利用
simulink
建立系在单位阶跃输入作用下的模型。
要求答案包括:(1)simulink 建模结构图;
(2)在同一个坐标中的阶跃信号和响应曲线图。
2、已知系统的开环传递函数为
G1(s)
=
2s2 + 5s + 6 s2 + 2s + 3
、G2 (s)
=
s2
s+6 + 7s +1
,H
(s)
=
5(s + 2) s +10
求:建立 Simulink 仿真模型,并求出其系统在单位阶跃响应;
要求答案包括:(1)simulink 建模结构图;
x=
-2.9709
0.5491
3.6000
0.0509
2. 已知下列矩阵
2 3 1
−1 3 5
A
=
Matlab与系统仿真试题及答案
Matlab 与系统仿真试题及答案一、填空题(每空2分,共30分)1、单位取样序列定义为________________。
2、单位阶跃序列定义为__________________。
3、取样定理中,采样频率和原始信号频率之间至少应该满足公式_______________。
4、实现IIR 滤波器可以采用三种不同的结构:_______________、__________________和_______________。
5、对于理想的滤波特性()jwH e ,相应的()d h n 一般为无限时宽,从而使非因果的。
为此,使显示一般通过如下公式__________实现加窗处理,相应的傅里叶表达形式为_________________。
6、设计IIR 滤波器的基础是设计模拟低通滤波器的原型,这些原型滤波器有:_________、________和______________低通滤波器。
7、实现FIR 滤波器可以采用以下4中结构:________________,_______________,______________和____________。
二、阅读下列Matlab 程序,并回答完成的功能(每题5分,共10分)1、f=[00.60.61];m=[1100];b=fir2(30,f,m);[h ,w]=freqz(b,1,128);Plot(f,m,w/pi,abs)本段程序的功能是:2、[b ,a]=butter(9,300/500,’high’);Freqz(b,a,128,1000)本段程序的功能是:三、用Matlab 语言编程实现下列各小题(每小题15分,共60分)1、产生序列0.3,16p s A dB πΩ==55n -≤≤,并绘出离散图,标注图形标题为“Sequence in Example 3.1a”。
实现程序如下:2、设11()23X z z z-=++,212()2435X z z z z -=+++,求312()()()X z X z X z =+。
matlab开卷考试题及答案
matlab开卷考试题及答案MATLAB开卷考试题及答案一、选择题(每题2分,共20分)1. MATLAB中用于创建一个3x3的单位矩阵的命令是:A. `eye(3)`B. `ones(3)`C. `zeros(3)`D. `identity(3)`答案:A2. 下列哪个函数用于计算矩阵的逆?A. `inv()`B. `det()`C. `eig()`D. `trace()`答案:A3. MATLAB中,用于绘制二维图形的函数是:A. `plot()`B. `surf()`C. `mesh()`D. `bar()`答案:A4. 如何在MATLAB中计算向量的范数?A. `norm()`B. `abs()`C. `length()`D. `size()`答案:A5. MATLAB中,用于创建一个随机数矩阵的函数是:A. `rand()`B. `randi()`C. `randn()`D. `randperm()`答案:A6. 下列哪个命令用于在MATLAB中求解线性方程组?A. `solve()`B. `fsolve()`C. `fzero()`D. `linsolve()`答案:A7. MATLAB中,用于计算矩阵的行列式的函数是:A. `det()`B. `trace()`C. `eig()`D. `inv()`答案:A8. 如何在MATLAB中创建一个全1的3x3矩阵?A. `ones(3,3)`B. `eye(3,3)`C. `zeros(3,3)`D. `rand(3,3)`答案:A9. MATLAB中,用于计算矩阵的特征值的函数是:A. `eig()`B. `eigs()`C. `svd()`D. `qr()`答案:A10. 下列哪个函数用于计算矩阵的奇异值分解?A. `eig()`B. `svd()`C. `qr()`D. `lu()`答案:B二、填空题(每题3分,共30分)1. MATLAB中,用于创建一个3x3的零矩阵的命令是 `____`。
MATlab 仿真部分习题答案
[4.1]控制系统结构如图4.1所示(1)利用MATLAB对以上单位负反馈控制系统建立传递函数;(2)将第一问中求得的传递函数模型转化为零极点增益形式和状态空间形式。
解:(1)num=[2 2];den=[1 2 1];[num1,den1]=cloop(num,den);sys=tf(num1,den1)程序运行结果如下:Transfer function:2 s + 2-------------s^2 + 4 s + 3(2)[z,p,k]=tf2zp(num1,den1);g_zpk=zpk(z,p,k);[A,B,C,D]=zp2ss(z,p,k);g_ss=ss(A,B,C,D)程序运行结果如下:z = -1 p = -3 -1 k = 2a = x1 x2x1 -4 -1.732x2 1.732 0b = u1x1 1x2 0c = x1 x2y1 2 1.155d = u1y1 0K[5.1]设单位负反馈控制系统的开环传递函数为G(S)=+s(s^2+7s17)(1)试绘制k=10、100时闭环系统的阶跃响应曲线,并计算稳态误差、上升时间、超调量和过渡过程时间;(2)绘制k=1000时闭环系统的阶跃响应曲线,与k=10、100时所得的结果相比较,分析增益系数与系统稳定性的关系;解:(1)k=10时,K=100时,K=10时,利用MA TLAB工作区输入程序:num=[10];den=[1,7,17,0];[z,p,k]=tf2zp( num,den);运行得z,p,k的值p= -3.5+2.1794*i -3.5-2.1794*i k=10G=zpk([ ],[-3.5+2.1794*i,-3.5-2.1794*i],10);c=dcgain(G);[y,t]=step(G);plot(t,y)[Y,K]=max(y);timetopeak=t(k);percentovershoot=100*(y-c)/cn=1;while y(n)<c n=n+1;end risetime=t(n) i=length(t);while(y(i)>0.98*c&y(i)<1.02*c) i=i-1;End setllingtime=t(i) 运行程序结果为:稳定值c=0.5882,响应时间setllingtime=1.0096s,上升时间risetime=1.1989s,最大峰值时间timetopeak=1.4356,超调量percentovershoot=0.555% 同理得k=100时,稳定值c=5.882,响应时间setllingtime=1.0096s, 上升时间risetime=1.1989s,最大峰值时间timetopeak=1.4356,超调量percentovershoot=0.555%(3)k=1000时,由其响应曲线可知,增益系数越大,其稳定性越差。
MATLAB计算与编程练习题参考答案
MATLAB计算与编程练习题参考答案以下是MATLAB计算与编程练习题的参考答案,希望能对您的学习有所帮助。
1. 编写一个MATLAB程序,计算并输出1到100之间所有奇数的和。
```matlabsum = 0;for i = 1:2:100sum = sum + i;enddisp(sum);```2. 编写一个MATLAB函数,接受一个参数n,计算并返回1到n之间所有偶数的平方和。
```matlabfunction result = even_squared_sum(n)result = 0;for i = 2:2:nresult = result + i^2;end```3. 编写一个MATLAB程序,生成并输出一个5x5的随机矩阵,然后计算并输出矩阵的转置。
```matlabmatrix = randi([1, 10], 5, 5);disp(matrix);transposed_matrix = matrix';disp(transposed_matrix);```4. 编写一个MATLAB函数,接受两个参数a和b,计算并返回a和b的最大公约数。
```matlabfunction gcd = compute_gcd(a, b)while b ~= 0temp = b;b = mod(a, b);a = temp;gcd = a;end```5. 编写一个MATLAB程序,读取一个文本文件,统计并输出文件中每个字符的出现次数。
```matlabfilename = 'text.txt';file = fopen(filename, 'r');content = fscanf(file, '%c');fclose(file);characters = unique(content);count = zeros(size(characters));for i = 1:length(characters)count(i) = sum(content == characters(i));enddisp([characters; count]);```6. 编写一个MATLAB程序,生成一个100个元素的斐波那契数列,并绘制该数列的图形。
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.要求在闭区间[0,2Π]上产生具有10个等间距采样点的一维数组。
试用两种不同的指令实现。
解答:方法1:a=0:2*pi/9:2*pi方法2:a1=linspace(0,2*pi,10)4.任意建立矩阵A,然后找出在[10,20]区间的元素的位置。
解答:A=[4,15,-45,10,6;56,0,17,-45,0]A =4 15 -45 10 656 0 17 -45 0>> find(A>=10&A<=20)ans =367第二章M文件的2种形式:命令文件和函数文件。
命令文件没有输入输出参数,执行时只需在命令窗口中键入文件名回车即可;而函数文件是一条以function语句作为引导。
即文件的第一行为function[返回参数1,返回参数2,…]=函数名(输入参数1,输入参数2,…)。
这一行的有无是区分命令文件与函数文件的重要标志。
函数文件可以接受输入变量,还可以返回输出变量,执行时需在命令窗口中以固定格式调用函数方可。
习题22-1.编写程序,建立向量N=[1,2,3,4,5],然后利用向量N产生下列向量:(1) 2,4,6,8,10(2) 1/2, 1, 3/2, 2, 5/2(3) 1, 1/2, 1/3, 1/4, 1/5(4) 1, 1/4, 1/9, 1/16, 1/25解答:>> N1=2*N >> N2=N/2 >> N3=1./N >> N4=1./N.^2 2-2从键盘输入一个3位数的整数,将它反向输出。
如输入639,输出936。
输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。
其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
要求:(1)分别用if语句和switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
matlab试题与答案
例8 绘制三维曲面图z=sin(x+sin(y))-x/10。 程序如下: [x,y]=meshgrid(0:0.25:4*pi); z=sin(x+sin(y))-x/10; mesh(x,y,z); axis([0 4*pi 0 4*pi -2.5 1]);
1.编程实现当α∈[-π,π],间隔为1°时求解 正弦和余弦的值。 2.利用rand函数产生(0,1)间均匀分布的 10×10随机矩阵A,然后统计A中大于等于 0.6的元素个数。 3.利用randn函数产生均值为0,方差为1的 10×10正态分布随机阵A,然后统计A中大 于-0.5且小于0.5的元素个数。
调用tran.m的命令文件main1.m: x=input('Please input x=:'); y=input('Please input y=:'); [rho,the]=tran(x,y); rho the
例1 在0≤x≤2p区间内,绘制曲线 y=2e-0.5xcos(4πx) 程序如下: x=0:pi/100:2*pi; y=2*exp(-0.5*x).*cos(4*pi*x); plot(x,y),grid on;
4.编程实现下表功能
b a A<1 a≥1 b≤0.5 语句 1 语句 3 B>0.5 语句 2 语句 4
5.有一矩阵A,找出矩阵中其值大于1的元素,并 将它们重新排列成列向量B。 6.在一测量矩阵A(100×3)中,存在有奇异值(假设 大于100的值认为是奇异值),编程实现删去奇异 值所在的行。 7.在给定的100×100矩阵中,删去整行内容全为0 的行,删去整列内容全为0的列。
0 0 8 a 0 7 5 2 3 0
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考试题库及答案+要点总结
一、 辨析题(共2小题,每题 5 分,共计 10 分) 二、 问答题(共3小题,每题 5 分,共计 15 分) 三、 计算题(共7小题,每题 5 分,共计 35 分) 四、 编程题(共4小题,每题 10 分,共计 40 分)填空题(计算部分)1、标点符号; _______可以使命令行不显示运算结果,%——用来表示该行为注释行。
2、x 为0 ~4pi ,步长为0.1pi 的向量,使用命令_______创建。
x=0:0.1*pi:4*pi3、输入矩阵A=[1323−57569] ,使用全下标方式用A(2,2) 取出元素“-5 ”,使用单下标方式用_______取出元素“-5 ”。
A(5)4、符号表达式sin(2*a+t)+m 中独立的符号变量为_______。
t 5、M 脚本文件和M 函数文件的主要区别是M 脚本文件没有函数定义和M 函数文件有函数定义_______。
6. 设x 是一维数组,x 的倒数第3个元素表示为_______; 设y 为二维数组,要删除y 的第34行和48列,可使用命令_______; _______; x(_end-2_) y(34,:)=[] y(:,48)=[]7. 将变量x 以Ascii 文本格式存储到文件fname.txt ,应使用命令_________ _;save _x8. 在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 cij ⁄)m∗n,可用命令________ _,计算|(A ′B )−1|可用命令________;D=(A-C)/B.^Cdet(inv(A’*B)11. 在MATLAB命令窗口中的“>>”标志为MATLAB的_______提示符,“│”标志为_______提示符。
matlab试题及答案
matlab试题及答案XX 学院2013~2014学年第⼆学期期终考试《MATLAB 》试卷 A 第1页共7页XX 学院2013-2014学年第⼆学期期终考试Matlab 应⽤试题(A )适⽤班级:X 计科111-2注意事项:1.在试卷的标封处填写院(系)、专业、班级、姓名和准考证号。
2.考试时间共100分钟,开卷。
⼀、填空题(共20分,每空2分)1、标点符号 _______可以使命令⾏不显⽰运算结果,2、x 为0 ~4pi ,步长为0.1pi 的向量,使⽤命令_______创建。
3、输⼊矩阵A=使⽤全下标⽅式⽤A(2,2) 取出元素“-5 ”,使⽤单下标⽅式⽤_______取出元素“-5 ”。
4、符号表达式sin(2*a+t)+m 中独⽴的符号变量为_______。
5、M 脚本⽂件和M 函数⽂件的主要区别是_______。
6. 设x 是⼀维数组,x 的倒数第3个元素表⽰为_______;设y 为⼆维数组,要删除y 的第34⾏和48列,可使⽤命令_______; _______;7. 将变量x 以Ascii ⽂本格式存储到⽂件fname.txt ,应使⽤命令_________ _;8. 在while 表达式, 语句体, End 循环语句中,表达式的值__ __时表⽰循环条件为真,语句体将被执⾏,否则跳出该循环语句。
⼆、选择题(20分,每题2分) 1. 下列变量中的最⼤数是( )A .epsB .realminC .realmaxD .-pi 2. 下列表⽰可以作为MATLAB 的变量的是( )2A .abcd- 2B .xyz_2#C .@hD .X_1_a 3. 如果x=1: 2 : 8,则x(1)和x(4)分别是( ) A .1,8 B .1, 7 C .2, 8 D .2, 7 4. 下列变量中⽐0⼤的最⼩数是( ) A .iB .realminC .realmaxD .pi5. 在MATLAB 中下列数值的表⽰不正确的是() A .+99 B .1.3e-5 C .2-3*e^2 D .3-2*pi6. 下列表⽰可以作为MATLAB 的变量的是( ) A .abcd-2 B .xyz_2a C .@h D .3hour7. 如果x=1:-2:-8,则x(1)和x(5)分别是( ) A .1,-8 B .-1,-7 C .-1,-8 D .1,-78. MATLAB 表达式2*2^3^2的结果是( ) A .128 B .4096 C. 262144 D .2569. 下列哪个变量的定义是不合法的()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.简答题(每题5分,共40分)
1.数组运算和矩阵运算的运算符有什么区别?
答:在加、减运算时数组运算与矩阵运算的运算符相同,乘、除和乘方运算时,在矩阵运算的运算符前加一个点即为数组运算,如a*b为矩阵乘,a.*b为数组乘。
2. 命令文件与函数文件的主要区别是什么?
答:(1)命令文件是一系列命令的组合,函数文件的第一行必须用function说明;
(2)命令文件没有输入参数,也不用返回参数,函数文件可以接受输入参数,也可以返回参数;
(3)命令文件处理的变量为工作空间变量,函数文件处理的变量为函数内部的局部变量,也可以处理全局变量。
3. 如何定义全局变量?
答:用关键字global可以把一个变量定义为全局变量,在M文件中定义全局变量时,如果在当前工作空间已经存在了相同的变量,系统将会给出警告,说明由于将该变量定义为全局变量,可能会使变量的值发生改变,为避免发生这种情况,应该在使用变量前先将其定义为全局变量。
4. 什么是Simulink ?
答:Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持连续的、离散的或二者混合的线性和非线性系统,也支持具有多种采样速率的多速率系统。
5. 如何在Simulink中进行指定仿真时间的操作?
选择Simulation菜单打开参数设置对话框,在Solver页面中第一项Simulation time 中通过输入开始时间和结束时间来确定仿真时间。
6. MATLAB的变量命名有什么规则?能用”NaN”来作为变量名吗,为什么?
答:变量可以包括数字、字母、下划线,必须以字母开头
可以,因为符合变量名命名规则
7. 简述MATLAB命令窗的主要作用?
答:命令窗口是MATLAB的主要交互窗口,用于输入命令并显示除图形以外的所有执行结果。
是MATLAB提供给用户使用的管理功能的人机界面,其管理功能包括:管理工作空间中的变量、数据的输入输出的方式和方法,开发、调试、管理M 文件和M函数的各种工具。
8. 简述MATLAB桌面集成环境包括的7个窗口及其主要功能?
答:桌面是MATLAB的主要工作界面。
命令窗口是MATLAB的主要交互窗口,用于输入命令并显示除图形以外的所有执行结果。
工作空间管理窗口用于显示当前计算机内存中MATLAB变量的名称、数学结构、该变量的字节数及其类型,可对变量进行观察、编辑、保存和删除。
命令历史窗口显示用户在命令窗口中所输入的每条命令的历史记录,并标明使用时间,这样可以方便用户查询。
当前目录窗口显示当前用户工作所在的路径。
Start菜单用于选择菜单中的命令执行MATLAB产品的各种工具,并且可以查阅MATLAB所含的各种资源。
编译窗口为用户提供了一个图形界面进行M文件的编写和调试。
二.编程题(每题10分,共60分)
1.编写M文件,使用for循环计算f=5^x,当f(x)>500就终止程序,在命令窗口中调用函数文件,求终止程序时f的值和n运行的值分别为多少?
解:
function[y]=f(x) % 2分
for x=1:00 % 4分
f=5^x
if f>500
f=z
n=x
break % 4分
end
end
2. 编写程序分别对符号表达式23
3546
f x y x y
=+-+的x和y求一阶微分。
解:smys x y % 2分
f=3*x^2+5*y^3-4*x+6*y; % 4分
dfdx=diff(f)% 对x求一阶微分% 2分
dfdy=diff(f,y)% 对y求一阶微分% 2分
3. 写出用黑色画出一条正弦虚线和一条余弦点划线,时间为0到2π并标记横坐标和纵坐标,并限定x轴和y轴的显示范围,并添加图例的步骤。
解:
x=0:pi/10:2*pi;
y1=sin(x);
y2=cos(x); %4分
plot(x,y1,’:b’,x,y2,’-.b’) % 2分
xlabel(‘x’)
ylabel(‘y’) %2分
axis([0 2*pi -1 1]) %2分
第1页(共2页)
legend('sin(x)','cos(x)');
4. 写出计算
693
275
A
⎡⎤
=⎢⎥
⎣⎦
与
241
468
B
⎡⎤
=⎢⎥
⎣⎦
的数组乘积C,而后删除C的第1、3两
列。
解:
A=[6 9 3;2 7 5]; % 2分
B=[2 4 1;4 6 8]; % 2分
C=A.*B% 3分
C(:,[1 3])=[] %3分
5.编写MATLAB程序,用三阶多项式来拟合数据,在同一图形窗口中绘制拟合前和拟合后两条曲线,并对图形坐标轴进行控制。
(每空2分)
clc;clear;close all; %清除命令窗口中的内容,清除工作空间中保持的变量,关闭所有的图形窗口。
x=[1, 2, 3, 4, 5];y=[5.1, 6.2, 7.0, 8.2, 9.3];
p=polyfit(x,y,3) ; %采用三阶多项式拟合
x2=1:0.1: 5;
y2=polyval(p,x2); %拟合后的曲线
figure(1)%指定1号图形窗
plot(x1,y1,’k -’,x2,y2,’r:’); %绘制曲线,用黑色实线画y1,用红色虚线画y2 m1 = max([y, y2]); m2 = min([y, y2]);
axis([0 6 m2 m1]); %用axis调制坐标轴,横坐标在[0 6]之间,且完全显示图形set(gca,’Xtick’,[ 1, 3, 5], ’Ytick’,[ 5, 7, 8],) %设置二维坐标刻度为x轴[1, 3, 5],y轴为[5, 7, 9]
title(‘多项式曲线拟合’); %加上标题“多项式曲线拟合”
xlabel('/itx');ylabel('/ity'); %加上横、纵坐标名“x”和“y”的斜体
legend(‘y1’,‘y2’); %绘制两条曲线所用线型、色彩或数据点形图例
6. 编制一个解数论问题的函数文件:取任意整数,若是偶数,则用2除,否则乘3加1,重复此过程,直到整数变为1。
解:
function c=collatz(n) % 2分
% collatz
% Classic “3n+1” Ploblem from number theory c=n;
while n>1% 2分
if rem(n,2)==0% 2分
n=n/2;
else% 2分
n=3*n+1;
end
c=[c n]; % 2分
end
第2页(共2页)。