35.1.1 基本参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
35.1.2 管理空变量的展开 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
35.2 返回变量名的参数展开 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
35.2.1 字符串展开 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
35.2.2 大小写转换 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
35.3 算术求值和展开 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
35.3.1 数基 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
35.3.2 一元运算符 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
35.3.3 简单算术 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
35.3.4 赋值运算符 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
35.3.5 位运算符 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
35.3.6 逻辑运算符 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
35.4 bc - 一种高精度计算器语言 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
35.4.1 使用 bc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
35.4.2 一个脚本实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
35.5 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
35.6 额外加分 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
35.7 拓展阅读 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
36 数组 466
36.1 什么是数组? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
36.2 创建一个数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
36.3 数组赋值 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
36.4 访问数组元素 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
36.5 数组操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
36.5.1 输出整个数组的内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
36.5.2 确定数组元素个数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
36.5.3 找到数组使用的下标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
36.5.4 在数组末尾添加元素 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
36.5.5 数组排序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
36.5.6 删除数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
36.6 关联数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
36.7 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
15