Matlab刻意训练
Task05:结构数组(3.17)
3.17.1 结构数组的建立
创建如下数组
1.直接赋值
>> student(1).ID=101;
>> student(2).ID=102;
>> student(3).ID=103;
>> student(4).ID=104;
>> student(1).name='Wang';
>> student(2).name='Chang';
>> student(3).name='Li';
>> student(4).name='Lu';
>> student(1).age=21;
>> student(2).age=20;
>> student(3).age=19;
>> student(4).age=23;
>> student(1).sex='F';
>> student(2).sex='M';
>> student(3).sex='F';
>> student(4).sex='M';
>> student(1).score=88;
>> student(2).score=95;
>> student(3).score=79;
>> student(4).score=73;
>> student
student =
包含以下字段的 1×4 struct 数组:
ID
name
age
sex
score
2.使用函数struct()
>> student=struct('ID',{101,102,103,104},'name',{'wang','chang','Li','Lu'},'age',{21,20,19,23},'sex',{'F','M','F','M'},'score',{88,95,79,73})
student =
包含以下字段的 1×4 struct 数组:
ID
name
age
sex
score
3.17.2 结构数组与单元数组的转换
%接上文所建结构数组student
>> C=struct2cell(student);
C=[C(:,1),C(:,2),C(:,3),C(:,4)]
C =
5×4 cell 数组
{[ 101]} {[ 102]} {[103]} {[104]}
{'Wang'} {'Chang'} {'Li' } {'Lu' }
{[ 21]} {[ 20]} {[ 19]} {[ 23]}
{'F' } {'M' } {'F' } {'M' }
{[ 88]} {[ 95]} {[ 79]} {[ 73]}