matlab期末试卷
- 格式:doc
- 大小:339.50 KB
- 文档页数:7
第一套华东交通大学2015-2016学年第一学期Matlab期末考试一、填空题(4*6=24分)1、在MATLAB命令窗口中的“>>”标志为MATLAB的命令行提示符,“│”标志为输入提示符。
2、符号表达式sin(2*a+t)+m 中独立的符号变量为_t_。
3、在通常情况下,左除x=a\b是的解,右除x=b/a是的解,一般情况下,。
4、为了使两个plot的图形在同一个坐标显示,可以使用___hold on__命令进行图形保持;可以使用_ grid on__命令为图形添加网格。
5、倘若要是对x进行赋值,从5到25,间隔是0.1,为 x=5:0.1:25 ;倘若要是对x进行赋值,从2到20,中间间隔100个点,为x=linspace(2,20,100)6、A=[1,2;3,4];B=[1,0;0,1]; A*B= [1 2;3 4] _ , A.*B=_ [1 0;0 4] _;3. a*x=b , x*a=b , a\b ,b/a;二、选择题(4*6=24分)7、如果x=1: 2 : 8,则x(1)和x(4)分别是( B )A.1,8 B.1, 7 C.2, 8 D.2, 78、运行如下程序后,输入9回车,命令窗口(command windows)显示的结果为( A)c=input('请输入一个字符','s');if c>='A' & c<='Z'disp(setstr(abs(c)+abs('a')-abs('A')));elseif c>='a'& c<='z'disp(setstr(abs(c)- abs('a')+abs('A')));elseif c>='0'& c<='9'disp(abs(c)-abs('0'));else disp(c); endA. 9B. 8C. 7D. 69、MATLAB表达式2*2^3^2的结果是( A )A.128 B.4096 C. 262144 D.25610、在循环结构中跳出循环,执行循环后面代码的命令为(B )(A) return (B) break (C) continue (D) keyboard11、在图形指定位置加标注命令是(C)A. title(x,y,‟y=sin(x)‟);B. xlabel(x,y,‟y=sin(x)‟);C. text(x,y,‟y=sin(x)‟);D. legend(x,y,‟y=sin(x)‟);12、下列哪个变量的定义是不合法的(A)。
第一套华东交通大学2015-2016学年第一学期Matlab期末考试一、填空题(4*6=24分)1、在MATLAB^令窗口中的“ >>”标志为MATLA的_命令行_提示符,标志为__ 输入_提示符。
2、符号表达式sin(2*a+t)+m 中独立的符号变量为_t_。
3、在通常情况下,左除x=a\b是_的解,右除x=b/a是_的解,一般情况下,______________ 。
4、为了使两个plot的图形在同一个坐标显示,可以使用____ h old on命令进行图形保持;可以使用 _grid on_ 命令为图形添加网格。
5、倘若要是对x进行赋值,从5到25,间隔是0.1,为丿=5:0.1:25 —;倘若要是对x进行赋值,从2到20,中间间隔100个点,为 x=li nspace(2,20,100) _6、A=[1,2;3,4];B=[1,0;0,1]; A*B=_[1 2; 3 4] _ , A.*B=_[1 0;0 4] _ ;3. a*x=b , x*a=b , a\b ,b/a;二、选择题(4*6=24分)7、如果x=1: 2 : 8,则x(1)和x⑷分别是(B )A. 1,8B. 1, 7C. 2, 8D. 2, 7& 运行如下程序后,输入9回车,命令窗口( comma nd win dows)显示的结果为(A)c=input('请输入一个字符','s');if c>='A' & c<='Z' disp(setstr(abs(c)+abs('a')-abs('A')));elseif c>='a'& c<='z'disp(setstr(abs(c)- abs('a')+abs('A')));elseif c>='0'& c<='9'disp(abs(c)-abs('0'));else disp(c); endA. 9B. 8C. 7D. 69、MATLA表达式2*2A3A2的结果是(A )A.128 B.4096 C. 262144 D.25610、在循环结构中跳出循环,执行循环后面代码的命令为 (B )(A) return (B) break (C) continue (D) keyboard11、在图形指定位置加标注命令是(C)A.title(x,y, ?y=sin(x) ?); B.xlabel(x,y, ?y=sin(x) ?);C. text(x,y, ?y=sin(x) ?);D.legend(x,y, ?y=sin(x) ?);12、下列哪个变量的定义是不合法的(A)。
第一套华东交通大学2015-2016学年第一学期Matlab期末考试一、填空题(4*6=24分)1、在MATLAB命令窗口中的“>>”标志为MATLAB的提示符,“│”标志为提示符。
2、符号表达式sin(2*a+t)+m中独立的符号变量为__ _。
3、在通常情况下,左除x=a\b是的解,右除x=b/a是的解,一般情况下,。
4、为了使两个plot的图形在同一个坐标显示,可以使用_____命令进行图形保持;可以使用_ __命令为图形添加网格。
5、倘若要是对x进行赋值,从5到25,间隔是0.1,为;倘若要是对x 进行赋值,从2到20,中间间隔100个点,为6、A=[1,2;3,4];B=[1,0;0,1];A*B= _ , A.*B=_ _;二、选择题(4*6=24分)7、如果x=1:2:8,则x(1)和x(4)分别是( )A.1,8B.1,7C.2,8D.2,78、运行如下程序后,输入9回车,命令窗口(command windows)显示的结果为( )c=input('请输入一个字符','s');if c>='A'&c<='Z'disp(setstr(abs(c)+abs('a')-abs('A')));elseif c>='a'&c<='z'disp(setstr(abs(c)-abs('a')+abs('A')));elseif c>='0'&c<='9'disp(abs(c)-abs('0'));else disp(c);endA.9B.8C.7D. 69、MATLAB表达式2*2^3^2的结果是()A.128 B.4096 C.262144 D.25610、在循环结构中跳出循环,执行循环后面代码的命令为( )(A)return(B)break(C)continue(D)keyboard11、在图形指定位置加标注命令是()A.title(x,y,‟y=sin(x)‟);B.xlabel(x,y,‟y=sin(x)‟);C.text(x,y,‟y=sin(x)‟);D.legend(x,y,‟y=sin(x)‟);12、下列哪个变量的定义是不合法的()。
一、填空题(每空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) x3yz2.下列哪条指令是求矩阵的行列式的值 C(A) inv (B) diag (C) det (D) eig3.在循环结构中跳出循环,执行循环后面代码的命令为 B(A) return (B) break (C) continue (D) keyboard4. 清空Matlab工作空间内所有变量的指令是 C(A) clc (B) cls (C) clear (D) clf5.用round函数四舍五入对数组[2.486.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-b7.角度[]60x,计算其正弦函数的运算为D45=30(A) SIN(deg2rad(x)) (B) SIN(x) (C) sin(x) (D) sin(deg2rad(x))8.下面的程序执行后array的值为 ( A )for k=1:10if k>6break;elsearray(k) = k;endend(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.0000i10. 求解方程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:8if x(k)==0x(k)=k;elsex(k)=2*k+1;endenddisp(x);3.创建符号函数并求解,要求写出步骤和运行结果(7分)(1)创建符号函数f=ax2+bx+c(2)求f=0的解4. 求解以下线性方程组,要求写出程序代码和运行结果(5分)2x1- 3x2+ x3+2x4=8x1+3x2+ x4=6x1- x2+ x3+8x4=17x1+ x2-2x3+2x4=55.绘制函数曲线,要求写出程序代码(12分)(1)在区间[0:2π]均匀的取50个点,构成向量π(2)在同一窗口绘制曲线y1=sin(2*t-0.3); y2=3cos(t+0.5);要求y1曲线为红色点划线,标记点为圆圈;y2为蓝色虚线,标记点为星号四、使用MATLAB语言进行编程(15分)打印出所有的水仙花数。
matlab期末考试题及答案MATLAB期末考试题及答案一、选择题(每题2分,共20分)1. MATLAB中用于创建向量的函数是:A. vectorB. arrayC. linspaceD. ones答案:D2. 下列哪个命令可以计算矩阵的行列式?A. detB. diagC. traceD. rank答案:A3. 在MATLAB中,以下哪个选项是用于绘制三维图形的?A. plotB. plot3C. barD. scatter答案:B4. MATLAB中,用于计算向量范数的函数是:A. normB. meanC. medianD. std答案:A5. 下列哪个命令可以用于创建一个二维数组?A. array2dB. matrixC. create2dD. make2d答案:B6. MATLAB中,用于求解线性方程组的函数是:A. solveB. linsolveC. equationD. linprog答案:A7. 以下哪个函数可以用于生成随机数?A. randB. randomC. randnD. randi答案:A8. MATLAB中,用于实现循环结构的关键字是:A. loopB. forC. whileD. repeat答案:B9. 下列哪个命令可以用于绘制函数图形?A. plotB. graphC. drawD. functionplot答案:A10. MATLAB中,用于计算矩阵特征值的函数是:A. eigB. eigenvalueC. characteristicD. eigen答案:A二、简答题(每题5分,共30分)1. 简述MATLAB中矩阵的基本操作有哪些?答案:矩阵的基本操作包括矩阵的创建、矩阵的加法、减法、乘法、转置、求逆、求行列式等。
2. MATLAB中如何实现条件语句?答案:MATLAB中实现条件语句主要使用if-else结构,也可以使用switch-case结构。
3. 请解释MATLAB中的函数定义方式。
MATLAB期末考试试题一、填空(30分)1. 表达式 (3>2)*(5~=5)的类型是(double)。
2. 表达式 (5<2)*120的值是( 0 )。
3. 表达式 (5>2)*(6~=5)的值是( 1 )。
4. 表达式 char(65)=='A' 的值是( 1 )。
5. 表达式 char(65)+1 的值是(66 )。
6. 表达式 'A'+1的值是( 66 )。
7. 表达式 'A'+'B' 的值是(131 )。
8. 存储double型数据占用内存(8 )字节。
9. 存储single型数据占用内存( 4 )字节。
10. 清除命令窗口内容的命令是( clc )。
11. 删除工作空间中保存的变量x的命令是(clearx )。
12. 将双精度实数的显示格式设置成15位定点小数格式的命令是( format long )。
13. 将横坐标轴标签设置成“时间(秒)”的语句是(xlabel('时间(秒)') )。
14. 设置图例的Matlab库函数名是( legend )。
15. 绘制三维线图的Matlab库函数名是( plot3 )。
二、选择题(30分)1. 执行语句x=55后,Matlab将创建变量x,为其分配的存储空间的大小为(C)A)2字节 B)4字节 C)8字节 D)16字节2. 执行语句y=66后,Matlab将创建变量y,其类型为(D )A)int8 B)int16 C)single D)double3. 下列整数类型中,不能参与任何运算的类型为( D )A)int8 B)int16 C)int32 D)int644. 设已执行语句x=3>2; y=x>0后,下面表达式中错误的是( D )A)x+y B)x-y C)x*y D)x/y5. 下列的数组写法中错误的是(C)A)[1:9] B)1:9 C)[1:2:9;2:2:8] D)[1:3;4:6;7:9]6. 设有数组定义:x=[1,2,3,4,5,6], y=x' ,下列表达式中正确的是( D)A)y+x B)y-x C)y./x B)y*x7. 执行语句for x=1:2:10, disp(x), end,循环体将执行几次( B)A)10次 B)5次 C)1次 D)0次8. 函数首部格式为function [out1,out2]=myfunc(in1,in2),不正确的调用格式是(C )A)[x,y]=myfunc() B)myfunc(a,b) C)[x,y]=myfunc(a)D)x=myfunc(a,b)9. 语句 x=-1:0.1:1;plot([x+i*exp(-x.^2);x+i*exp(-2*x.^2);x+i*exp(-4*x.^2)]' ),绘制(B )A)1条曲线 B)3条曲线 C)21条曲线 D)0条曲线10. 下列哪条指令是求矩阵的行列式的值 ( C )A) inv B) diag C) detD) eig三、解答题(40分)1.已知多项式323)(2345+++-=x x x x x f ,1331)(23--+=x x x x g ,写出计算下列问题的MATLAB 命令序列(1))(x f 的根解:>> p1=[3,-1,2,1,3];>> x=roots(p1)x =0.6833 + 0.9251i0.6833 - 0.9251i-0.5166 + 0.6994i-0.5166 - 0.6994i(2))(x g 在闭区间[-1,2]上的最小值解:>> [y,min]=fminbnd(@(x)((1/3)*x.^3+x.^2-3*x-1),-1,2)y =1.0000min =-2.66672.已知 ax -ax e -ex +ay =sin(x +a)+a ln 22, 写出完成下列任务的MATLAB 命令序列。
一、 选择题(有10个题,共20分)1.有一个4×4矩阵A,表示取得矩阵A 的第一行和第二行的第二列至第四列所有元素的命令是( A )(A) A(1:2,2:4) (B) A(2:4,1:2) (C) A(1:2:4) (D) A(4:2:1)2.将一个图形窗口分成3×4个子区并表示第一个子区的命令是( C )A . subplot(12,1)B .subplot(1,12)C .subplot(3,4,1)D .subplot(1,3,4)3.利用Matlab 的符号计算功能计算微分方程初值问题⎪⎩⎪⎨⎧=+-=2)1(42y x x y dx dy 在区间 [1,2]上的解析解时所用到的函数是( D )(A) ode23 (B) ode45 (C) solve (D) dsolve4.以下有关Matlab 子函数的性质中不正确的是( D )(A) 子函数只能被处于同一个文件的主函数或其他子函数调用;(B) 在M 函数文件中,任何指令通过“名字”对函数进行调用时,子函数的优先级仅次于内装函数;(C) 在M 函数文件内,主函数的位置不可改变,但子函数的排列次序可以任意改变;(D) help, lookfor 等帮助指令都能提供关于子函数的任何帮助信息。
5.以下语句中生成按钮控件的语句是( B )(A) h_1=uimenu(gcf,'Label','&Blue');(B) h_1=uicontrol(gcf,'style','push', 'string','grid off','callback','grid off');(C) h_1=uicontrol(gcf,'style','text', 'horizontal','left','string',{'输入'});(D) h_1=axes('unit','normalized','position',[0,0,1,1],'visible','off');6.以下有关Matlab 函数及其句柄的说法中正确的是( A,C )(A) 在该函数的目录下可定义该函数的句柄,句柄定义后,可用feval 函数和句柄在任何目录下调用该函数;(B) 函数不在Matlab 的当前工作目录下不可执行,但可以用feval 函数和句柄调用该函数;(C) 函数不在Matlab 的当前工作目录下时,可以定义函数的句柄;(D) 函数不在Matlab 的当前工作目录下时,不可以定义函数的句柄。
一、填空题(每空1分,20分)1、MATLAB常用操作界面包括、工作空间窗口、、、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。
2、MATLAB中Inf或inf表示、NaN或nan表示、nargout表示。
3、MATLAB中逗号主要用作;用作输入量与输入量之间的分隔符;。
4、工作空间浏览器主要用于内存变量的、和。
5、MATLAB实现将全下标转换为单下标的指令为、据单下标换算出全下标的指令为。
6、二维数组的标识有、、“逻辑1”标识。
、在一个元胞数组A中寻访第2行第3列元胞元素用;寻访数组第2行第3列元胞中所存的内容用。
8、4、MATLAB中clf用于、clc用于、clear用于。
二、简答题(每题5分,共20分)1、简述MATLAB历史指令窗的主要作用。
2、简述空数组的功用。
3、简述MATLAB函数的基本结构。
4、简述绘制二维图形的一般步骤。
三、阅读程序并回答问题(每题4分,共28分)、写出下列指令运行结果。
=zeros(2,4);(:)=1:8;=[2 3 5];(s)a=[10 20 30]'(s)=Sa、写出下列指令运行结果。
=reshape(1:16,2,8)eshape(A,4,4)=[1 3 6 8 9 11 14 16]; (s)=0、写出下列指令运行结果。
=[1,2;3,4];=[-1,-2;2;1];=3;.*B*B.*AS*B4、下面的函数主要完成什么功能?function f=factor(n)f n<=1f=1;lsef=factor(n-1)*n;nd、写出下列指令运行结果。
(1,1)={'this is cell'};{1,2}={[1 2 3;4 5 6]};{2,1}=[1+2*i];{2,2}=A{1,2}{1}+(A{1,2}{1}(1,1)+A{1,2}{1}(2,2)); elldisp(A)、下面的程序完成功能是什么?=0:pi/50:4*pi;0=exp(-t/3);=exp(-t/3).*sin(3*t);lot(t,y,'-r',t,y0,':b',t,-y0,':b')label(‘\bf\it t’);label(‘\bf\it y’);rid on;四、编程题(32分)price<200 没有折扣200≤price<500 3%折扣500≤price<1000 5%折扣1000≤price<2500 8%折扣2500≤price<5000 10%折扣000≤price 14%折扣入所售商品的价格,求其实际销售价格。
大学专业试题-Matlab期末考试及答案一、填空题(一题3分,共15分)1、标点符号可以使命令行不显示运算结果。
答案:%2、x为0〜4,步长为0.1pi的向量,使用命令创建。
答案:x=0:0.1*pi:4。
3、输入矩阵A=[1 2 3;7 -5 8;9-1-7],使用全下标方式用A(2,2)取出元素“-5 ”,使用单下标方式用取出元素“-5 ”。
答案:A (5)。
4、在while表达式,语句体,End循环语句中,表达式的值__时表示循环条件为真,体语句将被执行,否则跳出该循环语句。
答案:非零。
5、要从键盘读入一个字符串并赋值给变量x,且给出提示“Hello",应使用命令—答案:x=input(‘Hello,;s')b二、选择题(一题3分,共15分)1、下列表示可以作为MATLAB的变量的是(D )A. abcd-2B. xyz_2#C. @hD. X_1_a2、如果x=1: 2 : 8,则U x(1)和x(4)分别是(B )A. 1, 8B. 1,7C. 2,8D. 2,73、指出下列错误的指令(B)。
A.symsa b;B. symsa, b;C.syms('a',’b');D. syms('a','b','positive');4、下列哪条指令是求矩阵的行列式的值(C)。
A .inv B. diag C. det D.eig5、清空Matlab工作空间内所有变量的指令是(C)。
A. clcB.clsC.clearD. clf三、程序分析题(一题10分,共20分)1、分析下面程序运行后s1,n1,s2,n2,m的值。
s1=0;s2=0;n1=0;n2=0;x=[1,-4,-8,3,10,-9,7,-3,10, 8,-5,-2,2,0 ]; m=length(x); fori=1:mif x(i)<0s1=s1+x(i); n1=n1+1; elses2=s2+x(i); n2=n2+1;end ends1,n1,s2,n2,m请回答s1,n1,s2,n2,m的结果。
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=[2 3 5];A(s)Sa=[10 20 30]'A(s)=Sa2、写出下列指令运行结果。
A=reshape(1:16,2,8)reshape(A,4,4)s=[1 3 6 8 9 11 14 16];A(s)=03、写出下列指令运行结果。
A=[1,2;3,4];B=[-1,-2;2;1];S=3;A.*BA*BS.*AS*B4、下面的函数主要完成什么功能?function f=factor(n)if n<=1f=1;elsef=factor(n-1)*n;end5、写出下列指令运行结果。
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、写出下列指令运行结果。
1.叙述MATLAB的主要窗口包括哪些?其作用是什么?(5分)
答:MATLAB的主要窗口包括:
①命令窗口(Commend Window)——供输入命令,实现计算或绘图功能;
②工作空间窗口(Workspace)——用于列出数据的变量信息,包括变量名、变量字节大
小、变量数组大小、变量类型等内容;
③当前目录浏览器(Current Directory)——显示当前目录下所有文件的文件名、文件
夹类型和最后修改时间等内容;
④命令历史窗口(Commend History)——显示窗口所有执行过的命令,利用该窗口,可
以查看曾经执行过的命令,也可以重复利用这些命令。
2.MATLAB的变量命名有什么规则?能用”pi”来作为变量名吗,为什么?(5分)
答:1、规则:⑴变量名、函数名是对字母大小写敏感的,如变量myvar和MyVar表示两个不同的变量。
⑵变量名的第一个字符必须是英文字母,最多可包括63个字符(英文、数字和下连符),如myvar201是合法变量。
⑶变量名中不得包含空格、标点、运算符,但可以包含下连符,如变量名my_var_201是合法的,但my,var201不合法。
⑷用户定义变量名时有两个忌讳:①用户变量名不应与MATLAB关键词(如for,if/else,end等)同名。
②用户变量名不与MATLAB自用的变量名(如eps,pi等)、函数名(如sin,eig等)、文件夹名(如rtw,toolbox 等)相同。
2、不能用“pi”作为变量名,因为用户变量名不与MATLAB自用的变量名pi相同。
3.M脚本文件与函数文件的主要区别是什么?(5分)
答:M脚本文件和函数文件都属于M文件,脚本文件是包含多条MATLAB命令的文件,而函数文件可以包含输入变量,并把结果传送给输出变量,其主要区别为:
脚本文件:1、多条命令的综合体;2、没有输入、输出变量;3、运算中生成的所有变量都存放在函数工作空间;4、包含函数声明行,脚本文件中的变量都是全局变量;5、脚本文件只是将一系列相关代码结合封装,没有输入参数和输出参数,即不自带参数,也不一定要返回结果。
函数文件:1、它是在脚本文件的基础之上多添加一行函数定义行,其代码组织结构和调用方式与对应的脚本文件截然不同;2、函数文件是以函数声明行“function……”为开始,其实质是用户往MATLAB函数库里面添加子函数;3、函数文件中的变量都是局部变量,除非有特别声明;4、函数文件运行完毕后,其定义的变量将从工作空间中清除;5、多数函数文件一
般有输入和输出变量,并有返回结果。
4.分别采用函数 fix、floor、ceil和round对A=[ -1.95,-1.25,1.45,1.85]取整,并说明这些取整函数的区别。
(10分)
解:
由上述截图易得:
fix(a)是当n>0时,取小于n的最大整数;当n<=0时,取大于n的最小整数。
即向零点舍入;
floor(a)是取小于n的最大整数,即向负的方向舍入;
ceil(a)是取大于n的最小整数,即向正方向舍入;
round(a)是纯粹的四舍五入。
5.分别采用不循环语句和循环语句For和while计算级数:S=1+6+62+63+···+633,并且说明循环语句For和while之间的区别。
(15分)
解:
由上述截图易得:循环语句for和while的主要区别为for语句是以执行次数是否达到指定值来判断是否结束循环,且for语句的循环次数是确定的;
while语句是以条件满足与否来判断是否结束循环,且while语句的循环次数是不确定的。
6.绘制函数曲线,要求写出程序代码(10分) (1)在区间[0:2π]均匀的取50个点,构成向量π
(2)在同一窗口绘制曲线y1=sin(2*t-0.3); y2=3*cos(t+0.5);要求y1曲线为红色点划线,标记点为圆圈;y2为蓝色虚线,标记点为星号 解:
0123
4567
-3
-2
-1
1
23
t
y
曲线 y1=sin(2*t-0.3)
曲线 y2=3*cos(t+0.5)
7.设1
,1t
y t e ππ-=
-≤≤+在同一图形窗口采用子图的形式绘制不同图形,条形图、阶梯图、杆图和对数坐标图。
(20分) 解:
-202
0.5
1
条形图
-202
0.5
1
阶梯图
-202
0.5
1杆图
-202
0.5
1
对数坐标图
8.用matlab 编写二分法求方程的根的函数。
(15分)
解:(图中左边为erfenfa 的m 文件,右边为命令窗口的显示)
9.(15分)某一过程中通过测量得到: t 0 0.2 0.4 0.6 0.8 1.0 2.0 5.0 y
1.0
1.5
1.9
2.1
2.3
2.4
2.6
-4.0
编程完成以下内容:
(1) 分别采用三阶和四阶多项式对数据进行拟合;(提示:采用polyfit 进行多项式拟合;调用格式为p = polyfit(t,y,n),n 为多项式阶数,p 为得到的多项式系数)
(2) 比较拟合效果,要求把图形窗口分成两个子窗口,子窗口1绘制出原始测量值和三阶多项式拟合后的曲线,子窗口2绘制出原始测量值和四阶多项式拟合后的曲线; (3) 根据已知时刻点的测量值,计算两种拟合方法的均方误差(MSE )。
21
1ˆ()n
i i i MSE y y
n ==-∑,其中i y 为上面表中的原始测量值,ˆi y 为拟合后的估计值。
解:
(图中s1,s2分别是三项式拟合的均方误差和四项式拟合均方误差)
0246-4
-3
-2
-1
1
2
30246
-5
-4-3-2
-1
123。