Matlab-期末考试题库(共12套卷) 下载本文

3、答案

price=input('请输入商品价格'); switch fix(price/100) case {0,1} %价格小于200 rate=0;

case {2,3,4} %价格大于等于200但小于500 rate=3/100;

case num2cell(5:9) %价格大于等于500但小于1000 rate=5/100;

case num2cell(10:24) %价格大于等于1000但小于2500 rate=8/100;

case num2cell(25:49) %价格大于等于2500但小于5000 rate=10/100;

otherwise %价格大于等于5000 rate=14/100; end

price=price*(1-rate) %输出商品实际销售价格 4、答案

function f=fab(n) if (n==1) f = 1; elseif (n==2) f =2; else

f = fab(n-1) + fab(n-2); end

5、function sum=text4(n); sum=0; m=1;

while m<=n; sum=sum+m^m m=m+1; end

当n=20时 用上述程序求得的和为: 1.0688e+026

第六套

一、选择题(2×10)

1.变量名是以____开头,后接字母、数字或下划线的字符序列,最多63个字符。变量名区分大小写。A

A. 字母B.数字C.下划线D.大写字母 2.冒号表达式的一般格式为:B

A.初始值:终止值:步长B. 初始值:步长:终止值C. 初始值:终止值:元素总数D. 初始值:元素总数:终止值

3.linspace函数调用的格式为:C

A.linspace(初始值:终止值:步长)B.linspace( 初始值:步长:终止值)C.linspace( 初始值:终止值:元

素总数)D. linespace(初始值:元素总数:终止值) 4. A\\B等效于:A

A.inv(A)* B B. inv(B)*A C. A*inv(B) D. B*inv(A) 5.case子句后面的表达式不可以为: A.标量B.字符串C.单元矩阵D.数值矩阵 6.以下关于函数的说法错误的是:B

A.在M文件中只有一个主函数B.主函数不一定在最上方

C.主函数不能被其他文件的函数调用D.help和lookfor找不到子函数 7.函数subplot(m,n,p),m,n,p中哪个表示区号,区号按行还是列优先编号?D A.p 列B. n 列C.n 行D.p 行 8.下列哪个函数用来绘制三维网格图:B

A.surf函数 B.mesh函数C.plot3函数 D.以上都不是 9.gcf函数表示:A

A.获取当前图形窗口的句柄B.获取当前坐标轴的句柄

C.获取最近被选中的图形对象的句柄D.按照指定的属性来获取图形对象的句柄 10.N次多项式用长度为___的___向量表示。C A.N+1 列B.N 列C.N+1 行 D.N 行 二、填空题(2×10)

1.注释以 _ % 开头,后面是注释的内容.

2.__clear__命令用于删除MATLAB工作空间中的变量,_clc___命令用于清屏。 3.矩阵元素按 列 (列/行)编号。 4.点运算要求两矩阵的 维数 相同。

5.MATLAB实现将全下标转换为单下标的指令为Sub2ind、据单下标换算出全下标的指令为 Ind2sub。

6.命令文件可以(不可以/可以)直接运行,函数文件不可以(不可以/可以)直接运行。 7.函数文件定义的变量为局部变量(局部/全局)。 三、程序阅读(4×10) 写出程序运行结果。

1. >>A=[3 5 7 9;0 2 4 1;6 4 4 8]; >>B=A([1 2],2:3) 答案: B=5 7 2 4

2.>>a=[6 9 3;2 7 5]; >> b=[2 4 1;4 6 8]; >> c=a.*b 答案: c=12 36 3 8 42 40 3.>>A=[6 4 4 8];

>>B=[1 1 1 0;1 1 1 0;1 1 1 0; 0 0 0 5]; >>C=[A;B(:,1:3)’] 答案: C=

6 4 4 8 1 1 1 0 1 1 1 0 1 1 1 0 4. 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

答案:x=1 5 3 9 5 13 7 17 四、编程(2×10)

1.输入三个数按从大到小的顺序输出。(使用if)答案:

a=input('a=?'); a(1)=a(3); if a(1)

判 f=input('输入第一个字母(大写字符)'); switch f

case 'S'

s=input('输入第二个字母(小写字符)'); if s=='a'

disp('Saturday') elseif s=='u'

disp ('Sunday'); else

disp('data error'); end break; case 'F'

disp('Friday');break; case 'M'

disp('Monday');break; case 'T'

s=input('输入第二个字母(小写字符)’); if s=='u'

disp('Tuesday'); elseif s=='h'

disp ('Thursday'); else

disp('data error'); end break; case 'W'

disp('Wednesday'); break; otherwise

disp('data error'); end