Matlab 编程基础
M文件编辑器
Matlab中使用文本编辑器代替命令行窗口来创建一个.m文件以保存执行指令。
变量
输入和输出
程序的流程控制
if-else-end 分支结构
比较常用于连续结果的处理
*若判断条件为真,则执行命令组,否则跳过该命令组。
if expression
commands
end
*若可供选择的执行命令组有2组,则采用以下结构。
if expression
commands1
else
commands2
end
*若可执行的命令组大于2组,则采用以下结构。
if expression
commands1
elseif expression
commands2
else
commandsn
end
代码:
Score=input('请输入您的成绩:');
if Score < 60
fprintf('不及格\n')
elseif Score<70
fprintf('及格\n')
elseif Score<80
fprintf('中等\n')
elseif Score<90
fprintf('良好\n')
else
fprintf('优秀\n')
end
switch-case 分支结构
比较常用于分类结果的处理
switch value
case test1
command1 %如果value=test1,则执行command1后结束命令
case test2
command2
……
case testn
commandn
otherwise
commando %如果以上都没执行,则执行这一步骤
end
代码:
Today=input('请输入1-7的数字:');
switch Today
case 1
fprintf('今天是周一\n')
case 2
fprintf('今天是周二\n')
case 3
fprintf('今天是周三\n')
case 4
fprintf('今天是周四\n')
case 5
fprintf('今天是周五\n')
case 6
fprintf('今天是周六\n')
case 7
fprintf('今天是周日\n')
otherwise
fprintf('您输入的数字有误!\n')
end
*也可用switch-case处理连续变量,需要对连续变量做分类处理
代码:
Score = input('请输入成绩:');
if Score <0 | Score > 100
fprintf('输入成绩有误,请重新输入\n')
else
Score1 = floor(Score/10);
switch Score1
case 6
fprintf('及格\n')
case 7
fprintf('中等\n')
case 8
fprintf('良好\n')
case 9
fprintf('优秀\n')
case 10
fprintf('优秀\n')
otherwise
fprintf('不及格\n')
end
end
for 循环结构
for x=array
commands
end
代码:
for I = 1:2:100
fprintf('%d\n',I)
end
*嵌套循环多用来处理矩阵类型的二维结构的数据
用for循环制作九九乘法表
代码:
for row=1:9;
for column=1:row
fprintf('%d×%d=%d ',column,row,column*row)
if (column~=row)
fprintf('\t')
end
end
fprintf('\n')
end
while循环结构
当满足while后面的条件时循环
while expression
commands
end
代码:
i = 0;
sum = 0;
while i <=100
sum=sum+i;
i=i+1;
end
sum
pause暂停指令
pause:暂停执行命令,直到用户按任意键
pause(n):暂停n秒执行命令
代码:
for i=1:10
i
pause(0.5)
end
continue和break控制循环
continue的作用是终止本次循环,后面的循环依旧执行
break的作用是终止后续所有循环
代码:
for i=1:10
if i ==5
%continue
break
else
i
end
end
函数
*函数就是将完成某一特定功能的代码封装在一起,便于重复调用执行。
函数必须写在M文件中,通常与文件名保持一致(大小写也必须一致)
具有传入参数的函数
具有返回值的函数
具有多个返回值的函数
页:
[1]