Matlab期中复习题
1、求矩阵特征值的函数是 【 A 】
(A) eig (B) det (C) trace (D) eye
2、MATLAB中rand函数的作用是 【 D 】
(A) 矩阵分解 (B) 求矩阵的秩 (C) 矩阵转置 (D) 产生随机矩阵
3、下列标识符中可以用作Matlab变量名的是 【 B 】
(A) 123 (B) _abc (C) sin (D) end
5、MATLAB中获取函数句柄的符号是 【 C 】
(A) & (B) ~ (C) @ (D) ^
6、以下有关Matlab说法中不正确的是 【 C 】
(A) Matlab区分字母的大小写;
(B) Matlab中数组下标是从1开始;
(C) Matlab中可以定义指针类型变量;
(D) Matlab中的函数可以返回可变数目的输出参数;
7、根据一组给定的采样点x0=0:0.1:1; y0=[-.447,1.978,3.11,5.25,5.02,
4.66,4.01, 4.58, 3.45, 5.35,9.22];,求3阶拟合多项式的Matlab命令是 【 C 】
(A) polyval(x0,y0,3) (B) interp1(x0,y0,3) (C) polyfit(x0,y0,3) (D) spline(x0,y0,3)
8、以下有关Matlab函数的说法中正确的是 【 B 】
(A) 函数不在Matlab的当前工作目录下时不可执行;
(B) 用户定义函数被调用时,以所存储的m文件的文件名作为函数名;
(C) 一个函数文件中只允许定义一个函数;
(D) 用户定义的函数不在Matlab的搜索路径、当前目录中时,也可以执行。
二、填空题
9、表示
y2cos(x)的Matlab表达式为_______sqrt(pi/2)*cos(x) ___。
10、Matlab中与linspace(0,2*pi,101) 等价的命令是 0:pi/50:2*pi 。
11、求1+2+3+.......+2008的Matlab命令是 sum(1:2008) 。
12、有一个10×10矩阵A,表示取得矩阵A的第七行和第五行的第六列至第九列所有元素的命令是 A([7 5],6:9) 。
13、对于给定的字符串a,将其倒过来重新排列的MATLAB命令是 a(end:-1:1)。
14、Matlab命令conv([1,0,2], conv([1,4],[1,1]))计算的是
___(p2+2)(p+4)(p+1)__ ___________的值。
15、Matlab中计算微分方程初值问题数值解的函数是__ode23/ode45__________.
三、判断题
16、在Matlab中,命令f=inline('exp(x)*cos(y)','x','y')的含义是建立内联函数
f(x,y)excosy。 【 √ 】
17、在Matlab中,表示“逻辑非”运算的运算符是!。 【 X 】
18、Matlab中的变量没有数据类型。 【 X 】
19、在Matlab中,feval函数能执行函数句柄指定的计算。 【 √ 】
20、在Matlab的数值计算中,可以计算二重积分。 【 √ 】
21、Matlab中clear命令只能用来清空所有内存变量。 【 X 】
22、函数名和函数文件名不一致时,Matlab以函数名为准。 【 X 】
23、Matlab中结构数组可以存放不同类型的数据,但元胞则不行。【 X 】
24、Matlab程序设计语言是一种编译型高级语言。 【 X 】
25、Matlab的矩阵元素既可以用单下标引用,又可以用双下标引用。【 √ 】
四、简答题
26、Matlab的M文件有几种类型?以两个数求和为例分别说明。
答:Matlab的M文件有命令文件和函数文件两种类型;以两个数求和为例,程序代码分别为:
(1) clear;
a=5;
b=9;
disp(['the sum of a and b is ' num2str(a+b)]);
(2) function mm=sumab(a,b)
mm=a+b;
27、试比较数值插值和曲线拟合,写出数值插值和曲线拟合的Matlab函数。
(1) 数值插值所得到的插值曲线经过每一个采样点,而曲线拟合所得到的曲线则不一定经过每一个采样点;
(2) 数值插值的函数有interp1,interp2等,曲线拟合的函数有polyfit;
五、编程题
28、求以下分数序列前15项的和:
f(1)=1;f(2)=2;
for k=3:16
f(k)=f(k-1)+f(k-2);
end
s=f(2:16)./f(1:15)
sum(s)
29、编写函数文件求一元二次方程 ax2+bx+c=0 的根,其中a, b, c的值从终端输入,最终结果以“x1=-0.29289,x2=-1.7071”的形式显示。
a=input('a=?');
b=input('b=?');
c=input('c=?');
d=b*b-4*a*c;
x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)];
disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);
因篇幅问题不能全部显示,请点此查看更多更全内容