MATLAB程序流程控制习题答案_第1页
MATLAB程序流程控制习题答案_第2页
MATLAB程序流程控制习题答案_第3页
MATLAB程序流程控制习题答案_第4页
MATLAB程序流程控制习题答案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第4章MATLAB程序流程控制习题4一、选择题1.下列关于脚本文件和函数文件的描述中不正确的是()。AA.函数文件可以在命令行窗口直接运行B.去掉函数文件第一行的定义行可转变成脚本文件C.脚本文件可以调用函数文件D.函数文件中的第一行必须以2 .下列程序的输出结果是(y=10;ify=10y=20;elseify>0y=30enddisp(y)A.1B.303 .有以下语句:a=eye(5);forn=a(2:end,:)for循环的循环次数是()。CA.3B.44 .设有程序段k=10;whilekk=k-1end则下面描述中正确的是()。AA.while循环执行10次C.循环体语句一

2、次也不执行5 .有以下程序段:x=reshape(1:12,3,4);function开始)。DC.10D.20C.5D.10B.循环是无限循环D.循环体语句执行一次m=0;n=0;fork=1:4ifx(:,k)<=6m=m+1;elsen=n+1;endend则m和n的值分别是()。CA.66B.21C.22D.126 .调用函数时,如果函数文件名与函数名不一致,则使用()。AA.函数文件名B.函数名C.函数文件名或函数名均可D.函数名7 .如果有函数声明行为"functionx,y,z=f1(a,b,c)”,则下述函数调用格式中错误的是()。BA.x=f1(a,b,c)B

3、.x,y,z,w=f1(a,b,c)C.x,b,z=f1(a,y,c)D.a,b=f1(x,y,z)8 .执行语句"fn=(x)10*x;",则fn是()。AA.匿名函数B.函数句柄9.执行下列语句后,变量A的值是(>>f=(x,y)10g(exp(x+y);>>A=f(22,3);A.22,3B.2210.程序调试时用于设置断点的函数是(A.dbstopB.dbclear二、填空题C.字符串D.普通函数)。DC.3D.25)。AC.dbcontD.dbstack.m的文件中,该文件称9 .将有关MATLAB命令编成程序存储在一个扩展名为为。M文件1

4、0 有语句“fork=12;34”引导的循环结构,其循环体执行的次数为。111 MATLAB中用于控制不确定重复次数的循环语句为,若在循环执行过程中需要终止该循环时采用的语句为。while-end,break12 函数文件由语句引导。在函数定义时,函数的输入输出参数称为参数,简称。在调用函数时,输入输出参数称为参数,简称。function,形式,形参,实际,实参13 在MATLAB中,函数文件中的变量是变量。定义变量是函数间传递信息的一种手段,可以用命令定义。局部,全局,global14 应用程序的错误有两类,一类是错误,另一类是运行时的错误,即进行程序调试,二是利用错误。MATLAB程序调试

5、方法有两种,一是利用进行程序调试。语法,逻辑,调试函数,调试工具三、应用题1 .写出下列程序的输出结果。s=0;a=12,13,14;15,16,17;18,19,20;21,22,23;fork=aforj=1:4ifrem(k(j),2)=0s=s+k(j);endendenda、b、c的值从键盘输入。2 .分别用if语句和switch语句实现以下计算,其中2.,.一_一,一ax+bx+c,0.5<x<1.5y=(asincb+x,1.5<x<3.5clnb+,3.5<x<5.5、xif语句:a=input('a=');b=input(&

6、#39;b=');c=input('c=');x=input('x=');if0.5<=x&x<1.5y=a*xA2+b*x+c;elseif1.5<=x&x<3.5y=a*(sin(b)Ac+x;elseif3.5<=x&x<5.5y=log(abs(b+c/x);endyswitch语句:a=input('a=');b=input('b=');c=input('c=');x=input('x=');switchfix(x*10)

7、casenum2cell(5:14)y=a*xA2+b*x+c;casenum2cell(15:34)y=a*(sin(b)Ac+x;casenum2cell(35:54)y=log(abs(b+c/x);otherwisedisp('nsrdxcw')endy3 .产生20个两位随机整数,输出其中小于平均值的偶数。x=fix(10+rand(20)*89);a=sum(x)/20;fori=1:20ifx(i)<aifrem(x(i),2)=0disp(x(i)endendend4 .输入20个数,求其中最大数和最小数。要求分别用循环结构和调用MATLAB的max函数、

8、min函数来实现。循环结构:fora=1:20A(a)=input(,请输入20个数:,);endAmi=A(1);ma=A(1);fori=1:20ifmi>A(i)mi=A(i);endifma<A(i)ma=A(i);endenddisp(ma)disp(mi)max、min函数:fora=1:20A(a)=input(,请输入20个数:,);endAmi=min(A),ma=max(A)5 .已知s=1+2+22+23+263分别用循环结构和调用MATLAB的sum函数求s的值。循环结构:s=0;forx=0:63s=2Ax+s;enddisp(s)sum函数:i=0:63

9、;f=2.Ai;sum(f)6.当n分别取100、1000、11110000时,求下列各式的值:1(_1)234n11(=ln2)n(2)357111416641一+4n(4)f2x2Y4X4px6-、1父3人3父5人5父7)(2n)(2n)l(2n-1)(2n+1)要求分别用循环结构和向量运算(使用sum或prod函数)来实现。(1):循环结构:n=input('请输入n的值:');s=0;fora=1:ns=s+(-1)A(a+1)/a;ends向量运算:n=input('请输入n的值:');a=1:n;f=(-1).A(a+1)./a;s=sum(f)(2

10、):循环结构:n=input('请输入n的值:');s=0;fora=1:n;s=s+(-1)A(a+1)/(2*a-1);ends向量运算:n=input('请输入n的值:');a=1:n;f=(-1).A(a+1)./(2*a-1);s=sum(f)(3):循环结构:n=input('请输入n的值:');s=0;fora=1:ns=s+(1/4)Aa;ends向量运算:n=input('请输入n的值:');a=1:n;f=(1/4).Aa;s=sum(f)(4):循环结构:n=input('请输入n的值:');

11、s=1;fora=1:nf=(2*aF2/(2*a-1)*(2*a+1);s=s*f;ends向量运算:n=input('请输入n的值:');a=1:n;f=(2*a).A2./(2*a-1).*(2*a+1);s=prod(f)7.编写一个函数文件,求小于任意自然数n的斐波那契(Fibnacci)数列各项。斐波那契数列定义如下:f1=1f2=1fn=fnrfnN(n2)functionf=Fibnacci(n)fori=1:nifi=1f=1;elseifi=2f=1;elsef=Fibnacci(i-1)+Fibnacci(i-2);endendn=input('n=');f=Fibnacci(n)8.编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在脚本文件中调用该函数。functionC,D=CJ(A,B)C=A*B;D=A.*B;A=123;456;789;B=111;111;111;C,D=CJ(A,B)n9,先用函数的递归调用定义一个函数文件求£im,然后调用该函数文件求i41005010.21Zk+Zk+£。k4k1k=kfunctionf=xt4_10(m,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论