[0.5,0.5,0] 。
7.若a=[1,2,3;2,0,5],则执行b=all(a)后,b=[1,0,1] 。
8.在循环结构中跳出循环,但继续下次循环的命令为continue 。
9.已知syms t x,且x=sin(t),则subs(x,t,pi/2)=
1 。
10.M脚本文件和M函数文件的主要区别是M函数文件有函数定义行和M函数可以进行变量的传递。
二、判断题
1. 按二进制保存数据命令用fread。(×)
2.a是一个矩阵,a.*2与a*2的结果一样。(√)
3. Matlab 中默认的数据类型是double 型。 ( √ )
4. isnumeric 函数判断输入参数是否为数值类型。 ( √ )
5. 脚本文件和函数文件的区别在于脚本文件没有注释行。 ( × )
6. t=-2.5,执行y=fix(t)后,y 的结果是-3。 ( × )
7. 通常,Simulink 仿真过程分为初始化和模型执行两个阶段。 ( √ )
三、简答题
1. 设222()x y z x e -+=,求定义域x=[-3,3],y=[-3,3]内的z 值(网格取0.1见方),并
绘制出三维曲面。
x=-3:0.1:3; y=x;
[X,Y]=meshgrid(x,y);
Z=X.^2.*exp(-X.^2+Y .^2);
surf(X,Y ,Z);
2. 编程求系统324()364s
H s s s s =+++的零、极点向量和增益系数。
num=[0,0,4,0];
den=[1,3,6,4];
[z,p,k]=tf2zp(num,den);
;
3. 已知滤波器的系统函数221
()0.50.8z H z z z +=++,画出它的幅频和相频曲线。
B=[2,1];
A=[1,0.5,0.8];
W=0:0.1:2*pi*5;
freqz(B,A,W)
4.创建一个3* 4随机阵,提取第一行和第二行中大于0.5的元素组成矩阵。
A=rand(3,4);
B=A([1,2],:);
C= B>0.5; C=find(B>0.5)
D=B(C); D=B(C)
5.在某处测得海洋不同深度处的水温如下:利用分段线性插值函数,求在深度为500m、1000m、1500m处的水温。
x=[446,714,950,1422,1634];
y=[7.04,4.28,3.40,2.54,2.13];
X=440:10:1800;
Y=interp1(x,y,X,'*linear');
for i=1:137
if X(i)==500
y1=Y(i);
elseif X(i)==1000
y2=Y(i);
elseif X(i)==1500
y3=Y(i);
end
end
6.设f(x)=x^5-4x^4+3x^2-2x+6,取x=[-2,8]之间函数的值(取100个点),画出曲线。
function y=exam6(x)
y= x.^5-4.*x.^4+3.*x.^2-2.*x+6’;
>> a=linspace(-2,8,100);
>>b=exam6(a);
>>plot(a,b)
7.在[-10,10;-10,10]
范围内画出函数的三维图形。z=
x=-10:0.1:10; y=x;
[X,Y]=meshgrid(x,y);
a=sqrt(X.^2+Y.^2);
Z=sin(a)./(a+eps);
mesh(X,Y,Z);
8.若x(n)=cos(npi/6)是一个N=12的有限长序列,计算它的DFT并画出图形。
n=0:11; x=cos(n*pi/6);
k=-200:200; w=(pi/100)*k;
X=x*(exp(-j*pi/100)).^(n’*k);
magX=abs(X); angX=angle(X);
subplot(2,1,1); plot(w/pi,magX); grid
subplot(2,1,2); plot(w/pi,angX); grid
9.编写一个函数文件,函数实现的功能:若输入的是一个非数值类型的数据,
则返回字符串“出错!”;否则,若输入的数大于1,则返回字符串“大于1”,其余情况,返回字符串“小于1”。
function y=panduan(x)
if ~isnumeric(x)
y=(’出错!’);
else if x>1
y=(‘大于1!’);
else
y=(‘小于1!’);
end
end