第五章_数组.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章_数组

第五章 数 组 数组的定义 数组是类型相同的一组变量的有序集合 基本数据类型 派生数据类型 指针类型 数组的描述 秩(rank)或维数 向量:1维; 矩阵:2维 维数 ? [0, 7] 每一维的范围(extent) 下界、上界 大小(size) 数组元素的总数 形状(shape) 由rank和extent来共同表示 数组的属性 a(1:3, -1:4) 数组元素的存储顺序 按列存储(Column major) 数组的描述 数组的引用 a(1:3, -1:4) 数组名 a 数组元素 a(1,3) 数组片段 三元下标:a(1:2, -1:3:2) 向量下标:a(2, b) b=(/-1, 1, 3/) 数组越界:debug状态检查,release状态不检查 显式形状数组(explicit-shape) Fortran数组的种类 假定形状数组(assumed-shape) 假定大小数组(assumed-size) 延迟形状数组(deferred-shape) 静态显式 自动数组(automatic array) 可调数组(adjustable array) 可分配数组(allocatable array) 指针数组 动态数组 静态数组 用类型声明语句 exam_5_1 静态显式数组的声明 用dimension语句:dimension 数组声明表 用带dimension属性的类型声明语句 类型声明符[::]数组声明表 数组声明表→数组名(维说明表)[=数组初值] {,数组名(维说明表)[=数组初值]} 维说明表→维说明符{,维说明符} 维说明符→[下界:]上界 下界缺省为1 数组初值→(/初值1,…,初值n/)| [初值1,…,初值n] n为数组的大小 数组元素赋值 数组元素的缺省值 要养成赋初值的习惯 exam_5_1 用data语句赋初值(按列存储) 声明数组时直接赋初值(按列存储) 每个数组元素都要赋初值 只能出现常量表达式。*作乘号使用,不是重复符号 可以给部分数组元素赋初值 只能出现常量表达式。*作重复符号使用 以最后一个data语句为准,只赋一次初值 数组元素赋值 用数组构造器赋值(Fortran90) 可以是常量、表达式、三元组、隐式do循环或数组片段 只能给一维数组(或数组片段)赋值 exam_5_1 用reshape语句给多维数组(或数组片段)赋值 直接给数组赋值 给数组整体赋值(Fortran90) 给单个数组元素赋值 两种格式:(/…/) 或 […] 数组元素赋值 条件赋值(where)- Fortran90 where语句→where(屏蔽表达式) 赋值语句 where语句→[标签:]where(屏蔽表达式) {赋值语句} else where(屏蔽表达式)[标签] {赋值语句} {else where(屏蔽表达式)[标签] {赋值语句}} [else where[标签] {赋值语句}] end where[标签] exam_5_2 ASSEM_FORCE.f90 数组元素赋值 屏蔽表达式和赋值语句中的数组的形状必须一致 当赋值语句等号右端的函数是elemental的时候,屏蔽表达式才对该函数起作用 elemental函数(Fortran95,见彭国伦书203页): 可以赋给一个数组,是pure函数的一种特例 pure函数(Fortran95 ,见彭国伦书202页): 确保函数不影响程序其它部分的状态 只能使用赋值语句 数组元素赋值 exam_5_2 forall语句 → forall(三元组{, 三元组}[,屏蔽表达式]) 赋值语句 forall语句→ [标签:]forall(三元组{, 三元组} [,屏蔽表达式]) 赋值语句 {赋值语句}

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档