一、填空题(每空2分,总共30分) 1. 已知A=[0 9 6;1 3 0];B=[1 4 3;1 5 0];写出下列各指令运行的结果。 A & B 的运行结果ans= ; A ./ B 的运行结果ans= 。 2. 产生4阶全0方阵的命令为 zeros(4) ;产生3阶全1方阵的命令为 ones(3) 。 3. A=rand(2,5);b=size(A);c=length(A);则b和c的值分别为 和 [2,5],[5] 。 4. 标点符号 分号 可以使命令行不显示运算结果, 百分号 用来表示该行为注释行。 5. 用if判断语句判断80≥ x >60,在MATLAB中if语言后的判断应写为 if x<=80&x>60 。 | |||||
6. P, Q分别是个多项式的系数矢量,求P对应的多项式的积分(对应的常数项为K),使用的命令是 polyint(P,K) ;求P/Q的解,商和余数分别保存在k和r,使用的命令是 [k,r]=deconv(P,Q) ; 7. 为了使两个plot的图形在同一个坐标显示,可以使用 hold on 命令进行图形保持;可以使用 grid on 命令为图形添加网格。 8. MATLAB的工作空间中有三个变量v1, v2, v3,写出把它们保存到文件my_data.mat中的指令 save my_data ;写出把my_data.mat文件中的变量读取到MATLAB工作空间内的指令 load my_data 。 二、选择题(每空2分,总共20分) 1.下列哪个变量的定义是不合法的 A (A) abcd-3 (B) xyz_3 (C) abcdef (D) x3yz 2. 下列哪条指令是求矩阵的行列式的值 C (A) inv (B) diag (C) det (D) eig 3. 在循环结构中跳出循环,执行循环后面代码的命令为 B (A) return (B) break (C) continue (D) keyboard 4. 清空Matlab工作空间内所有变量的指令是 C (A) clc (B) cls (C) clear (D) clf 5. 用round函数四舍五入对数组[2.48 6.39 3.93 8.52]取整,结果为 C (A) [2 6 3 8] (B) [2 6 4 8] (C) [2 6 4 9] (D) [3 7 4 9] 6. 已知a=2:2:8, b=2:5,下面的运算表达式中,出错的为 C (A) a'*b (B) a .*b (C) a*b (D) a-b 7. 角度,计算其正弦函数的运算为 D (A) SIN(deg2rad(x)) (B) SIN(x) (C) sin(x) (D) sin(deg2rad(x)) 8. 下面的程序执行后array的值为 ( A ) for k=1:10 if k>6 break; else array(k) = k; end end (A) array = [1, 2, 3, 4, 5, 6] (B) array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] (C) array =6 (D) array =10. 9.i=2; a=2i; b=2*i; c=2*sqrt(-1); 程序执行后;a, b, c的值分别是多少? (A)a=4, b=4, c=2.0000i (C) (B)a=4, b=2.0000i, c=2.0000i (C)a=2.0000i, b=4, c=2.0000i (D) a=2.0000i, b=2.0000i, c=2.0000i 10. 求解方程x4-4x3+12x-9 = 0 的所有解 (A)1.0000, 3.0000, 1.7321, -1.7321 (B)1.0000, 3.0000, 1.7321i, -1.7321i (C)1.0000i, 3.0000i, 1.7321, -1.7321 (D)-3.0000i, 3.0000i, 1.7321, -1.7321 三、写出程序的执行结果或写出给定要求的指令(总共35分) 1. 写出执行以下代码后C,D,E的值 (6分) A=[1,2,3;4:6;7:9]; C=[A;[10,11,12]], D=C(1:3,[2 3]) E=C(2,[1 2]) 2. 写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值 (5分) x=[0,1,0,2,0,3,0,4]; for k=1:8 if x(k)==0 x(k)=k; else x(k)=2*k+1; end end matlab考试题库及答案disp(x); 3. 创建符号函数并求解,要求写出步骤和运行结果(7分) (1)创建符号函数f=ax2+bx+c (2)求f=0的解 4. 求解以下线性方程组,要求写出程序代码和运行结果(5分) 5.绘制函数曲线,要求写出程序代码(12分) (1)在区间[0:2π]均匀的取50个点,构成向量π (2)在同一窗口绘制曲线y1=sin(2*t-0.3); y2=3cos(t+0.5);要求y1曲线为红点划线,标记点为圆圈;y2为蓝虚线,标记点为星号 四、使用MATLAB语言进行编程(15分) 打印出所有的水仙花数。所谓“水仙花数”,是指一个三位数,其各位数字立方之和等于该数本身。 | |||||
一、填空题 1、 ans = 0 1 1 1 1 0 ans = 0 2.2500 2.0000 1.0000 0.6000 NaN 2、 zeros(4) ones(3) 3、 [ 2 5 ] [ 5 ] 4、 ; % 5、 if x<= 80 & x>60 6、 polyint(P,K) [k,r]= deconv (P,Q) 7、 hold on grid on 8、 save my_data Load my_data 二、选择题 1、 A 2、 C 3、 B 4、 C 5、 C 6、 C 7、 D 8、 A 9、 C 10、 A 三、写出程序的执行结果或写出给定要求的指令 1、 c = 0 + 2.0000i D = 2 3 5 6 8 9 E = 4 5 2、 1 5 3 9 5 13 7 17 3、 >> syms a b c x >> s = a*x^2 + b*x + c; >> solve(s) ans = [ 1/2/a*(-b+(b^2-4*a*c)^(1/2))] [ 1/2/a*(-b-(b^2-4*a*c)^(1/2))] 4、 >> syms a b c x >> syms x1 x2 x3 x4 >> clear >> syms x1 x2 x3 x4 >> f = 2*x1 + 3*x2 + x3 + 2*x4 -8; >> g = x1 + 3*x2 + x4 - 6; >> h = x1 - x2 + x3 + 8*x4 - 1; >> i = 7*x1 + x2 - 2*x3 + 2*x4 -5; >> [x1,x2,x3,x4] = solve(f,g,h,i) x1 = 13/17 x2 = 320/187 x3 = 212/187 x4 = 19/187 5、 t = linspace(0, 2*pi, 50); plot(t,y1,'r-o' ,t,y2,'b--*'); 四、使用MATLAB语言进行编程 for k = 100:999 a = fix(k/100); b = rem(fix(k/10),10); c = rem(k,10); if a.^3 + b.^3 + c.^3 == k fprintf( “%u,\t\t”, k ) ; end end | |||||
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论