中南大学MATLAB试卷
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.填空(每空2分,共计20分)
1.将编辑好的程序文件sub.m存储在C:\下,在Matlab命令窗口输入add1,回车执行该程
序,出现“??? Undefined function or variable 'add1'.”的错误,则可能的原因是_____
_______未定义______________________。
2.表达式sum(magic(3))的值是__15 15 15_______.
3.执行命令A=1:9;B=10-A; L1=A<=3;L2=A>3&B<7;L3=find(B>3&B<=7); 则
L1=_ __1 1 1 0 0 0 0 0 0__,
L2=___0 0 0 1 1 1 1 1 1_____;
L3=___ 3 4 5 6_____.
4.已知a=[1 2 3;4 5 6;7 8 9],则a([1,3],[2,3])= [ 2,3;8,9] ,
a([2,3,5,6])= 4 7 5 8
, a([1,2;4,5])= [1,4;2,5]
5.生成向量A=linspace(1,100,91),可用与其等价的命令_ _A=1:1.1:100___实现。
6.将矩阵A的次对角线元素乘以2,并将这些元素构成对角阵B的命令为:
diag() 。
二.根据要求写命令(序列)(每小题5分,共计30分)
1.将矩阵A的第2-5行中第1、3、5列元素赋给矩阵B,其命令为 B=A(2:5,1:3:5) 2.将矩阵A(3X4)按行优先进行升序排序得到矩阵B(3X4),其命令为_____________
3.产生均值为3、方差为0.2的5阶正态分布随机矩阵y。y= 3+sqrt(0.2)*randn(5)
4.求a矩阵对角线上所有元素的均值 mean(diag(a))
5.S为将矩阵A的第一列元素乘以1,第二列元素乘以2,….第i列元素乘以i,得到的,
写出产生S的命令(提示:m = size(X,dim)可求得X的第dim维的大小)
三.程序阅读,写出程序的运行结果(每小题5分,共计30分)
1. a=[1,2,3,4;5,6,7,8]
m=a>=5|a<2;
a(m) a =
[1 2 3 4
5 6 7 8]
2. a=0:4;
b=2.^a;
sum(b) 31
3.s=0;
a=[5,8,20;15,11,30;15,100,17;6,25,35];
for k=a
for j=1:4
if rem(k(j),5)~=0
s=s+k(j);
end
end
end
s 42
4. a=[3 1 7 9 8 13];
a=-sort(-a) a= [13 9 8 7 3 1]
5. ch='ABc123d4e56Fg9';
k=find(ch>='A'&ch<='Z');
ch(k)=ch(k)+('a'-'A');
char(ch) 输出结果: abc123d4e56fg9
6.函数ex.m 如下:
function out=ex(x)
[m,n]=size(x);
if m>1
error('input error')
end
if n>0
[num,index]=max(x);
x(index)=[];
Z=ex(x);
out=[Z,num];
else
out=[];
end
在命令窗口输入:ex([3.1, 4.5, 5.6, 1.3, 2.6, 7.5, 1.1])
则输出结果为_________ 1 2 4 8 16____________________
四.程序设计(2题,共20分)
1.编写函数实现计算下面表达式的值,编写主程序,完成调用该函数分别计算 n=100、
1000、10000时的值。
))
12)(12()2)(2()...(7*56*6)(5*34*4)(3*12*2(+-n n n n 2. 编程实现:在x, y 平面内的选定区域]2,2[]2,2[ππππ-⨯-绘制函数
)cos(322xy y x z +-=
的三维网格图(在左子图)和三维曲面图(在右子图). 要求网格间距为
10
π,为两子图加标题及标注。(不必绘图)