变量并不都需要显示的申明 局部变量 在程序中可以定义变量。每个 函数体内部也可以定义自己的变量, 这些变量如果不用global声明,则不 能从其他函数和MATLAB工作空间中访 问这些变量,这样的变量就是局部变 量。
LOGO
全局变量 如果要使得其他函数和MATLAB工作空 间使用这些变量,则定义为全局变量,用 “global”声明。 全局变量需要在函数体对变量的赋值语句前说明, 整个函数以及所有对函数的递归调用都可以利 用全局变量。 变量命名建议: 变量名尽量反映其含义,如汽车数量用numcar, num_car捕鱼收入用incomefish,income_fish。 局部变量名尽量采用小写全局变量名尽量大写
七、问题解决
x 2 1 x 1 例3 f ( x) , 求f (2), f (1) x 1 2x
function f=fun1(x) If x>1 f=x^2+1; else f=2*x; end
LOGO
在命令窗口中输入 >>fun1(2),fun1(-1)
(1)打开M文件,输入:
LOGO
function y=xy(x)
if x<=0 y=0 elseif x<=1 y=1 elseif x<=2 y=2*x else y=2*x+5 end LOGO
LOGO
LOGO
五、问题解决
例2 定义函数f(x,y)=x2+sinxy+2y,并求f(1,2)
(1)建立M文件:fun.m function f=fun(x) f=x^2+sin(x*y)+2*y (2)使用函数fun.m在Matlab命令窗口键入命令 >>x=[1 2]; >>fun(x)