《2022年完整word版,matlab基础练习题 .pdf》由会员分享,可在线阅读,更多相关《2022年完整word版,matlab基础练习题 .pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Matlab 基础练习题常量、变量、表达式1、MATLAB中,下面哪些变量名是合法的?()(A)_num (B)num_(C)num- (D)-num 2、在 MA TLAB 中,要给出一个复数z 的模,应该使用()函数。(A)mod(z) (B)abs(z) (C)double(z) (D)angle(z) 3、下面属于 MATLAB的预定义特殊变量的是?()(A)eps(B)none (C)zero (D)exp 4、判断:在 MATLAB 的内存工作区中,存放一个英文字符a 需要占用1 个字节, 存放一个中文字符啊需要占用2 个字节。(错,都是 2 个字节)5、判断: MA TLAB 中
2、, i 和 j 都是虚数单位1,它们之间没有什么区别。(对)6、判断: MA TLAB 中, pi 代表圆周率,它等于3.14。 (错,后面还有很多位小数)7、在 MATLAB中,若想计算的51)3.0sin(21y值,那么应该在MATLAB的指令窗中输入的 MATLAB指令是 _y1=2*sin(0.3*pi)/(1+sqrt(5)_。8、在 MA TLAB 中, a = 1 ,b = i ,则 a 占_8_个字节, b 占_16_个字节, c 占_字节。9、在 MA TLAB 中, inf 的含义是 _无穷大 _,nan的含义是 _非数(结果不定)_。数组1、在 MATLAB中,X 是一个
3、一维数值数组,现在要把数组X 中的所有元素按原来次序的逆序排列输出,应该使用下面的()指令。(A)Xend:1 (B)Xend:-1:1 (C)X (end:-1:1)(D)X(end:1) 2、在 MA TLAB 中,A 是一个字二维数组,要获取 A 的行数和列数, 应该使用的MATLAB的命令是() 。(A)class(A) (B)sizeof(A) (C)size(A)(D)isa(A) 3、在 MATLAB中,用指令x=1:9生成数组x。现在要把x 数组的第二和第七个元素都赋值为 0,应该在指令窗中输入()(A)x(2 7)=(0 0) (B)x(2,7)=0,0(C)x(2,7)=0
4、 0 (D)x(2 7)=(0 0) 4、在 MA TLAB 中,依次执行以下指令:clear;A=ones(3,4); A(:)=-6:5;这时,若在指令窗中输入指令b=A(:,2),那么, MATLAB输出的结果应该是()(A)b = -3 -2 -1(B)b = -2 -1 0 1 (C)b = -5 -1 3 (D)b = -5 -2 1 4 5、在 MA TLAB 中,A = 1:9 ,现在执行如下指令L1 = (A5) ,则 MATLAB的执行结果应该是 L1 =_ 1 1 1 1 1 0 0 0 0_。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - -
5、- - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - 6、在 MA TLAB 中,要求在闭区间0,5上产生 50 个等距采样的一维数组b,请写出具体的 MATLAB指令 _linspace(0,5,50) _。7、在 MA TLAB 中, A = 0:1/2:2*pi ,那么 sin(A) = _ 0 1 0 -1 0 _。8、在 MA TLAB 中,A=1,2,3;4,5,6;7,8,0 ,B=2,1,6;8,5,2;14,2,1 。写出下面 MATLAB语句执行的结果: (为节省篇幅,把矩阵写成mat2st
6、r 的形式 )(1)A=B 0 0 0; 0 1 0; 0 0 0(2)A.*B 2 2 18;32 25 12;98 16 0(3)A(:) 1 4 7 2 5 8 3 6 0(4)A(1,:)*B(:,3) 139、在 MA TLAB 中,写出下面MATLAB 语句执行的结果:(1)clear,A = ones(2,6) A = 1 1 1 1 1 1 1 1 1 1 1 1 (2)A(:) = 1:2:24 A = 1 5 9 13 17 21 3 7 11 15 19 23 (3)A(1:3:7) ans = 1 7 13 (4)diag(diag(A) ans = 1 0 0 7 (
7、5)B = A(:,end:-1:1)B = 21 17 13 9 5 1 23 19 15 11 7 3 10、 请编写一段matlab 程序,完成以下功能:(1)生成一个 100 行, 200 列的二维随机数组;A=rand(100,200);(2)找出数组 A 中所有大于0.49 且小于 0.51 的元素的单下标;Idx=find(A(:)0.49 & A(:)0.51) (3)数组 A 中满足( 2)中的条件的元素有多少个?length(Idx) (4)求出数组 A 中满足( 2)中的条件的元素的和,并求出这些元素的平均值;sum(A(Idx), m=mean(A(Idx) (5)将(
8、 4)求出的平均值赋值给数组A 中满足( 1)中的条件的每个元素。A(Idx)=m; 11、 请编写一段matlab 程序,完成以下功能:(1)找出 100 到 200 之间的所有质数,将这些质数存放在一个行数组里;X=100:200; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - p=X(isprime(X) (2)求出这些质数之和;sum(p) (3)求出 100 到 200 之间的所有非质数之和(包括100 和 200)
9、 。sum(X(isprime(X) 12、22cos0.7sin(1)xyxx,编写一段matlab 程序,要求如下(1)在0,2区间,每隔0.01 取一x数值,计算出相应的y的函数值;x=0:0.01:2*pi; y=(0.7+2*cos(x)./(1+x.2).*sin(x) (2)根据 MATLAB计算出的数据,找出在0,2内该函数的极小值的坐标。my,idx=min(y) x(idx) 数值计算1、 在 MATLAB 中,A 是一个 1010 数组,我们把该数组看成矩阵的话,则此矩阵的行列式值= _det(A) _,此矩阵的逆矩阵(如果存在的话)= _inv(A) _。 (用 MAT
10、LAB的函数表示)2、 求解下列方程组:1234234123412343212240 xxxxxxxxxxxxxxx34712457423859652108xyzwxyzwxzwxyzwA=1 1 3 -1;0 1 -1 1;1 1 2 2;1 -1 1 -1; b=2;1;4;0; x=Ab A=3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10; b=4;-3;9;-8; xyzw=Ab 3、 求有理分式3323230.522521xxxRxxxx的商多项式和余多项式n=conv(3 0 1 0,3 0 0 0.5); d=conv(1 2 -2,5 2 0 1
11、); q,r=deconv(n,d) 4、 一元多项式42234pxxx,写出表示p的 MATLAB语句 _p=2 0 -3 4 0_,求名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - 0p的根的 MA TLAB 语句是 _ roots(p)_,求4.3x时p的数值的MATLAB 语句是_ polyval(p,4.3) _。程序设计1、M 脚本文件和函数文件的有什么区别?最主要的差别是, 函数有自己的独立工作区,和外界的信息交换
12、通过输入输出参数实现;而脚本没有独立工作区,其直接使用宿主程序的工作区,并把结果留在宿主程序中。2、掌握下面程序设计中常用的函数及关键字:input pause warning nargin nargout for while if elseif else switch case otherwise end try catch break continue end 3、分别用 for 和 while 循环语句计算6302iiK的程序。还请写出一种避免循环的计算程序。 (不要用 symsum 函数)K=0; for i=0:63 K=K+i; end K=0; i=0; while i= 100
13、00 ,所以n = ceil(log(10000/0.06e-3)/log(2) 10、 编写 MATLAB脚本输出“水仙花数”及水仙花数的个数。所谓“水仙花数”是一个3位数,其各位数字的立方和等于该数本身。例如333153153。c=0; for n=100:999 m=fix(n/100) fix(mod(n,100)/10) mod(n,10); if n=sum(m.3), fprintf(%i = %i3 + %i3 + %i3n,n,m);c=c+1; end end fprintf(n 共%i 个水仙花数 n,c) 输出结果:153 = 13 + 53 + 33 370 = 33
14、 + 73 + 03 371 = 33 + 73 + 13 407 = 43 + 03 + 73 共 4 个水仙花数绘图1、MATLAB中,绘制三维曲面图的函数是()(A)surf(B)plot (C)subplot (D)plot3 2、MATLAB中,要绘制三维空间曲线,应该使用()函数。(A)polar (B)plot (C)subplot (D)plot33、在 MA TLAB 中, A 是一个 1000 行 2 列的二维数值数组,现在要把A 的第一列数据作为横坐标,把A 的第二列数据作为纵坐标,画出一条曲线,试写出相应的MATLAB语句 _plot(A(:,1),A(:,2) _。4
15、、MATLAB绘图指令中的_subplot_指令允许用户在同一个图形窗里布置几个独立的子图。5、编写一段 matlab 程序,绘制出二元函数2sinsinxyzxy三维网线图,要求如下:(1)x,y的取值范围为99x,99y;(2)x,y每隔 0.5 取一个点;(3)图形的线型和颜色由MA TLAB 自动设定名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 9 页 - - - - - - - - - x,y=meshgrid(-9:0.5:9)+eps); % 加 eps避
16、免出现0/0 z=2*sin(x).*sin(y)./(x.*y); mesh(x,y,z) 6、编写一段 matlab 程序,绘制出函数11sin( ), 2sin(2 )yxyxx图形的 MATLAB 语句,要求如下:(1)x的取值范围为33x;(2)x每隔 0.01 取一个点;(3)y1 和 y2 的图形要画在同一幅图里;(4)图形的线型和颜色由MA TLAB 自动设定。x=(-3:0.01:3)+eps; % 加 eps避免出现除0 警告y1=x.*sin(1./x); y2=sin(2*x); plot(x,y1,x,y2)符号计算1、在 MA TLAB 中,能正确的把x、y 定义成
17、符号变量的指令是()(A)sym x y (B)sym x , y (C) syms x , y (D)syms x y2、要清除 MATLAB工作空间中保存的变量,应该使用_clear_指令。3、在 MA TLAB 中,指令 findsym(sym(sin(w*t),1)的执行结果是 _w_。4、在 MA TLAB 中,写出把x 和 y 定义为符号变量的相应语句_syms x y_。5、求解下列方程组的符号解:1234234123412343212240 xxxxxxxxxxxxxxx34712457423859652108xyzwxyzwxzwxyzwA=1 1 3 -1;0 1 -1 1
18、;1 1 2 2;1 -1 1 -1; b=2;1;4;0; x=sym(A)b A=3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10; b=4;-3;9;-8; xyzw=sym(A)b 6、求极限:(1)求函数11xyx在0 x处的极限; syms x limit(1+x)(1/x),0) ans = exp(1) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 9 页 - - - - - - - - - (2)求函数sin35xytg
19、x在0 x处的极限; syms x limit(sin(3*x)/tan(5*x),0) ans = 3/5 (3)求函数3xnxy在趋向正无穷处的极限; syms x n limit(n*x/3x,inf) ans = 0 (4)求函数23lnxyx在趋向正无穷处的极限; syms x limit(log(x)2/x3,inf) ans = 0 7、求导数:(1)求函数2133yxx的 50 阶导数; syms x y=1/x2-3*x+3; diff(y,50) ans = 1551118753287382280224243016469303211063259720016986112000
20、000000000/x52 (2)求函数sintcayabet在tb处的 3 阶导数;syms t a b c y=a*sin(b*exp(ct)+ta); simple(subs(diff(y,t,3),t,b) 8、求不定积分:2232241133sin9xxdxdxdxxaxx syms x int(1/sin(x)3) ans = -1/2/sin(x)2*cos(x)+1/2*log(csc(x)-cot(x) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 9
21、 页 - - - - - - - - - syms x a int(1/(a2-x2) ans = -1/2/a*log(a-x)+1/2/a*log(a+x) syms x int(sqrt(x2-3)-sqrt(x2+3)/sqrt(x4-9) ans = (x4-9)(1/2)/(x2-3)(1/2)/(x2+3)(1/2)*asinh(1/3*3(1/2)*x)-1/(x2+3)(1/2)*(x4-9)(1/2)/(x2-3)(1/2)*log(x+(x2-3)(1/2) 9、求定积分及广义积分22222222211sincosxxadxxxdxxydydx syms x a int(
22、sqrt(x2+a),-2,2) ans = 2*(4+a)(1/2)+1/2*a*log(2+(4+a)(1/2)-1/2*a*log(-2+(4+a)(1/2) syms x int(sin(x)2*cos(x)2,-pi,pi) ans = 1/4*pi syms x y int(int(x2+y2,y,1,x2),1,2) ans = 1006/105 10、 求下面的积分,给出50 位精度的数值:222211sinsinxxy dydx syms x y J=int(int(sin(x)2+sin(y)2,y,1,x2),1,2); vpa(J,50) ans = 2.1540459
23、589705316265997501755762001048498664176916 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 9 页 - - - - - - - - - 11、 级数求和:21121!10131122110211nnnnnknnnkznznxnzxkx syms z n symsum(z-1)n/(n2*2n),n,1,inf) ans = (1/2*z-1/2)*hypergeom(1, 1, 1,2, 2,1/2*z-1/2) syms z n
24、 symsum(3*n+1)*(z-1)n,n,1,inf) ans = (4*z-4)*(-1/(z-2)+3/4/(z-2)2*(z-1) syms z n symsum(n*(-1)(n+1)*zn,n,1,inf) ans = z/(z+1)2 syms x positive syms k simple(symsum(2/(2*k+1)*(x-1)/(x+1)(2*k+1),k,0,inf) ans = log(-(1+(x2-2*x+1)/(x2+2*x+1)(1/2)/(-1+(x2-2*x+1)/(x2+2*x+1)(1/2) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 9 页 - - - - - - - - -