matlab学习:结构化编程与自定义函数

1.结构化编程

1.1 流程控制语句

在这里插入图片描述

1.2 逻辑运算符

在这里插入图片描述

  • 示例
n = 1; 
while prod(1:n) < 1e100 %prod():乘法
    n = n + 1;
end%所有结构化程序都以end结束

1.3 小技巧

  • 使用循环语句应尽量预先分配内存空间。若一个变量所需要的内存空间是一个可预测的定值,我们应尽量提前为其分配内存空间.(可以提高运算时间)
  • tic…toc:显示运行时间
%%
tic 
for ii = 1:2000 
    for jj = 1:2000 
        A(ii,jj) = ii + jj;
    end
end
toc
%%
tic 
A = zeros(2000, 2000);
for ii = 1:size(A,1) 
    for jj = 1:size(A,2) 
        A(ii,jj) = ii + jj;
    end
end
toc
  • 在脚本开头应添加语句清空工作区
clear all % 清空工作区内存中的变量
close all  % 关闭之前程序绘制的图像
clc   % 清空之前程序在终端的输出
  • 使用省略号…拼接多行语句
  • disp()进行输出,input()输入,;不显示结果

2 自定义函数

2.1 查看内置函数

  • 可以使用which命令查看内置函数源代码文件的位置,与edit命令结合可以查看内置函数的源代码.
edit(which('mean.m'))

在这里插入图片描述

2.2 定义函数(函数名.m)

在这里插入图片描述

  • 自定义函数可以在需要的时候进行调用
  • function为关键字,函数名必须和文件名相同
  • 输入和输出不是必要的
    *示例:华氏度转摄氏度
function t=temp()
F=['请输入华氏温度f:'];
f=input(F);
while(~isempty(f))
    t=(f-32).*5./9;
     disp(['温度是:' ,num2str(t)]);
     f=input(F);
     if(isempty(f))
         break;
     end
end

2.3内置函数参数

在这里插入图片描述

2.4 以句柄定义函数

f = @(x) exp(-2*x);%函数句柄 = @(输入变量) 输出变量 
x = 0:0.1:2;
plot(x, f(x));

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/chairon/article/details/108587549
今日推荐