matlab复习整理单选题,化工版
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单选题
专题一MATLAB基础知识
1.当在命令行窗口执行命令时,如果不想立即在命令行窗口中输出结果,可以在命令后加上分号(;)。
2. (264/100)+round(264/100)+mod(264,10)*10的值是(45 )。
3.在命令行窗口输入下列命令后,x的值是(-1 )。
>> clear >> x=i*j
4.使用语句x=linspace(0,2,10)生成的是(10 )个元素的向量。
5. ceil(-2.1)的结果为(-2)。
6. eval('sqrt(4)+2')的值是( 4 )。
7.已知a为3×5矩阵,则执行完a(:,[2,4])=[]后a变为3行3列。
8.在命令行窗口输入以下命令
A.MATLAB R2019a
B.MATLAB R2019b
C.
D.MATLAB R2020b
10.清除MATLAB命令空间的所有变量,使用(clear )命令。
11.plot(x,y)是一条(绘图)命令。
12.下列可作为MATLAB合法变量名的是( D )。
A.合计
B.123
C.@h
D.xyz_2a
13.使用语句t=0:7生成的是(8 )个元素的向量。
14.执行语句A=[1,2,3;4,5,6]后,A(3)的值是( 2 )。
15.已知a为3×3矩阵,则a(:,end)是指(第三列元素)。
16.已知a为3×3矩阵,则运行a (1)=[]后(a变成行向量)。
17.find(1:2:20>15)的结果是(9 10 )。
18.输入字符串时,要用' ' 将字符括起来。
19.已知s='显示"hello"',则s的元素个数是(9 )。
20.以下两个命令行的区别是第一个命令行同时显示x和y的值,第二个命令行只显示x的值
>> x=5,y=x+10 >> x=5,y=x+10;
21.在命令行窗口输入以下命令,其执行结果D的值为(D35 )。
>> A=[1:3;4:6]; >> D=sub2ind(size(A),[1,1],[2,3])
22.MATLAB命令行窗口中提示用户输入命令的符号是(>> )。
23.在当前文件夹和搜索路径中都有fpp.m文件,那么在命令行窗口输入fpp时,执行的文件是(当前文
件夹的fpp.m文件)。
24.reshape(1:6,2,3)函数执行后得到的结果是(2×3矩阵)。
25.已知a为2×3矩阵,则执行a=a(:)后(a变成列向量)。
专题二MATLAB矩阵处理
1.建立3阶单位矩阵A的命令是(A=eye(3) )。
2. 产生和A同样大小的幺矩阵的命令是(ones(size(A)) )。
3.建立5×6随机矩阵A,其元素为[100,999]范围内的随机整数,相应的命令是A=round(100+899*rand(5,6))
4.产生均值为1、方差为0.2的500个正态分布的随机数,相应的命令是1+sqrt(0.2)*randn(25,20)
5.用A矩阵主对角线以上第2条对角线的元素形成一个对角阵B,相应的命令是B=diag(diag(A,2))。
6.将矩阵A对角线元素加30的命令是A+30*eye(size(A))。
7.语句“[X,D]=eig(A)”执行后,D是一个(对角阵)。
8.采用稀疏存储方式的主要目的是(节约内存空间)。
9.语句“A=sparse([0,1,1;0,0,1])”执行后,输出结果的最后一行是(2,3) 1。
10.用来描述矩阵性能的数是(条件)。
11.求矩阵A的范数的函数是norm(A)。
12.在MATLAB中定义A=randn(5,4,3,2),则下列关于A的操作中正确的是( D )。
A . y=eig(A) B. y=reshape(A,[4 3 6 7]) C. y=cond(A) D. y=sin(A)
13.建立5×6随机矩阵A,其元素为[100,200]范围内的随机整数,相应的命令是A=fix(100+101*rand(5,6))。
14. 产生对角线上全为1,其余为0的2行3列矩阵的命令是eye(2,3)。
15. 用于求矩阵的行列式的值的函数是det。
专题三MATLAB程序流程控制
1.case结果表为switch表达式的取值,当取值有多个时,用(单元数据)表示。
2.下列程序的输出结果是(perfect )。
a=1;
switch a
case 3|4
disp('perfect')
case {1,2}
disp('ok')
otherwise
disp('no')
end
3.看下面两个for循环,描述正确的是(循环一循环4次,循环二循环1次)。
循环一:
for k=[12,3,1,0]
…
end
循环二:
for k=[12;3;1;0]
…
end
C. 循环一和循环二均循环4次
D.循环一和循环二均循环1次
4. 设有程序如下:
k=10;
while k
k=k-1;
end
k
程序执行后k的是(0 )。
5. 定义了一个函数文件fun.m:
function f=fun(n)
f=sum(n.*(n+1));
在命令行窗口调用fun函数的结果为(70 )。
>> fun(1:5)
6. 定义了一个函数文件fsum.m:
function s=fsum(n)
if n<=1
s=1;
else
s=fsum(n-1)+n;
end
在命令行窗口调用fsum函数的结果为(55 )。
7. 定义了一个函数文件test.m:
function fout=test(a,b,c)
if nargin==1
fout=2*a;
elseif nargin==2
fout=2*(a+b);
elseif nargin==3
fout=2*(a.*b.*c);
end
在命令行窗口调用test函数的结果为0 4 12。
>> test(1:3,[-1,0,3])
8. 在if语句中,当条件为以下表示形式时,表示条件成立的是( C )。
A. [1, 2; 0, 4]
B. [ ]
C. [1, 2; 3, 4]
D. 0
9.下列程序的输出结果是(60 )。
y=30;
if y==30
y=y*2;
elseif y>0
y=10
end
disp(y)
10. 以下语句循环(0)次。
for k=2:-2:13
k
end
11. 以下语句:
a=eye(6);
for n=a(3:end,:)
n
end
for循环的循环次数是( 6 )。
12. 退出循环之后,k的值为(10 )。
for k=1:3:11
end
k
13 . 有以下程序:
x=reshape(1:12,3,4);
m=0;
n=0;
for k=1:4
if x(:,k)<=6
m=m+1;
else
n=n+1;
end
end
则m和n的值分别是2 , 2 。
14.设有程序段:
k=10;
while k
k=k-1
end
则下面描述中正确的是(while循环执行10次)。
15.下列程序的输出结果是(9 )。
s=0;
for i=1:10
if rem(i,2)==0
continue
end
if rem(i,7)==0
break
end
s=s+i;
end
disp(s)
16.执行下列语句后,变量A的值是(10 )。
>> f=@(x,y) 2*(x+y); >> A=f(2,3);
17.列脚本文件运行后,输出结果是(8 )。
函数文件fib.m:
function f=fib(n)
if n>2
f=fib(n-1)+fib(n-2);
else
f=1;
end
脚本文件:
F=[];
for k=1:6
F=[F,fib(k)];
end
disp(F(k))
18.以下代码执行之后,变量a和b的值分别为(456 123 )。
a = 123;
b = 456
c = a + b; a = c - a; b = c - b;
A.19.执行以下程序,若输入x为85,则其运行结果y的值为'D'。
x=input('x=');
if x>=60
y='D';
elseif x>=70
y='C';
elseif x>=80
y='B';
else
y='A';
end
20. 执行以下程序,语句k =k-2 被执行的次数为(2 )。
k = 10;
while k >= 3
k =k-2 ;
if k==6
break
end
end
21.下列关于脚本文件和函数文件的描述中不正确的是( A )。
A 函数文件可以在命令行窗口直接运行
B 去掉函数文件第一行的定义行可转变成脚本文件
C 脚本文件可以调用函数文件
D 函数文件中的第一行必须以function开始
22.下列程序的输出结果是(20 )。
y=10;
if y==10
y=20;
elseif y>0
y=30;
end
disp(y)
23. 调用函数时,如果函数文件名与函数名不一致,则使用( A )。
A.函数文件名
B.函数名
C. 函数文件名或函数名均可 D .@函数名
24.如果有函数声明行为“function [x,y,z]=f1(a,b,c)”,则下述函数调用格式中错误的是( B )。
A. x=f1(a,b,c)
B. [x,y,z,w]=f1(a,b,c)
C. [x,b,z]=f1(a,y,c)
D. [a,b]=f1(x,y,z)
25.执行语句“fn=@(x) 10*x;”,则fn是( A )。
A 匿名函数B函数句柄 C 字符串D普通函数
专题四绘图
1.如果x、y均为5×6矩阵,则执行plot(x,y)命令后在图形窗口中绘制( 6 )条曲线。
%绘图取
一列数据。
2.下列程序的运行结果是(3个左下角在原点的矩形)。
x=[0,1,1,0,0];y=[0,0,1,1,0];
for n=1:3
plot(n*x,n*y)
hold on
end
axis equal
3.subplot(2,2,3)是指(两行两列的左下图)的子图。
4.要使函数y=lnx的曲线绘制成直线,应采用的绘图函数是(semilogx )。
%两边的数,谁大谁就
取单边对数。
5.[x, y] = meshgrid(1:5);surf(x, 5*ones(size(x)), y); 与xy平面垂直的平面
6.下列函数中不能用于绘制散点类图形的函数是(pie )。
7.在使用MATLAB“绘图”选项卡中的命令按钮绘图之前,需要(在工作区中选择绘图变量)。
8.在曲线颜色设置中,字符b表示的颜色是(蓝色)。
9.设A是一个100×2数值矩阵,若要把A的第一列数据作为横坐标,把A的第二列数据作为纵坐标,
画出一条曲线,则使用的命令是plot(A(:,1),A(:,2)) 。
10.下列程序的运行结果是(5个同心圆)。
x=0:pi/100:2*pi;
for n=1:2:10
plot(n*sin(x),n*cos(x))
hold on
end
axis square
11.将一个图形窗口分成2×3个绘图区,且指定在中上子图绘制出图形,使用的命令是subplot(2,3,2)
12.图形窗口显示网格的命令是grid on
13.绘制条形图调用bar函数来实现,绘制极坐标图形需要调用polar函数。
14.要使函数:y=e^x的曲线绘制成直线,应采用的绘图函数是semiology.
15.调用meshc函数输出的图形是下方有等高线的(圈圈)。
专题五数据分析与多项式计算
1.关于数据插值与曲线拟合,下列说法不正确的是3次样条方法的插值结果肯定比线性插值方法
精度高。
正确:插值函数是必须满足原始数据点坐标,而拟合函数则是整体最接近原始数据点,而不一定要必须经过原始数据点。
曲线拟合常常采用最小二乘原理,即要求拟合函数与原始数据的均方误差达到极小。
插值和拟合都是通过已知数据集来求取未知点的函数值。
2.在MATLAB命令行窗口输入下列命令:>> A=[1,0,-2];>> x=roots(A);
则x(1)的值为 1.4142。
3.>> x=[1,2,3,4];>> y=polyval(x,1); 则y的值为10
4.已知a为3×3矩阵,则运行mean(a)命令是计算a每列的平均值。
5.设A=[1,2,3,4,5;3,4,5,6,7],则min(max(A))的值是 3.
6.若A为矩阵,则语句max(A(:))的功能是求整个矩阵的最大元素。
7.设P是多项式系数向量,A为方阵,则函数polyval(P,A)与函数polyvalm(P,A)的值值不相等。
8.p=[1,-2]; x=roots(p) 则x的值为2.
9.在以下四种数据插值方法中,具有保形性的方法是pchip。
10.最小二乘法中的误差最小指的是误差的平方和最小。
11.当实验或测试所获得的样本数据有误差时,适合用来估算数据的方法是曲线拟合。
12.曲线拟合通常所采用的函数是多项式函数。
13.若x是一个行向量,则在执行语句[a,b]=min(x)后,向量中最小元素的序号是存储在b中。
14.若p为某多项式系数向量,x为矩阵,若想求得x中每一个元素的多项式函数值,则以下正确的
是polyval(p,x)。
15.若p为某多项式系数向量,x为自变量,则roots(p)的功能是(求多项式方程的根)。
16.在以下四种数据插值方法中,最为光滑、函数性态最好的方法是( D )。
A.linear B. nearest C. pchip D. spline
17.在最近点插值方法中,若插值点位于两个采样点的正中间,则插值点的取值为(后一个相邻点
的函数值)。
专题六数值微积分与方程求解
1.下列语句执行后,I的值是(0.5 )。
I=integral(@(x) x,0,1)
2.对于解线性方程组Ax=b,当det(A)≠0时,方程的解是A\b。
3.下列命令执行后,I的值是(8 )。
>> I=trapz([1,2],[7,9])
4.对于线性方程组Ax=b,设A=LU是A的一个LU分解,则线性方程组的解为x=U\(L\b)。
5.diff([10,15])的值是5 。
6.数值积分方法是基于(求原函数很困难、原函数无法用初等函数表示、无法知道被积函数的精确
表达式)的事实。
7.求数值积分时,被积函数的定义可以采取函数文件、内联函数、匿名函数。
8.以下选项不能用来求数值积分的函数是(B)。
A. quadgk
B.quad2
C.integral
D.integral2
9.下列方法中与线性方程组求解无关的是(C )。
A. 左除
B.矩阵求逆
C. 矩阵转置
D. 矩阵分解
10. 对于系数矩阵A的阶数很大,且零元素较多的大型稀疏矩阵线性方程组,非常适合采用(迭代法)求解。
专题七MATLAB符号计算
1.若在MATLAB中已有语句a=sym(1); b=1; x=sym('b'),则以下叙述正确的是(a是符号常量,
x是符号变量)。
2.函数factor(sym(12))的值是[ 2, 2, 3] 。
3.若没有指定主变量,则系统默认符号表达式ax+by+t中主变量为(x )。
4.在命令行窗口输入下列命令:
>> f=sym(1); >> eval(int(f,1,4))
则命令执行后的输出结果是( 3 )。
5.若在MATLAB中已有语句a=1和x=sym(’a’),则以下叙述正确的是(x是一个符号变量)。
6.设有a=sym(4),则1/a+1/a的值是(1/2 )。
7.函数factor(sym(15))的值是[ 3, 5]。
专题八MATLAB图形用户界面设计
1.控件的BackgroundColor属性和ForegroundColor属性分别代表(背景色和说明文字的颜色)
2.用于定义按钮被单击的响应的属性是(CallBack )。
3.定义菜单项时,为了使该菜单项呈灰色,应将其Enable属性设置为('Off' )。
4.MATLAB图形系统的根对象是指(计算机屏幕)。
填空题
专题一MATLAB基础知识
1.从MATLAB R2012b开始,MATLAB操作界面的重要变化是采用了功能区的界面形式。
2.MATLAB功能区提供了3个选项卡,分别为主页、绘图和应用程序。
3.下列命令执行后的输出结果是20 。
>> ans=5;>> 10;>> ans+10
4.从键盘直接输入矩阵元素来建立矩阵时,将矩阵的元素用中括号[] 括起来,按矩阵行的顺序输入各
元素,同一行的各元素之间用空格分隔,不同行的元素之间用分号; 分隔。
(注意:采用中文表示)5.下列命令执行后,new_claim的值是This is a great example. 。
claim= 'This is a good example.'; new_claim=strrep(claim,'good','great')
专题二MATLAB矩阵处理
1.建立3阶幺矩阵的命令是ones(3) 。
2.设A为2×3矩阵,则用zeros(size(A))建立的矩阵是 2 行 2 列的零矩阵。
3.条件数可以用来描述矩阵的性能,它越接近于 1 ,矩阵的性能越好。
4.将3阶魔方矩阵主对角线元素加10,命令是10*eye(3)+magic(3)|magic(3)+10*eye(3) 。
专题三MATLAB程序流程控制
1.执行下列代码之后,输出y的值是(20 )。
y=10;
if y==10
y=20;
elseif y>0
y=30;
end
2.执行以下程序段,循环结束之后,变量k的值为( 3 )。
k= 1; while k <= 2 k =k + 1;end
3.有语句“for k=[12;34]”引导的循环结构,其循环体执行的次数为 1 。
4.MATLAB中用于控制不确定重复次数的循环语句为while…end,若在循环执行过程中需要
终止该循环时采用的语句为break 。
5.函数文件由function 语句引导。
在函数定义时,函数的输入输出参数称为形式
参数,简称形参。
在调用函数时,输入输出参数称为实际参数,简称实参。
专题四MATLAB绘图
1.在Matlab中,可以将XY平面按指定方式分割成平面网格矩阵的函数是meshgrid.
2.在MATLAB中,要为图形添加图例的函数是( legend )。
专题五数据分析与多项式计算
1.设A=[1,2,3;10 20 30;4 5 6],则sum(A)= [15 27 39] median(A)= 4 5 6]。
(空格分隔)
2.如果被插值函数是一个单变量函数,则称为一维插值,相应的MATLAB函数是interp1 。
3.求曲线拟合多项式系数的函数是polyfit,计算多项式在给定点上函数值的函数是
polyval 。
4.多项式2x^2-1 所对应的系数向量P=([2 0 -1] )(提示:分隔符为逗号)
专题六数值微积分与方程求解
1.在MATLAB中,没有直接提供求数值导数的函数,只有计算向前差分的函数diff。
2.基于变步长辛普森法,MATLAB给出了quad 函数和quadl 函数来求定积分。
3.在MATLAB的符号计算中,对给定函数均可用( int )函数求定积分和不定积分.
4.已知x=0:5和y=[15,10,9,6,2,0],可用(trapz )函数计算数值的定积分。
5.线性方程组的求解方法可以分为两类,一类是直接法,另一类是迭代法。
前者是在没有舍入误差的情况下,通过有限步的初等运算来求得方程组的解;后者是先给定一个解的初始值,然后按照一定的算法不断用变量的旧值递推出新的值。
专题七MATLAB符号计算
1.在进行符号运算之前首先要建立符号对象,所使用的函数或命令有sym和syms 。
2.对于“没有定义”的极限,MATLAB给出的结果为NaN ;对于极限值为无穷大
的极限,MATLAB给出的结果为Inf 。
(注意:区分大小写)
3.在MATLAB的符号计算中,对给定函数均可用( int )函数求定积分和不定积分。
4.在进行符号计算之前,必须先建立符号对象,常用命令(sym/syms )。
专题八MATLAB图形用户界面设计
1.图形用户界面由窗口、菜单和对话框等图像元素组成。
2.在一组按钮中,通常只能有一个被选中,如果选中了其中一个,则原来被选中的就不再
处于被选中状态,这种按钮称为单选按钮。
判断题
专题八MATLAB图形用户界面设计
1.在MATLAB中,利用对象属性检查器用于检查和设置每个对象的属性值。
对
专题七MATLAB符号计算
1.diff()函数可以用来求符号函数的偏导数。
对
2.当利用int()函数求定积分时,若积分上限或下限是一个符号表达式,则该被积函数不可积。
错
3.可以用factor()函数来判断一个正整数是否为素数。
对
专题六数值微积分与方程求解
1.矩阵求逆函数和左除运算符都可以用来解线性方程组,但求逆方法需要更多的计算量,而左除运
算就只有一次除法运算。
对
2.函数f(x)在某点处的差商作为其导数的近似值。
对
3.高斯-赛德尔迭代法比雅可比迭代法的收敛性能肯定要好些。
错
4.当利用int()函数求定积分时,若积分上限或下限中存在符号变量,则该被积函数不可积。
错
5.迭代法是先给定一个解的初始值,然后按照一定的算法不断用变量的旧值递推出新的值。
对
专题五数据分析与多项式计算
1.对矩阵A按行取最大元素,可用语句max(A,2)实现。
错
2.若某多项式系数向量中包含有5个元素,则该多项式为5次多项式。
错
3.数据插值可以通过已知数据估算采样区间内的未知数据。
对
4.若x为一个向量,且a=std(x),那么a的值越大,说明该向量中的元素偏离其平均值的程度越
大。
对
5.若要求多项式P和Q的商的导函数,可以用语句p=polyder(P,Q)来实现。
错
6.若已知多项式系数向量p=[1,2,3],则该多项式的常数项为1。
错
7.采用多项式进行插值计算时,多项式的次数越高计算越精确。
错
8.在linear、nearest、pchip和spline四种插值方法中,spline方法是最好的。
错
9.曲线拟合估算的数据比数据插值方法更加精确。
错
10.曲线拟合所采用的多项式函数只能是3次多项式。
错
11.在MATLAB中,插值和拟合都是通过已知数据集来求取未知点的函数值。
对
12.在Matlab中,相关系数能够反映两组数据序列之间相关程度的强度。
对
13.在Matlab中,可用roots函数求解多项式的全部根x,而可用poly函数建立以向量x为其根
的多项式。
对
专题四MATLAB绘图
1.调用fplot3函数绘制空间曲线时,需要先计算曲线上各点的坐标。
错
2.命令axis([1 10 100 200])将x轴刻度的最大值设定为100。
错
3.title函数用于给图形窗口添加标题。
错
4.text函数可用于给坐标轴添加标签。
错
5.若x为m×n的矩阵,plot(x)命令为矩阵的每一行绘制一条线,共m条。
错
6.mesh函数以x为横坐标、以y为纵坐标,以x与y的m × n个组合构建网格点,计算网格
点(x,y)上的z值,再以z为垂直坐标在网格点上方描点,直线连接相邻4个点形成曲面网格,最终绘出表达二元函数z=f(x,y)的三维网格图。
对
7.已知x=1:0.1:2;y=2.^(0.1+1.2*log(x)); 此时采用loglog(x,y)命令绘制的是一条直线。
对
8.在Matlab中,surf函数用来绘制三维曲面图,各线条之间的补面用颜色填充。
对
专题三MATLAB程序流程控制
1.在命令行窗口,既可以直接运行函数文件,也可以以函数调用的方式来调用它。
错
2.disp函数不会显示变量的名字和空行。
对
3.任何复杂的程序都是由顺序结构、选择结构和循环结构这三种基本结构组成的。
对
4.在很多情况下,for语句和while语句可以等价使用。
对
5.如果在一个函数的定义中调用了该函数本身,这就是函数的嵌套调用。
错
6.在很多情况下,switch语句和多分支if语句可以相互等价使用。
对
7.在多分支if语句中不管有几个分支,程序执行完一个分支后,其余分支将不会再执行,这时整
个if语句结束。
对
8.在MATLAB中,程序文件的扩展名为.m,所以程序文件也称为M文件。
对
9.当函数文件名与函数名不相同时,MATLAB将忽略函数文件名,调用时使用函数名。
错
10.break语句用来结束本次循环,continue语句用来结束整个循环。
错
11.递归调用也会降低存储空间和执行时间的开销,提高程序的执行效率。
错
12.函数中递归调用有两种形式,一种是直接递归,另一种是间接递归。
对
13.在一个函数文件中定义的变量为全局变量。
错
14.MATLAB有两个预定义变量nargin和nargout可以记录调用这个函数时的输入实参的个数和
输出实参的个数。
对
专题二MATLAB矩阵处理
1.条件数总是大于1,且接近于1的。
错
2.范数一定是非负数。
对
3.稀疏矩阵一定要采用稀疏存储方式。
错
4.采用稀疏存储方式的矩阵一定是稀疏矩阵。
错
5.连续取单位向量x,Ax能将圆弧拉伸成椭圆。
对
专题一MATLAB基础知识
1.标准函数名以及命令名一般用小写字母。
对
2.对一个3行3列的矩阵A来说,A(4)代表矩阵A中第二行第一列的元素。
错
3.format命令影响数据输出格式,也会影响数据的计算和存储。
错
4.函数sin(pi/2)与sind(90)的值相等。
对
5.如果A矩阵是非奇异方阵,则B/A等效于inv(A)*B。
错
6.在MATLAB中,右除运算符(/)和左除等价(\)等价。
错
7.建立矩阵x=[1:3,4:6]与y=[1:3;4:6],两个矩阵的行数和列数相同(即维度大小相同)。
错
8.内存变量文件是二进制格式文件,扩展名为.mat。
对
9.表达式~(9==1)与表达式~9==1的值不相等。
对
10.两个矩阵进行点乘运算时,要求它们是同型的。
对。