MATLAB期末考试试卷及其参考答案[1].doc
《MATLAB期末考试试卷及其参考答案[1].doc》由会员分享,可在线阅读,更多相关《MATLAB期末考试试卷及其参考答案[1].doc(9页珍藏版)》请在冰豆网上搜索。
MATLAB期末考试试卷及其参考答案
一、填空题(每空1分,20分)
1、MATLAB常用操作界面包括、工作空间窗口、
、、内存数组编辑器、M文件
编辑/调试器、帮助导航/浏览器、图形窗口等。
2、MATLAB中Inf或inf表示、NaN或nan表示、
nargout表示。
3、MATLAB中逗号主要用作;
用作输入量与输入量之间的分隔符;。
4、工作空间浏览器主要用于内存变量的、和。
5、MATLAB实现将全下标转换为单下标的指令为、据单下标换
算出全下标的指令为。
6、二维数组的标识有、、“逻辑1”标识。
7、在一个元胞数组A中寻访第2行第3列元胞元素用;寻访数
组第2行第3列元胞中所存的内容用。
8、4、MATLAB中clf用于、clc用于、
clear用于。
二、简答题(每题5分,共20分)
1、简述MATLAB历史指令窗的主要作用。
2、简述空数组的功用。
3、简述MATLAB函数的基本结构。
4、简述绘制二维图形的一般步骤。
三、阅读程序并回答问题(每题4分,共28分)
1、写出下列指令运行结果。
A=zeros(2,4);
A(:
)=1:
8;
s=[235];
A(s)
Sa=[102030]'
A(s)=Sa
2、写出下列指令运行结果。
A=reshape(1:
16,2,8)
reshape(A,4,4)
s=[13689111416];
A(s)=0
3、写出下列指令运行结果。
A=[1,2;3,4];
B=[-1,-2;2;1];
S=3;
A.*B
A*B
S.*A
S*B
4、下面的函数主要完成什么功能?
functionf=factor(n)
ifn<=1
f=1;
else
f=factor(n-1)*n;
end
5、写出下列指令运行结果。
ch=‘ABc123d4e56Fg9’;
subch=ch(1:
5)
revch=ch(end:
-1:
1)
k=find(ch>=‘a’&ch<=‘z’);
ch(k)=ch(k)-(‘a’-‘A’);
char(ch)
6、写出下列指令运行结果。
A(1,1)={'thisiscell'};
A{1,2}={[123;456]};
A{2,1}=[1+2*i];
A{2,2}=A{1,2}{1}+(A{1,2}{1}(1,1)+A{1,2}{1}(2,2));
celldisp(A)
7、下面的程序完成功能是什么?
t=0:
pi/50:
4*pi;
y0=exp(-t/3);
y=exp(-t/3).*sin(3*t);
plot(t,y,'-r',t,y0,':
b',t,-y0,':
b')
xlabel(‘\bf\itt’);
ylabel(‘\bf\ity’);
gridon;
四、编程题(32分)
1、1、在同一图上分别用红色实线和绿色虚线绘制y1=sin(x)和y2=cos(x)在区间[0,4*pi]的曲线,并用星号*标出两条曲线的交点以及建立图例。
(5分)2、分别在同一图形窗的不同子图绘制y=sin(t)sin(9t)和y=sin(t)sin(9t)及其包络线。
(4分)
3、某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):
price<200没有折扣
200≤price<5003%折扣
500≤price<10005%折扣
1000≤price<25008%折扣
2500≤price<500010%折扣
5000≤price14%折扣
输入所售商品的价格,求其实际销售价格。
(5分)
4、编写程序实现f(n)=f(n-1)+f(n-2)(f
(1)=1和f
(2)=2)函数。
(6分)
5、编写一个学生成绩管理的程序(12分)
A.构造一个学生结构,包括学生的学号,姓名,课程名称(限五门),考试成绩和平均值等域;(4分)
B.从键盘上,连续输入N个学生的情况,分别将这些学生的情况填入到相应的域,若域中没有值即为空或0并计算平均成绩写入到平均值域。
(4分)
C.根据平均值排序,并输出学生的姓名、学号和平均成绩。
(4分)
参考答案
一、填空题(每空1分,20分)
1、MATLAB常用操作界面包括命令窗口、工作空间窗口(浏览器)、
命令历史窗口、当前目录窗口、内存数组编辑器、M文件编辑/调试器、
帮助导航/浏览器、图形窗口等。
2、MATLABInf或inf表示无穷大、NaN或nan表示不是一个数、nargout表示函数输出宗量数目。
3、MATLAB中逗号主要用作要显示计算结果的指令与其后指令的分隔;
用作输入量与输入量之间的分隔符;用作数组元素分隔符号。
4、工作空间浏览器主要用于内存变量的查阅、保存和编辑。
5、MATLAB实现将全下标转换为单下标的指令为Sub2ind、据单下标换算出全
下标的指令为Ind2sub。
6、二维数组的标识有“全下标”标识、“单下标”标识、“逻辑1”标识。
7、在一个元胞数组A中寻访第2行第3列元胞元素用A(2,3);寻访数组第
2行第3列元胞中的内容用A{2,3}。
8、MATLAB中clf用于清除图形窗、clc用于清除指令窗中显示内容、clear
用于清除MATLAB工作空间中保存的变量。
二、简答题(每题5分,共20分)
1、简述MATLAB历史指令窗的主要作用。
历史指令窗记录着用户在MATLAB指令窗中所输入过的所有指令。
历史记录
包括:
每次开启MATLAB的时间,每次开启MATLAB后在指令窗中运行过
的所有指令。
应用功能有单行或多行指令的复制和运行、生成M文件等。
2、简述空数组的功用。
“空”数组的功用:
在没有“空”数组参与的运算时,计算结果中的“空”
可以合理地解释“所得结果的含义”;运用“空”数组对其他非空数组赋值,
可以改变数组的大小,但不能改变数组的维数。
3、简述MATLAB函数的基本结构。
典型M函数文件的结构:
函数申明(定义)行(Functiondeclarationline)、
H1行(Thefirsthelptextline)、在线帮助文本(Helptext)区、编写和修改记录、
函数体(Functionbody)。
4、简述绘制二维图形的一般步骤。
绘制二维图形的一般步骤为:
曲线数据准备、选定图形窗及子图位置、调用二维曲线绘图指令、设置轴的范围、坐标分格线、图形注释、图形的精细操作。
三、阅读程序并回答问题(每题4分,共28分)
1、写出下列指令运行结果。
A=zeros(2,4);
A(:
)=1:
8;
s=[235];
A(s)
Sa=[102030]'
A(s)=Sa
ans=
235
Sa=
10
20
30
A=
120307
10468
2、写出下列指令运行结果。
A=reshape(1:
16,2,8)
A=
13579111315
246810121416
reshape(A,4,4)
ans=
15913
261014
371115
481216
s=[13689111416];
A(s)=0
A=
0057001315
2400101200
3、写出下列指令运行结果。
A=[1,2;3,4];
B=[-1,-2;2,1];
S=3;
A.*B
A*B
S.*A
S*B
ans=
-1-4
64
ans=
30
5-2
ans=
36
912
ans=
-3-6
63
4、下面的函数主要完成什么功能?
functionf=factor(n)
ifn<=1
f=1;
else
f=factor(n-1)*n;
end
利用函数的递归调用,求n!
。
5、写出下列指令运行结果。
ch=‘ABc123d4e56Fg9’;
subch=ch(1:
5)
revch=ch(end:
-1:
1)
k=find(ch>=‘a’&ch<=‘z’);
ch(k)=ch(k)-(‘a’-‘A’);
char(ch)
length(k)
subch=
ABc12
revch=
9gF65e4d321cBA
ans=
ABC123D4E56FG9
6、写出下列指令运行结果。
A(1,1)={'thisiscell'};
A{1,2}={[123;456]};
A{2,1}=[1+2*i];
A{2,2}=A{1,2}{1}+(A{1,2}{1}(1,1)+A{1,2}{1}(2,2));
celldisp(A)
A{1,1}=
thisiscell
A{2,1}=
1.0000+2.0000i
A{1,2}{1}=
123
456
A{2,2}=
789
101112
7、在同一个图中绘制两个函数,这两个函数分别是:
y=e(-t/3)
y0=e(-t/3)*sin(3t)
其中y是用红色的细实线,而y0是用兰色的虚线绘制,t的区间是(0:
4p),
t的步长为p/50,t轴和y