题目

编写程序,演示自定义函数的标准定义结构:声明一个名为 <code>calc_box_volume(w, h, d)</code> 的函数计算长方体体积,包含文档注释(H1 Line)、输入参数与返回值绑定,并在主程序中调用。

输入格式:无需外部输入。

输出格式:输出函数计算得到的长方体体积。

数据范围与约定:函数基础。

思路与算法

1. function 关键字结构
标准语法:function [out1, out2] = func_name(in1, in2) ... endfunction(MATLAB 中统一以 end 结尾)。

2. H1 帮助行
紧随 function 行下方的第一行注释被称为 H1 Line。在控制台输入 help func_name 时,系统会自动打印该行注释。编写规范的 H1 行是良好工程习惯。

3. 脚本与函数组织
在独立的单文件可执行脚本中,局部辅助函数必须写在文件的最后,或者在脚本开头写一行空的伪指令(如 1;)告知解释器当前文件为脚本而非函数库。

完整程序

% Octave / MATLAB 第61题:自定义函数基础
1; % 告知 Octave 本文件为主脚本,允许末尾内嵌自定义函数

% 局部函数定义
function vol = calc_box_volume(w, h, d)
    % CALC_BOX_VOLUME 计算长方体体积
    % 输入: w(宽), h(高), d(长/深)
    if w <= 0 || h <= 0 || d <= 0
        error("长宽高必须全为正数");
    end
    vol = w * h * d;
end

% 主程序调用
width  = 3.0;
height = 4.0;
depth  = 5.0;

v = calc_box_volume(width, height, depth);
fprintf("长方体尺寸: %.1f x %.1f x %.1f\n", width, height, depth);
fprintf("计算体积结果: %.2f\n", v);

运行示例

输出:

长方体尺寸: 3.0 x 4.0 x 5.0
计算体积结果: 60.00