Fortran結(jié)構(gòu)體PPT課件_第1頁
Fortran結(jié)構(gòu)體PPT課件_第2頁
Fortran結(jié)構(gòu)體PPT課件_第3頁
Fortran結(jié)構(gòu)體PPT課件_第4頁
Fortran結(jié)構(gòu)體PPT課件_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1 第九章結(jié)構(gòu)體 9 1派生類數(shù)據(jù)類型 格式 TYPE ACCESS 派生類型名字分量表ENDTYPE 派生類名 ACCESS 訪問方式 PRIVATE 私有的 PUBLIC 公共的 默認方式為PUBLIC 分量表 該類型中的成員項 每項要有類型說明 2 P177例 TYPESTUDENTCHARACTER 15 NAMEINTEGERNUMLOGICALSEXCHARACTER 30 ADDRESSENDTYPE 9 2結(jié)構(gòu)體變量的定義與引用 一 結(jié)構(gòu)體類型變量的定義 格式 TYPE 派生類型名 結(jié)構(gòu)體變量名 例 TYPE STUDENT S1 S2 3 結(jié)構(gòu)體類型可以嵌套定義 即結(jié)構(gòu)體類型的成員也可以是另一個結(jié)構(gòu)體類型的變量 P177例 TYPESTUDENTRECORDCHARACTER 15 NAMEINTEGERNUMLOGICALSEXCHARACTER 30 ADDRESSENDTYPETYPESTUDENTTOGETHERTYPE STUDENTRECORD STUDENTREALMATHREALENGLISHREALCHINESEENDTYPE 4 若定義STUDENTTOGETHER結(jié)構(gòu)體變量S TYPE STUDENTTOGETHER S則結(jié)構(gòu)體變量S包含 三個實型變量MATH ENGLISH CHINESE和一個結(jié)構(gòu)體變量STUDENT 而STUDENT又包含NAME NUM SEX ADDRESS四個成員 二 結(jié)構(gòu)體成員的引用 結(jié)構(gòu)體名 成員名結(jié)構(gòu)體名 成員名 如 S1 NAME S1 NUMS2 NAME S2 NUMS STUDENT NUM 5 9 3結(jié)構(gòu)體變量的賦值 一 用賦值語句給結(jié)構(gòu)體成員賦值 P178例9 1職工工資表包含的數(shù)據(jù)有 姓名 性別 家庭住址 工資等 現(xiàn)計算三個職工工資的平均值 TYPECLERKCHARACTER 15 NAMELOGICALSEXCHARACTER 30 ADDRESSINTEGERSALENDTYPETYPE CLERK S1 S2 S3S1 SAL 800 也可用輸入語句READ S1 SALS2 SAL 900S3 SAL 700AVER S1 SAL S2 SAL S3 SAL 3PRINT 三個職工的平均工資為 AVEREND 6 二 定義變量的同時賦值 格式 TYPE 派生數(shù)據(jù)類型名 結(jié)構(gòu)體變量名 派生數(shù)據(jù)類型名 成員初值表 例如 TYPETEACHERCHARACTER 12 NAMELOGICALSEXENDTYPE TYPE TEACHER S1 TEACHER WU TRUE S2 S3 賦值時 所給的值類型和個數(shù)應與結(jié)構(gòu)體變量定義中各成員的類型與個數(shù)保持一致 可以將一個結(jié)構(gòu)體變量的值直接賦給另外一個結(jié)構(gòu)體變量 7 P180例 INTEGERSTYPESTUDENTRECORDCHARACTER 15 NAMEINTEGERNUMLOGICALSEXCHARACTER 30 ADDRESSENDTYPETYPE STUDENTRECORD S1 S2S1 STUDENTRECORD ABCD 20 TRUE CHANGSHA S2 S1S S2 NUM S1 NUMPRINT SEND 8 9 4結(jié)構(gòu)體數(shù)組 一般格式 TYPE 派生類型名 DIMENSION 維數(shù)說明符 結(jié)構(gòu)體數(shù)組名 例 TYPE STUDENT DIMENSION 100 STU 9 P183例 職工信息 職工號 職工姓名 年齡 工資 職工150人 存儲信息后統(tǒng)計工資低于500元的職工數(shù) 并輸出相關信息 programclerkrecordimplicitnoneinteger k itypeclerk 定義結(jié)構(gòu)體類型integernumcharacter 15 namerealsalendtypeclerktype clerk dimension 150 cl 定義結(jié)構(gòu)體數(shù)組k 0Print 輸入職工號num doi 1 150read cl i numenddo 10 print 輸入職工姓名name doi 1 150read cl i nameenddoprint 輸入職工工資sal doi 1 150read cl i salenddodoi 1 150if cl i sal 500 then 打印工資 500的職工信息及計數(shù)k k 1print cl i num cl i name cl i salendifenddoPrint kend 11 排序算法SUBROUTINESORT STRE N 可調(diào)數(shù)組TYPESTUDENTCHARACTER 15 NAMEINTEGERMARKINTEGERGRADEENDTYPESTUDENTTYPE STUDENT DIMENSION N STRETYPE STUDENT TEMPINTEGERI J NDOI 1 N 1DOJ I 1 NIF STRE I MARK STRE J MARK THENTEMP STRE I STRE I STRE J STRE J TEMPENDIFENDDOENDDOEND 12 插入算法SUBROUTINESORT INSERT STRE NEW N type studentcharacter 15 nameinteger MARKinteger gradeendtypestudenttype student stre N 1 說明數(shù)組 N 1 11type student newIntegeri n ji 1dowhile stre i MARK new MARK and i N i i 1enddodoj N i 1stre j 1 stre j enddostre i newend 13 順序查找SUBROUTINESORT SEARCH STRE N KEY TYPESTUDENTCHARACTER 15 NAMEINTEGERMARKINTEGERGRADEENDTYPESTUDENTTYPE STUDENT STRE N INTEGERI N KEYI 1DOWHILE STRE I MARK NE KEY AND I LE N I I 1ENDDOIF I N THENPRINT 找到 姓名 STRE I NAME 成績 STRE I GRADEELSEPRINT 查無此人 ENDIFEND 14 刪除算法SUBROUTINEDEL STRE DEKEY N TYPESTUDENTCHARACTER 15 NAMEINTEGERMARKINTEGERGRADEENDTYPESTUDENTTYPE STUDENT DIMENSION N STRETYPE STUDENT TEMPINTEGERI N J DEKEYI 1DOWHILE STRE I MARK NE DEKEY AND I LE N I I 1ENDDOIF I GT N THENPRINT 學生記錄沒找到 無法刪除 ELSETEMP STRE I TEMP為一個臨時記錄 用于存放待刪記錄DOJ I N 1STRE J STRE J 1 ENDDOPRINT 刪除的記錄為 TEMP NAME TEMP MARK TEMP GRADEENDIFEND 15 PROGRAMSTUDENT RECORDS 主程序TYPESTUDENTCHARACTER 15 NAMEINTEGERMARKINTEGERGRADEENDTYPESTUDENTINTEGER PARAMETER STNUM 5 代表要處理的學生數(shù)TYPE STUDENT DIMENSION STNUM 1 STRETYPE STUDENT NEW1PRINT 請輸入學生有關的信息 DOI 1 STNUMREAD STRE I NAME STRE I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論