C語言程序設(shè)計(jì) 課件 第九章 自定義數(shù)據(jù)類型_第1頁
C語言程序設(shè)計(jì) 課件 第九章 自定義數(shù)據(jù)類型_第2頁
C語言程序設(shè)計(jì) 課件 第九章 自定義數(shù)據(jù)類型_第3頁
C語言程序設(shè)計(jì) 課件 第九章 自定義數(shù)據(jù)類型_第4頁
C語言程序設(shè)計(jì) 課件 第九章 自定義數(shù)據(jù)類型_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

應(yīng)用型系列教材C語言程序設(shè)計(jì)第九章自定義數(shù)據(jù)類型結(jié)構(gòu)體類型01結(jié)構(gòu)體類型有以下5個(gè)特點(diǎn):定義一個(gè)結(jié)構(gòu)體類型,系統(tǒng)不會(huì)為其分配內(nèi)存單元。結(jié)構(gòu)體類型由多個(gè)成員組成,成員的數(shù)據(jù)類型可以是整型、實(shí)型、字符型、數(shù)組,也可以是另一個(gè)已經(jīng)定義的結(jié)構(gòu)體類型。結(jié)構(gòu)體類型是根據(jù)用戶的需要來組合的。定義一個(gè)結(jié)構(gòu)的語法格式01結(jié)構(gòu)體類型有以下5個(gè)特點(diǎn):結(jié)構(gòu)體類型系統(tǒng)沒有預(yù)先定義,當(dāng)需要使用結(jié)構(gòu)體類型數(shù)據(jù)時(shí),用戶都必須自己在程序中定義。已經(jīng)定義的某種結(jié)構(gòu)體類型可以作為一種數(shù)據(jù)類型,用來定義變量、數(shù)組、指針,這時(shí)才會(huì)給定義的變量、數(shù)組、指針分配內(nèi)存單元。定義一個(gè)結(jié)構(gòu)的語法格式01先定義結(jié)構(gòu),再定義結(jié)構(gòu)體變量在定義結(jié)構(gòu)類型的同時(shí)定義結(jié)構(gòu)體變量直接定義結(jié)構(gòu)體變量結(jié)構(gòu)體變量的定義0203

結(jié)構(gòu)體變量成員的引用表示結(jié)構(gòu)體變量成員的語法格式如下:結(jié)構(gòu)體變量名,成員名04結(jié)構(gòu)體變量的初始化結(jié)構(gòu)體變量初始化的語法格式與一維數(shù)組初始化的語法格式相似:結(jié)構(gòu)體變量={初值表}05結(jié)構(gòu)體數(shù)組數(shù)組的元素也可以是結(jié)構(gòu)體類型。因此可以構(gòu)成結(jié)構(gòu)體數(shù)組。結(jié)構(gòu)體數(shù)組的每一個(gè)元素都是具有相同結(jié)構(gòu)類型的下標(biāo)結(jié)構(gòu)變量。指向結(jié)構(gòu)體變量的指針變量其訪問的語法格式如下:(*結(jié)構(gòu)體指針變量).成員名指向結(jié)構(gòu)體數(shù)組的指針指針變量可以指向一個(gè)結(jié)構(gòu)體數(shù)組,這時(shí)結(jié)構(gòu)體指針變量的值是整個(gè)結(jié)構(gòu)體數(shù)組的首地址。結(jié)構(gòu)體指針變量也可以指向結(jié)構(gòu)體數(shù)組的一個(gè)元素,這時(shí)結(jié)構(gòu)體指針變量的值是該結(jié)構(gòu)體數(shù)組元素的首地址。結(jié)構(gòu)體指針變量的定義和使用06結(jié)構(gòu)體指針變量作為函數(shù)參數(shù)使用指針變量作為函數(shù)參數(shù)進(jìn)行傳送。這時(shí)由實(shí)參傳向形參的只是地址,從而減少了時(shí)間和空間的開銷。結(jié)構(gòu)體指針變量的定義和使用06共用體0201共用體的定義共用體定義的語法格式如下:union共用體名{數(shù)據(jù)類型1

成員名1;數(shù)據(jù)類型1

成員名1...數(shù)據(jù)類型n

成員名n;};共用體變量的定義共用體變量成員的引用共用體變量的定義與結(jié)構(gòu)體變量的定義相似,包括3種形式。與結(jié)構(gòu)體變量類似,共用體成員的引用也有3種形式。02共用體變量的定義和使用共用體變量賦初值共用體變量也可以在定義時(shí)直接進(jìn)行初始化,但這個(gè)初始化只能對(duì)第一個(gè)成員進(jìn)行。鏈表03常用的內(nèi)存管理函數(shù)有以下3個(gè):分配內(nèi)存空間函數(shù)malloc()分配內(nèi)存空間函數(shù)calloc()釋放內(nèi)存空間函數(shù)free()動(dòng)態(tài)存儲(chǔ)分配01最簡單鏈表的示意圖鏈表的概念02對(duì)鏈表主要有以下幾種操作:創(chuàng)建鏈表是指從無到有地建立起一個(gè)鏈表,即往空鏈表中依次插入若干節(jié)點(diǎn),并保持節(jié)點(diǎn)之間的前驅(qū)和后繼關(guān)系。檢索操作是指按給定的節(jié)點(diǎn)索引號(hào)或檢索條件查找某個(gè)節(jié)點(diǎn)。如果找到指定的節(jié)點(diǎn),則稱為檢索成功;否則稱為檢索失敗。鏈表的基本操作03對(duì)鏈表主要有以下幾種操作:插入操作是指在鏈表中增加一個(gè)新節(jié)點(diǎn),使線性表的長度加1,并且保持原有邏輯關(guān)系。刪除操作是指在鏈表中刪除一個(gè)節(jié)點(diǎn),使線性表的長度減1,并且保持原有邏輯關(guān)系。鏈表的基本操作03枚舉類型0401枚舉類型的定義和枚舉變量的說明枚舉類型的定義枚舉變量的定義枚舉類型定義的語法格式如下:enum

枚舉名{枚舉值表};如同結(jié)構(gòu)體和共用體一樣,枚舉變量也可以使用不同的方式定義,即先定義類型后再定義變量,也可以同時(shí)定義類型和變量。02枚舉變量的賦值和使用枚舉類型在使用時(shí)有以下規(guī)定:(1)枚舉值是常量,不是變量。不能在程序中使用賦值語句再對(duì)它賦值。(2)舉元素本身由系統(tǒng)定義了一個(gè)表示序的數(shù)值,從0開始順定義為0、1、2...。用typedef定義類型05typedef定義類型步驟如下:(1)按定義變量方法先寫出定義體。(2)將變量名換成新類型名。(3)最前面添加typedef。(4)使用新類型名定義變量。用typedef定義類型01常見錯(cuò)誤06結(jié)構(gòu)類型定義丟失分號(hào)把結(jié)構(gòu)名當(dāng)做變量名在定義結(jié)構(gòu)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論