Matlab程序设计题库2(附答案) 联系客服

发布时间 : 星期五 文章Matlab程序设计题库2(附答案)更新完毕开始阅读7d42100f011ca300a6c390d2

装第 1 页 共 5 页

订线姓名 : 学号 : ———————————————————————— 装 订 线 系别: 班 级——————————————————————装订线

Matlab程序设计(B卷)

题 号 一 二 三 四 五 六 七 卷面总分 分项分 本卷占总成绩比例 合计 评阅人签字 一、选择题:共 5 题,每题 1 分,共 5 分。

1、在MATLAB的若干通用操作指令中,清除内存中的变量的是()

A. clear B. cla C. clf D. clc

2、下列说法错误的是()

A. 若我们直接指定变量,则系统不再提供ans变量

B. 矢量既有大小又有方向,两者缺一不可

C. 矩阵之间是一种标量的组合

D. 矩阵在MATLAB中是按先列后行的方式储存的

3、Matlab图形用户界面开发环境中可以建立开关按钮的是 ()

A. Push Button B. Toggle Button C. Radio Button D. checkbox

4、下列Matlab语句不正确的是()

A. A=[1,2,3; 4 5 6; 7 8 0]; sum(A(:))

B. A=[1,2,3; 4 5 6; 7 8 0]; C=A>6

C. A=[1,2,3; 4,5,6; 7,8,0]; A(1,:).*A(:,3)

5、我们平时得到的第一手信号常常都是 信号,而计算机保存和处理的都

是 信号 A. 连续的数字、离散的模拟 B. 离散的数字、连续的模拟

C. 离散的模拟、连续的数字

D. 连续的模拟、离散的数字

二、填空题:共 15 题,每题 1 分,共 15 分。

1、求矩阵A的非共轭转置的指令是

2、写出下列语句的显示结果:A=[1,2,3; 3,4,2; 5,2,3]; A^2= 3、A=[0 1 1 0],b=[1 1 0 0],则X=A|B的显示结果为

4、在MATLAB Command Window中直接键入i,显示结果为

5、a=[1 2 3;4 5 6;7 8 9];b=[9 8 7;6 5 4;3 2 1];c=a.*b;显示结果为

6、计算log9910 的命令是 7、打开MATLAB图形用户界面的命令是

8、写出利用向量A=[1 2 3 4]生成多项式的语句 9、用牛顿-科西法求s??2?0sinxdx 的语句为 ______ 10、求limxln(1?x)x?0sinx2的语句为__________________ 11、对y?xsinxlnx求导的语句为_____________________

12、验证MATLAB系统是否正常的命令是 13、由A的1、3、5行,2、4、6列交叉点上的元素生成A的子矩阵的命令是_________________ 14、求?(x5?x3?x4)dx的语句为________________________ 15、求矩阵A的逆矩阵的指令是: 三、科学计算:共 6 题,每题 5 分,共 30 分。 1、对1个随机数组(20个元素)进行均值、方差和中位值的计算。 ?2、化简矩阵?x2?x??21x?1sin2x?cos2x??,并求x=3时矩阵的值,最后保留3??x?1lnx3???位有效数字。写出求解该问题的MATLAB语句。

第 2 页 共 5 页

3、利用MATLAB分别对F(x)=x2+5x-3和G(x)=x3+2x2+x+1 两个多项式求导和求四、应用题:共 3 题,每题 8 分,共 24 分。 根。并求出两个多项式的乘积。 1、假设有一组实测数据

xi 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

yi 2.3201 2.6470 2.9707 3.2885 3.6008 3.9090 4.2147 4.5191 4.8232 5.1275 求该数据的3阶拟合方程,并用拟合方程求出x=2时的数据值 4、在区间[?10,10]上,求函数f(x)?(x?2)4sinx?(x?1)2cosx的最小值。

??x1?0.5sinx1?0.3cosx2?05、利用MATLAB求解方程组?x2?0.5cosx1?0.3sinx2?0

???2dx?4x?dy?y?et,xt?0?3?dtdt2?dx6、利用MATLAB求常微分方程组??dt?3x?y?0,yt?0?0的特解。

2、 画出下列方程式的三维网线图及等高线图,并显示高度色彩标竿:

z = e(?x2?y2)

其中,x 的 21 个值均匀分布在 [-2*pi, 2*pi] 范围,y 的 31 值均匀分布在 [-pi, pi]。请使用 subplot命令将产生的网线图和等高线图绘制在同一个窗口上。

第 3 页 共 5 页

3、黛安娜(Diane)想去看电影,她从小猪存钱罐倒出硬币并清点,她发现:

?1美分和5美分两者总数的一半加上10美分的硬币数等于25美分的硬币数。 ?1美分的硬币数比5美分、10美分以及25美分的硬币总数少10。

?25美分和10美分的硬币总数等于1美分的硬币数加上1/4的5美分的硬币数 ?25美分的硬币数和1美分的硬币数比5美分的硬币数加上8倍的10美分的硬币数少1

如果电影票价为3.00美元,爆米花为1.00美元,糖棒为50美分,她有没有足够的钱去买这三样东西?请写出用Matlab求解的过程。

五、程序设计题:共 1 题,每题 8 分,共 8 分。

已知Fibonacci (斐波那)数列由式子

ak?ak?1?ak?2,k?3,4??可以生成,其中初值为a1?a2?1,试编写 出生成某项Fibonacci 数值的MATLAB 函数,并求a20的值

六、建模与求解:共 2 题,每题 9 分,共 18 分。

1、某厂准备制订一个年度生产计划,产品品种及利润如下表,求利润最大的生产方案。

