第 4 章 Lingo 软件初步
1.2.4 二维数组的创建
二维数组是由实数或复数排列成矩形而形成的,因此从数据结构上看,矩阵和二维数
组是没有区别的.二维数组的创建也有多种方法,常用的有:直接生成法、利用 M 文件生成
法和函数生成法三种.
(1)直接生成法.对于较小数组,可用此法生成.用此方法生成二维数组需满足三条规
则:整个输入数组必须以方括号“[ ]”为其首尾;同一行的元素需用逗号或空格分开;不同
行的元素需用分号或回车分开.如
>>A=[1,2,3;4,5,6] 或
>>A=[1 2 3;4 5 6] 或
>>A=[1 2 3
4 5 6]
(2)利用 M 文件创建数组.对于经常调用且元素较多的大数组,用此方法较为方便,
(3)函数生成法.MATLAB 提供了一些函数来生成特殊的数组,常用的函数见附表 1-
5.
附表 1-5 特殊数组的生成函数
指令 含义 指令 含义
magic(n)
生成 阶幻方数组
rand
生成均匀分布随机数组
eye
生成单位数组(对高维不适应)
randn
生成正态分布随机数组
ones
生成全 1 数组
zeros
生成全 0 数组
例 4 函数生成矩阵示例
>>ones(1,2) %产生长度为 2 的全 1 行数组
>>ones(2) %产生(2 2)的全 1 阵
>>D=eye(3) %产生(3 3)单位阵
1.2.5 二维数组的子数组寻访和赋值
二维数组的子数组寻访和赋值同一维数组的类似,常用的指令见附表 1-6.
附表 1-6 子数组寻访和赋值常用指令表
寻访和赋值 指令含义
A(i,j)
寻访 A 的第 i 行第 j 列元素
A(i,:)
寻访 A 的第 i 行所有元素
A(:,j)
寻访 A 的第 j 列所有元素
A(:)
“单下标全元素”寻访.它由 A 的各列按自左到右,首尾相接生成“一维长列”数组
A(k)
“单下标”寻访.寻访 A 的“一维长列”数组的第 k 个元素
A(i,j)=a
将 a 赋值给 A 的第 i 行第 j 列元素
A(k)=a
将 a 赋值给 A 的“一维长列”数组的第 k 个元素
例 5 二维数组的子数组赋值示例
>>A=zeros(2,4) %创建 2 行 4 列的全零数组
>>A(:)=1:8 %全元素赋值
>>s=[2 3 5]; %产生单下标数组