MATLAB期末复习真题试卷A和答案
一、 填空。(共15分,每空3分)
1、输入矩阵A=[1 3 2; 3 -5 7; 5 6 9],
使用全下标方式用 A(2,2)
取出元素“-5”,
使用单下标方式用A(5)
取出元素“-5”,
用 A(8)=[]
删除元素“7”。
2、运行如下程序后, 命令窗口(command windows)显示的结果为 37;48;57
。
s=0;
a=[10,13,14;15,16,17;18,19,20];
for k=a
s=s+k;
end
disp(s)
3、已知函数文件如下,则factor(3)= 6
。
function f=factor(n)
if n<=1
f=1;
else f=factor(n-1)*n;
end
二、阅读程序并写出下列每条指令运行结果(共15分)。
>>A=ones(2,4)
A =
1 1 1 1
1 1 1 1
>>A(: ,end)=[ ]
A =
1 1 1
1 1 1
>>A(1,:)=[1 2 3]
A =
1 2 3
1 1 1
>>reshape (A,3,2)
ans =
1 1
1 3
2 1
>>A2=[A A]
A2 =
1 2 3 1 2 3
1 1 1 1 1 1
三、程序综合设计题(共70分)
1、求多项式,在时的值,和p(x)=0时候的根。(7分)
p=sym('2*x^3+2*x^2+2');
p1=subs(p,’x’,2)
solve(p)
2、产生一个1*10的随机矩阵,大小位于(-6,6),并且按照从小到大的顺序排列好。(5分)
a=12*rand(1,10)-6;
b=sort(a)
3、编写一个脚本程序实现:在同一图上分别用红色虚线和绿色点划线绘制函数y1=sinx和y2=x2+2x-1在区间[-10,10]的曲线,要求图形显示分格线,图题为“用作图法求两条函数曲线的交点”,x轴名为“自变量x”,y轴名为“函数y1、y2的曲线”。(13分)
x= -10:0.01:10;
y1=sin(x);
y2=x.^2+2*x-1;
plot(x,y1,'r--');
hold onplot(x,y2,'g-.');
grid ontitle('用作图法求两条函数曲线的交点');
xlabel('自变量x');
ylabel('函数y1、y2的曲线');
4、z=x*e(-x^2 - y^2)),x和y的均为区间[-2,2]内线性等分的50个点,用建立子窗口的方法在同一个图形窗口中绘制出三维网线图和曲面图。(10分)
x=-2:4/49:2;
y=x;
[x1,y1]=meshgrid(x,y);
z=x1.*exp(-(x1.^2+y1.^2));
subplot(2,1,1)
mesh(x1,y1,z)
subplot(2,1,2)
surf(x1,y1,z)
5、编写一个M函数文件,使其能够产生如下的分段函数~
function y1=Exe0501(xx)
y1=zeros(1,length(xx));
for n=1:length(xx)
if xx(n) >= 6;
y1(n) = 0.5;
elseif xx(n)>2 && xx(n)<=6;
y1(n)=1.5-0.25*xx(n);
else xx(n)<=2;
y1(n)=0.5*xx(n);
end
end
end
>>x=0:0.01:2;
>>Q=Exe0501(x).*Exe0501(x+3);
>>plot(x,Q)
6、请设计一个GUI界面,如图(a)所示。要求点击点图按钮,在坐标轴中呈现余弦函数y=cos(x)的离散点图,如图(b)所示。点击火柴杆图按钮,在坐标轴中呈现余弦函数y=cos(x)的离散火柴杆图(火柴杆头用黑色填充),如图©所示。x的范围为0到2π。(10分)
请写出设计步骤:
1、怎样设计界面;
2、怎样设计控件属性;
3、怎样编写回调函数
新建GUI界面:File–>New–>GUI;
开始布局: 选择组件 Axes * 1, Static Text * 1, Push Button * 2;
修改组件名称: 双击该组件,修改 String–>名称
修改组件字体大小: 双击该组件,修改 FontSize–>12
编写回调函数:
鼠标右键,‘点图’ -->view Callbacks–>callback—>开始编写函数1,如下图;
鼠标右键,‘火柴杆图’ -->view Callbacks–>callback—>开始编写函数2,如下图.
保存,并运行
7、使用Simulink创建系统模型(10分)
请在右侧写出阶段信号源模块各参数值应设置成多少?
请在右侧写出传递函数模块各参数值应设置成多少?
MATLAB期末复真题试卷B和答案
一、 填空。(共15分,每空3分)
1、输入矩阵A=[1 3 2;3 -5 7;5 6 9] ,
使用全下标方式用 A(1,3)
取出元素“2”,
使用单下标方式用 A(7)
取出元素“2”,
用 A(5)=[]
删除元素“-5”。
2、运行如下程序后,命令窗口(command windows)显示的结果为 37;48;57
。
s=0;
a=[10,13,14;15,16,17;18,19,20];
for k=a
s=s+k;
end
disp(s)
3、已知函数文件如下,则factor(3)= 6
。
function f=factor(n)
if n<=1
f=1;
else
f=factor(n-1)*n;
end
二、阅读程序并写出下列每条指令运行结果(共15分)。
>>A=2*ones(2,4)
A =
2 2 2 2
2 2 2 2
>>A(: ,end)=[ ]
A =
2 2 2
2 2 2
>>A(1,:)=[1 2 3]
A =
1 2 3
2 2 2
>>reshape (A,3,2)
ans =
1 2
2 3
2 2
>>A2=[A A]
A =
1 2 3 1 2 3
2 2 2 2 2 2
三、程序综合设计题(共70分)
1、编写程序求解下列方程组(7分)
syms x1 x2 x3 x4;
syms eq1 eq2 eq3 eq4;
eq1=sym('4*x1-5*x2+x3+2*x4=13');
eq2=sym('x1+3*x2+x4=5');
eq3=sym('x1-x2+x3+8*x4=8');
eq4=sym('7*x1-2*x3+2*x4=9');
[x1,x2,x3,x4]=solve(eq1,eq2,eq3,eq4) %求解4个方程的解
2、产生一个1*20的随机矩阵,大小位于(-5,5),并且按照从小到大的顺序排列好。(5分)
a = 10 * rand(1,20) - 5;
b = sort(a)
3、编写一个脚本程序实现:在同一图上分别用红色虚线和绿色点划线绘制函数y1=sinx和y2=x2+2x-1在区间[-10,10]的曲线,要求图形显示分格线,图题为“用作图法求两条函数曲线的交点”,x轴名为“自变量x”,y轴名为“函数y1、y2的曲线”。(13分) (同上)
4、z = x*e(-x^2 - y^2)), x和y的均为区间[-2,2]内线性等分的50个点,分别在两个图形窗口中绘制出三维网线图和曲面图。(10分)(同上)
5、编写一个M函数文件,使其能够产生如下的分段函数:(15分) (同上)
6、请设计一个显示抽样信号( y=sin(t)/t )的GUI界面,如图(a)所示。要求点击画图按钮,绘制蓝色曲线,t 范围是[-6,6],步长0.1,并要求图形显示分格线,图形显示横坐标的范围为-7~7,纵坐标的范围为-0.5~1.2,如图(b)所示;点击尺度变换按钮,在同一图形窗口绘制红色尺度变换曲线,如图©所示。(10分)
请写出设计步骤:
1、怎样设计界面;
2、怎样设计控件属性;
3、怎样编写回调函数。
GUI等设置同上,这里就直接贴回调函数了
保存,运行,结果如下:
7、(10分)使用Simulink创建系统模型 为了从示波器上看到阶跃信号 通过传递函数为的系统产生的输出波形,应该怎样设置各模块参数。 (同上)
请在右侧写出阶段信号源模块各参数值应设置成多少?
请在右侧写出传递函数模块各参数值应设置成多少?