⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2-40.asv

📁 《MATLAB 7.0编程基础基础》源程序
💻 ASV
字号:
patient.name = 'John Doe';
patient.billing = 127.00;
patient.test = [79 75 73; 180 178 177.5; 220 210 205];
% 创建图2-7的结构数组,这是一个单结构数组
patient
% 显示结构数组

patient(2).name = 'Ann Lane';
patient(2).billing = 28.50;
patient(2).test = [68 70; 118 118];
% 向结构数组添加一个元素,变成1×2的结构数组
patient
% 显示结构数组


patient(3).name = ['Ann Lane','John    '];
% 结构数组第三个元素的name域值为多行字符串
patient(3).billing = [44 28.50];
% 结构数组第三个元素的billing域值为1×2的数组
patient(3).test = {'This is an example!',[1 2;3 4]};
% 结构数组第三个元素的test域值为一个元胞数组


s1 = struct('type', {'big','little'}, 'color', {'red'}, 'x', {3 4})
% 创建一个1×2的结构数组,这里{'big','little'}、{3 4}是元胞数组,花括号里面字符串和数值分别为结构数组两元素的域值

s2 = struct('type', {{'big','little'}}, 'color', {'red'}, 'x', {{3 4}})
% 创建一个1×1的结构数组,这里{'big','little'}、{3 4}也是元胞数组,但它们是域值,比较和s1的差别

s3 = struct('type', {'big','little','middle'}, 'color', {'red'}, 'x', {3 4})
% 无法创建结构数组,这里其实想创建一个1×3的结构数组,但是{3 4}输入量为2

s4 = struct('type', {'big','little','middle'}, 'x', [])
% 创建x域值为空的结构数组,结构数组大小为1×3
s4 = 
1x3 struct array with fields:
    type
    x
s5 = struct( 'y3',{'1'},'x', {})
% 创建一个空结构数组
s5 = 
0x0 struct array with fields:
    y3
    x
weather = repmat(struct('temp',72, 'rainfall', 0.0), 2, 3)
% 用repmat复制创建一个2×3的结构数组
weather = 
2x3 struct array with fields:
    temp
    rainfall
另外struct函数不能直接创建嵌套的结构数组。嵌套的结构数组需要另外单独创建。可以先用s4的方法,用“[]”赋值为空,然后创建数组后再另行创建。如下:
s4(2).x.test = [1 2;3 4];
% s4(2)的x域值也是一个结构
s4(2)
ans = 
    type: 'little'
       x: [1x1 struct]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -