MATLAB GUI设计(2)
MATLAB GUI设计(2)
1、小Tips:
(1)在命令行输入 edit ,打开M文件编辑窗口。
(2)编辑功能:
1)选择:Shift + 箭头键
2)注释:Ctrl + R添加注释%,Ctrl + T删除注释
3)缩进:Ctrl + ] 增加缩进量,Ctrl + [ 减少缩进量
(3)查询功能:help+具体函数名 / look for +关键字。
(4)模糊寻找功能:输入命令的前几个字母,然后按 Tap键,系统将列出所有以其开头的命令。
(5)注释:大段注释快捷键“Ctrl+R”,取消注释快捷键“Ctrl+T ”。
2、MATLAB中的函数类型
(1)匿名函数
创建匿名函数标准格式:F = @(input1,input2,...)expr
【例2.1】
>>myfhd = @(x)(x - 2 * x^2)
>>myfhd(4)
%运行结果如下
ans =
-28
2)M文件主函数
M文件第一行定义的函数就是M文件主函数,一个M文件只能包含一个主函数。
(3)子函数
M文件中主函数以外的其他函数称为子函数,保存时所用的函数名应与主函数定义名相同。
M文件内部发生函数调用时,MATLAB首先检查该文件中是否存在相应名称的子函数,然后检查这一M文件所在目录的子目录下是否存在同名的私有函数,然后按照MATLAB路径,检查是否存在同名的M文件或内部函数。
(4)嵌套函数
定义在其他函数内部的函数。嵌套函数的书写语法格式如下:
function x = A(b1,b2)
..
function y = B(c1,c2)
..
e
nd
..
end
(5)重载函数
重载是计算机编程中非常重要的概念,它经常是用在处理功能类似,但是参数类型或个数不同的函数编写中。例如实现两个相同的计算功能,输人变量数量相同,不同的是其中一个输人变量的类型为双精度浮点类型,另一个输人类型为整型,这时候用户就可以编写两个同名函数,一个用来处理双精度浮点类型的输人函数,另一个用来处理整型的输人参数。MATLAB的内置函数中有许多重载函数,放置在不同的文件路径下,文件夹名称以@开头,然后跟一个代表MATLAB数据类型的字符。
3、MATLAB三大程序控制模式:顺序结构、选择结构和循环结构。
(1)顺序结构:程序源代码按照从上至下的次序依次执行。
1)数据输入
A = input(提示信息,选项);
x = input(prompt)
str = input(prompt,'s')
2)数据输出
disp(输出项);
(2)选择结构:
【if-else-end语句】多重判断选择
1)单分支if语句
if 条件
语句组
end
2)双分支if语句
if 条件
语句组1
else
语句组2
end
3)多分支if语句
if 条件1
语句组1
elseif 条件2
语句组2
...
elseif 条件m
语句组m
else
语句组n
end
【多分支判断选择】switch-case语句
switch语句根据表达式取值的不同,分别执行不同的语句,格式为:
swtich 表达式
case 表达式1
语句组1
case 表达式2
语句组2
...
case 表达式m
语句组m
otherwise
语句组n
end
%在MATLAB语言中,当其中一个case语句后的条件为真时,switch-case语句不对其后的case语句进行判断,不向C语言那样需要break语句。
(3)循环结构
1)循环次数确定的for循环
语句格式:
for 循环变量 = 表达式1 : 表达式2 : 表达式3
循环体语句
end
表达式1是循环变量的初值,表达式2的值为步长,表达式3的值为循环变量的终值,步长为1时,表达式2可以省略。
【例2.2】输出3位水仙花数
(水仙花数是指一个n位数(n>=3),它的每个位上的数字的n次幂之和等于它本身)
for m = 100:999
m1 = fix(m/100);
%求m的百位数字
m2 = rem(fix(m/10),10);
%求m的十位数字
m3 = rem(m,10);
%求m的个位数字
if m == ml*ml*m1 + m2*m2*m2 + m3*m3*m3
disp(m)
end
end
——————————
输出结果如下:
153
370
371
407
2)循环次数不确定的while循环
语句格式:
while 循环结构
循环体语句
end
【例2.3】输入若干个数,当输入0时结束输入,求这些书的平均数和它们的和。
sum = 0;
n = 0;
val= input('请输入数字(输入0结束):');
while (val~ = 0)
sum= sum + val;
n=n+1;
val = input('请输入数字(输入0结束):');
end
if (n> 0)
sum
mean = sum/n
end
—————————————————————
输出结果如下:
请输入数字(输入0结束):1
请输入数字(输入0结束):2
请输入数字(输入0结束):3
请输入数字(输入0结束):4
请输入数字(输入0结束):5
请输入数字(输入0结束):0
sum =
15
mean
=
3
(4)流程控制语句其它常用命令
1)break命令
用于for或while循环语句中,与if语句一起使用,中止本次循环,跳出最内层循环。
a=4;b=6;
for i=1:4
b=b + 1;
if i>2
break %当if条件满足时不再执行循环
end
a = a + 2
end
———————————————————————
运行结果如下:
a =
6
a =
8
2)continue命令
用于for或while循环语句中,与if语句一起使用,达到跳过本次循环,去执行下一次循环的目的。
a=4;b=6;
for i = 1:4
b=b+ 1;
if i<2
continue %当if条件满足时不再执行后面语句
end
a=a+2 %当1<2时不执行该语句
end
—————————————————————————
运行结果如下:
a =
6
a =
8
a =
10
上一篇: yii2.0静态资源js css引入方法
下一篇: 字节序转换函数与地址转换函数