matlab - 复习资料
mysum=0;i=1; while(i<=100)
mysum=mysum+i; i=i+1; end mysum 答:
mysum =
5050
3. 写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值。
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 disp(x); 答:
1 5 3 9 5 13 7 17 4. 运行如下程序后,输入9回车,命令窗口显示的结果为:
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); end 答:9
5. 运行如下程序后,命令窗口显示的结果为:
s=0;
a=[12,13,14;15,16,17;18,19,20]; for k=a
matlab - 复习资料
s=s+k; end disp(s'); 答:39 48 57
6. 运行如下程序后,命令窗口显示的结果为:
k=0; for n=100:200 if rem(n,21)~=0 k=k+1; continue end break; end k 答:5
7. 已知函数文件如下,则factor(4)的值为:
function f=factor(n) if n<=1 f=1; else
f=factor(n-1)*n; end end 答:24
8. 下面程序执行后array的值为:
for k=1:10 if k>6 break; else
array(k)=k; end
matlab - 复习资料
end
答:array=[1,2,3,4,5,6]
五、 简答题:
1. 什么就是MATLAB的搜索路径?若在命令提示符后输入符号X,请问Matlab将按什
么次序搜索与识别X?
2. 叙述MATLAB的主要窗口包括哪些?其作用就是什么?
? 命令窗口:供输入命令,实现计算或绘图功能。
? 工作空间窗口:用于列出数据的变量信息,包括变量名、变量字节大小 ? 变量数组大小、变量类型等内容。
? 当前目录浏览器:显示当前目录下所有文件的文件名、文件夹类型与最后修改时
间等内容。
? 命令历史窗口:显示窗口所有执行过的命令,利用该窗口,可以查瞧曾经执行过的
命令,也可以重复利用这些命令。
3. MATLAB的变量命名有什么规则?
? 变量名区分大小写;
? 变量名最多包含63个字符,其后的字符将被忽略;
? 变量名必须以一个字母开始,其后可以就是如意数量的字母、数字或下划线; ? 变量名中不允许出现标点符号,因为许多标点符号在MATLAB中有特殊意义。 4. 函数M文件的基本结构就是什么?各结构部分起什么作用?
1、函数声明行
2、H1行 %帮助文字的第一行,给出M文件帮助最关键的信息 3、帮助文字 %对M文件更为详尽的说明 4、M文件正文 %所实现的功能部分 5、注释部分 %
5. MATLAB系统由那些部分组成?
? MATLAB系统主要由开发环境、 ? MATLAB数学函数库、 ? MATLAB语言、 ? 图形功能
? 应用程序接口五个部分组成。
6. 有几种建立矩阵的方法?各有什么优点? 可以用四种方法建立矩阵:
? 直接输入法,如a=[2 5 7 3],优点就是输入方法方便简捷;
? 通过M文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改; ? 由函数建立,如y=sin(x),可以由MATLAB的内部函数建立一些特殊矩阵; ? 通过数据文件建立,该方法可以调用由其她软件产生数据。 7. 创建符号变量有几种方法? 答:
MATLAB提供了两种创建符号变量与表达式的函数:sym与syms。
sym用于创建一个符号变量或表达式,用法如x=sym(‘x’) 及 f=sym(‘x+y+z’); syms用于创建多个符号变量,用法如syms x y z。 f=sym(‘x+y+z’) 相当于
matlab - 复习资料
syms x y z f= x+y+z
8. 举例说明如何访问单元数组中的数据,说明使用花括号与圆括号的区别。 六、 编程题
1. 编写MATALAB程序,完成下列任务:
? 在区间[0,4*pi]上均匀地取20个点构成向量;
? 分别计算函数y1=sin(t)与y2=2cos(2t)在向量 t处的函数值;
? 在同一图形窗口绘制曲线y1=sin(t)与y2=2cos(2t),要求y1曲线为黑色点画线,y2
曲线为红色虚线圆圈;并在图中恰当位置标注两条曲线的图例;给图形加上标题“y1 and y2”。
解,程序如下:
t=linspace(0,4*pi,20); y1=sin(t);
y2=2*cos(2*t); plot(t,y1,'k-、');
text(1、2,sin(1、2),'y1\\leftarrow','FontSize',12); hold on;
plot(t,y2,'r--o');
text(6,1、5,'y2\\leftarrow','FontSize',12); title('y1 and y2')
2. 编写一个脚本程序实现:在同一图上分别用红色虚线与绿色点划线绘制函数y1=sinx
与y2=x2+2x-1在区间[-10,10]的曲线,标题为“用作图法求两条函数曲线的交点”,x轴为“自变量x”,y轴为“函数y1、y2的曲线”,并给出图例“‘y1=sinx’,‘y2=x2+2x-1’”。(7分) 解:
x=-10:1:10; y1=sin(x);
y2=x、^2+2*x-1; plot(x,y1,'r--'); hold on
plot(x,y2,'c-、'); xlabel('自变量x');
ylabel('函数y1、y2的曲线');
title('用作图法求两条函数曲线的交点'); legend('y1=sin(x)','x^2+2x-1'); 3. A就是一个維度m×n的矩阵,写一段程序,计算出A中有多少个零元素(不能调用系统
函数)。 答:
A= input ('请输入一个矩阵') [m,n]= size(A); sig=0; for i=1:m
for j=1:n
if A(i,j)==0
matlab - 复习资料
sig = sig+1; end end end
disp(sig) 4. 向量 A=[答:
A= input ('请输入一个向量') ]、 写一段程序, 找出A中的最小元素(不能调用系统函数)。
[m,n]=size(A) min =A(1,n); for i=1:n
if A(1,i) disp(min) 5. 教材课后练习: P45 3 P141 2~8