产品 待加工数上限 加工时间(月/件) 单价(百元) 1 5 1 1500 2 3 3 5000 3 2 4 7000 4 3 5 8000 5 6 2.5 4200

2、铁路线上AB段的距离为100km。工厂C距A处为20km,AC垂直与AB。为了运输需要,要在AB线上选定一点D向工厂修筑一条公路。已知铁路每公里货运的运费与公路上每公里货运的运费之比为3:5。为了使货物从供应站B运到工

厂C的运费最省,问D应选在何处?建立该问题的数学模型,并写出用MATLAB求解的过程。

第 4 页 共 5 页

Matlab B卷答案

一.选择题

1.A 2.C 3.B 4.C 5.D 二、填空题 1.A.’

2. 22 16 16

25 26 23 26 24 28 3. 1 1 1 0 4.0+1.0000i 5. 9 16 21 24 25 24 21 16 9 6.log10(99) 7.GUIDE 8.poly(A)

9.quad8(‘sin(x)’,0,2*pi)

10. A=sym('x*log(1+x)/sin(x^2)') B=limit(A) 11. Y=sym('x*sin(x)*log(x)') dfdx=diff(y) 12.Peaks

13.A3=A([1 3 5],[2 4 6])

14. A=sym('x^5+x^3-sqrt(x)/4') B=int(A) 15. inv(A)

三、科学计算机题 1、x=randn(1,20) Pmean=mean(x) Pstd=std(x) Psqu=Pstd^2 Pmed=median(x)

2、m=sym(‘[sqrt(x^2+2*x+1),sin(x)^2+cos(x)^2;(x+1)/sqrt(x+1),log(x^3)]’) M=simple(m) F=simple(M)

F=subs(F,’x’,3) G=vpa(f,3) 3、F=[1 5 -3] G=[1 2 1 1]

Df=polyder(f) Dg=polyder(g) Rf=roots(f) Rg=roots(g) C=conv(f,g)

4、fun='(x-2)^4*sin(x)-(x-1)^2*cos(x)'

[X,fval]= fminbnd(fun,-10,10) 5、首先建立函数文件

function y=sy(x) y(1)=x(1)-0.5*sin(x(1))-0.3*cos(x(2)) y(2)=x(2)-0.5*cos(x(1))+0.3*sin(x(2)) 接着,建立另一个m文件sy6_6_1.m,其内容为: x0=[0.1,0.1]

fsolve(@sy,x0,optimset('fsolve'))%这里的optimset('fsolve')部分时优化设置,可以不用 结果是:0.5414,0.3310。 6、

[X,Y]=dsolve('2*Dx+4*x+Dy-y=exp(t),Dx+3*x+y=0','x(0)=3/2','y(0)=0')

四、应用题 1、x=0.1:0.1:1

y=[2.3201 2.6470 2.9707 3.2885 3.6008 3.9090 4.2147 4.5191 4.8232 5.1275];

p=polyfit(x,y,3) px=poly2str(p,'x') pv=polyval(p,2)

2、x=linspace(-2*pi,2*pi,21); y=linspace(-pi,pi,31); [x1,y1]=meshgrid(x,y); z=exp(-x^2-y^2); subplot(2,1,1) surf(x1,y1,z); subplot(2,1,2); contour3(z); 3、

eq1= ' c+(b+a)/2=d ' ; eq2= ' a=b+c+d-10 ' ;

第 5 页 共 5 页

eq3= ' d+c=a+b/4 ' ; eq4= ' d+a=b+8*c-1 ' ;

[pennies,nickles,dimes,quarters]=solve(equ1,equ2,equ3,equ4,' a,b,c,d ' )

或clear

A=sym('[1,1,2,-2;1,-1,-1,-1;4,1,-4,-4;-1,1,8,-1]') B=sym('[0;-10;0;1]') X=zeros(4,1) X=linsolve(A,B) 显示结果 X =

[ 16] [ 8] [ 3] [ 15]

16*1+8*5+3*10+15*25=461美分,所以她有足够的钱去买这三样东西。 五、程序设计

首先建立函数文件: function Y=fib(k) if (k==1|k==2) Y=1;

else Y=fib(k-1)+fib(k-2); end

然后在命令窗口输入:fib(20) 六、建模与求解

1、设5件产品分别为x1件x2件……x5件,z为所获利润,我们将问题归结为如下的线性规划问题:

min{-(1500x1+5000x2+7000x3+8000x4+4200x5)}

?x1?3*x2?4*x3?5*x4?2.5*x5?s.t. ?12?xi?0(i?1,2??5)

??x1?5,x2?3,x3?2,x4?3,x5?6接着写出Matlab程序如下:

clear

f=-[1500,5000,7000,8000,4200]; A=[1,3,4,5,2.5]; b=[12]; LB=[0,0,0,0,0] UB=[5,3,2,3,6];

[X,fval]=linprog(f,A,b,[],[],LB,UB)

2、假设将D选在距离A点Xkm处。

我们将问题归结为如下的非线性规划问题,其数学模型为:min{5x2?400?300?3x} s.t.?0?x?100

首先建立目标函数的m文件:objfun.m function f=objfun(x)

f=5*sqrt(x^2+400)+300-3*x; 最后在命令窗口求解: x0=[1 1] lb=[0] ub=[100]

[x,fval]=fmincon(‘objfun’,x0,[],[],[],[],lb,ub) 或

假设将D选在距离A点Xkm处。

我们将问题归结为如下的非线性规划问题,其数学模型为:min{5x2?400?300?3x} s.t.?0?x?100

fun='5*sqrt(x^2+400)+300-3*x ' [X,fval]= fminbnd(fun,0,100)