Fortran结构体-课件(PPT-精).ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Fortran结构体-课件(PPT-精)

* 第九章 结构体 9.1 派生类数据类型 格式:TYPE[,ACCESS[::] ]派生类型名字 分量表 END TYPE [派生类名] ACCESS:访问方式,PRIVATE(私有的) PUBLIC(公共的) 默认方式为 PUBLIC 。 分量表:该类型中的成员项,每项要有类型说明。 P177 例: TYPE STUDENT CHARACTER (15) NAME INTEGER NUM LOGICAL SEX CHARACTER (30) ADDRESS END TYPE 9.2 结构体变量的定义与引用 一、结构体类型变量的定义 格式: TYPE(派生类型名):: 结构体变量名 例:TYPE (STUDENT):: S1,S2 结构体类型可以嵌套定义,即结构体类型的成员也可以是另一个结构体类型的变量。P177 例: TYPE STUDENTRECORD CHARACTER (15) NAME INTEGER NUM LOGICAL SEX CHARACTER (30) ADDRESS END TYPE TYPE STUDENTTOGETHER TYPE (STUDENTRECORD):: STUDENT REAL MATH REAL ENGLISH REAL CHINESE END TYPE 若定义 STUDENTTOGETHER 结构体变量 S : TYPE (STUDENTTOGETHER):: S 则结构体变量 S 包含:三个实型变量MATH、ENGLISH、CHINESE和一个结构体变量STUDENT,而STUDENT又包含NAME、NUM、SEX、ADDRESS四个成员。 二、结构体成员的引用 结构体名 % 成员名 结构体名 . 成员名 如:S1. NAME、S1.NUM S2%NAME、S2%NUM S%STUDENT% NUM 9.3 结构体变量的赋值 一、用赋值语句给结构体成员赋值 P178 例9.1 职工工资表包含的数据有:姓名、性别、家庭住址、工资等,现计算三个职工工资的平均值。 TYPE CLERK CHARACTER (15) NAME LOGICAL SEX CHARACTER (30) ADDRESS INTEGER SAL END TYPE TYPE (CLERK):: S1, S2, S3 S1.SAL=800 !也可用输入语句 READ*, S1.SAL S2%SAL=900 S3.SAL=700 AVER=(S1%SAL+S2.SAL+S3.SAL)/3 PRINT*, 三个职工的平均工资为:, AVER END 二、定义变量的同时赋值 格式: TYPE (派生数据类型名) :: 结构体变量名 =派生数据类型名(成员初值表) 例如: TYPE TEACHER CHARACTER (12) NAME LOGICAL SEX END TYPE TYPE(TEACHER)::S1=TEACHER (“WU,.TRUE.), S2, S3 赋值时,所给的值类型和个数应与结构体变量定义中各成员的类型与个数保持一致。 可以将一个结构体变量的值直接赋给另外一个结构体变量, P180 例: INTEGER S TYPE STUDENTRECORD CHARACTER (15) NAME INTEGER NUM LOGICAL SEX CHARACTER (30) ADDRESS END TYPE TYPE (STUDENTRECORD)::S1, S2 S1=STUDENTRECORD(ABCD,20,.TRUE.,CHANGSHA) S2=S1 S=S2%NUM+S1%NUM PRINT*, S END 9.4 结构体数组 一般格式: TYPE (派生类型名), DIMENSION(维数说明符, …) :: 结构体数组名 例:TYPE(STUDENT), DIMENSION(100)::STU P183 例:职工信息:职工号、职工姓名、年龄、工资,职工150人,存储信息后统计工资低于500元的职工数,并输出相关信息。 program clerkrecord implicit none integer :: k, i type cle

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档