版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1請將您的手機(jī)鈴聲
設(shè)置為震動
2作業(yè)
課本例8.9
P136例8.10
P137例9.5
P1573復(fù)習(xí)回顧結(jié)構(gòu)體的定義結(jié)構(gòu)體變量的定義結(jié)構(gòu)體數(shù)組指向結(jié)構(gòu)體的指針4結(jié)構(gòu)體類型定義struct[結(jié)構(gòu)體名]{
類型標(biāo)識符成員名;類型標(biāo)識符成員名;
…………….};成員類型可以是基本型或構(gòu)造型struct是關(guān)鍵字,不能省略合法標(biāo)識符可以省略5結(jié)構(gòu)體變量定義先定義結(jié)構(gòu)體類型,再定義結(jié)構(gòu)體變量struct結(jié)構(gòu)體名{
類型標(biāo)識符成員名;
類型標(biāo)識符成員名;
…………….};struct結(jié)構(gòu)體名變量名;structstu{intnum;charname[20];charsex;intage;floatscore;charaddr[30];};structstua;
6新課講授鏈表的定義動態(tài)存儲分配函數(shù)創(chuàng)建鏈表刪除鏈表插入鏈表7用結(jié)構(gòu)體變量的成員作參數(shù)結(jié)構(gòu)體作函數(shù)參數(shù)值傳遞地址傳遞多值傳遞用指向結(jié)構(gòu)體變量指針作參數(shù)用結(jié)構(gòu)體變量作參數(shù)8#include"stdio.h"structdata{inta,b,c;};voidfunc(structdatap){p.a=18;p.b=5;p.c=p.a*p.b;printf("%d%d%d\n",p.a,p.b,p.c);}voidmain(){structdatam;m.a=27;m.b=3;m.c=m.a+m.b;printf("%d%d%d\n",m.a,m.b,m.c);func(m);printf("%d%d%d\n",m.a,m.b,m.c);}例用結(jié)構(gòu)體變量作參數(shù)ma:27b:3c:30(main)#include"stdio.h"structdata{inta,b,c;};voidfunc(structdatap){p.a=18;p.b=5;p.c=p.a*p.b;printf("%d%d%d\n",p.a,p.b,p.c);}voidmain(){structdatam;m.a=27;m.b=3;m.c=m.a+m.b;printf("%d%d%d\n",m.a,m.b,m.c);func(m);printf("%d%d%d\n",m.a,m.b,m.c);}9例用結(jié)構(gòu)體變量作參數(shù)m(main)(func)pa:27b:3c:30a:27b:3c:30#include"stdio.h"structdata{inta,b,c;};voidfunc(structdatap){p.a=18;p.b=5;p.c=p.a*p.b;printf("%d%d%d\n",p.a,p.b,p.c);}voidmain(){structdatam;m.a=27;m.b=3;m.c=m.a+m.b;printf("%d%d%d\n",m.a,m.b,m.c);func(m);printf("%d%d%d\n",m.a,m.b,m.c);}10例用結(jié)構(gòu)體變量作參數(shù)m(func)pa:18b:5c:90a:27b:3c:30(main)#include"stdio.h"structdata{inta,b,c;};voidfunc(structdatap){p.a=18;p.b=5;p.c=p.a*p.b;printf("%d%d%d\n",p.a,p.b,p.c);}voidmain(){structdatam;m.a=27;m.b=3;m.c=m.a+m.b;printf("%d%d%d\n",m.a,m.b,m.c);func(m);printf("%d%d%d\n",m.a,m.b,m.c);}11例用結(jié)構(gòu)體變量作參數(shù)ma:27b:3c:30(main)#include"stdio.h"structdata{inta,b,c;};voidfunc(structdata*p){p->a=18;p->b=5;p->c=p->a*p->b;printf("%d%d%d\n",p->a,p->b,p->c);}voidmain(){structdatam;m.a=27;m.b=3;m.c=m.a+m.b;printf("%d%d%d\n",m.a,m.b,m.c);func(&m);printf("%d%d%d\n",m.a,m.b,m.c);}12例用結(jié)構(gòu)體指針變量作函數(shù)參數(shù)ma:27b:3c:30(main)#include"stdio.h"structdata{inta,b,c;};voidfunc(structdata*p){p->a=18;p->b=5;p->c=p->a*p->b;printf("%d%d%d\n",p->a,p->b,p->c);}voidmain(){structdatam;m.a=27;m.b=3;m.c=m.a+m.b;printf("%d%d%d\n",m.a,m.b,m.c);func(&m);printf("%d%d%d\n",m.a,m.b,m.c);}13(func)p****ma:27b:3c:30(main)例用結(jié)構(gòu)體指針變量作函數(shù)參數(shù)14#include"stdio.h"structdata{inta,b,c;};voidfunc(structdata*p){p->a=18;p->b=5;p->c=p->a*p->b;printf("%d%d%d\n",p->a,p->b,p->c);}voidmain(){structdatam;m.a=27;m.b=3;m.c=m.a+m.b;printf("%d%d%d\n",m.a,m.b,m.c);func(&m);printf("%d%d%d\n",m.a,m.b,m.c);}(func)p****ma:18b:5c:90(main)例用結(jié)構(gòu)體指針變量作函數(shù)參數(shù)15#include"stdio.h"structdata{inta,b,c;};voidfunc(structdata*p){p->a=18;p->b=5;p->c=p->a*p->b;printf("%d%d%d\n",p->a,p->b,p->c);}voidmain(){structdatam;m.a=27;m.b=3;m.c=m.a+m.b;printf("%d%d%d\n",m.a,m.b,m.c);func(&m);printf("%d%d%d\n",m.a,m.b,m.c);}例用結(jié)構(gòu)體指針變量作函數(shù)參數(shù)ma:18b:5c:90(main)16鏈表計算十個學(xué)生某門課的總分92856854889845756179a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]a#include<stdio.h>voidmain(){inti,a[10],sum=0;for(i=0;i<10;i++)scanf("%d",&a[i]);…}計算n個學(xué)生某門課的總分?17鏈表概念定義:將邏輯上相鄰的數(shù)據(jù)分配在物理上
相鄰的存儲單元中順序存儲要求:內(nèi)存連續(xù),并且表長必須事先定義2000211312a[1]a[2]a[3]a[4]a[5]3456a[0]200220042020082010200618鏈表概念定義:將邏輯上相鄰的數(shù)據(jù)分配在物理上
離散的存儲單元中,每個存儲單元中包含下一個相鄰數(shù)據(jù)的地址。鏈接存儲head200015200721200223201054NULL2000200720022010定義:將邏輯上相鄰的數(shù)據(jù)分配在物理上
相鄰的存儲單元中順序存儲要求:內(nèi)存連續(xù),并且表長必須事先定義19鏈表:把存放在不同地點(diǎn)的數(shù)據(jù)用地址鏈條串接而形成的數(shù)據(jù)鏈head200015201021200223200854NULL2000201020022008結(jié)點(diǎn):構(gòu)成鏈表的元素頭結(jié)點(diǎn)末結(jié)點(diǎn)頭指針數(shù)據(jù)域指針域鏈表概念20鏈表定義struct[結(jié)構(gòu)體名]{
類型標(biāo)識符成員名;類型標(biāo)識符成員名;
…………….
struct結(jié)構(gòu)體名*指針名;};21structodd{intx;
structodd*p;};head13579NULL例定義小于10的奇數(shù)的結(jié)點(diǎn)類型22structteacher{intnum;charname[10];intage;
structteacher*p;};head48張三021123李冰021234王飛0213NULL28李四0214例定義老師信息的結(jié)點(diǎn)類型23動態(tài)存儲分配函數(shù)malloc函數(shù)函數(shù)原型:void*malloc(unsignedsize)函數(shù)功能:在內(nèi)存的動態(tài)存儲區(qū)分配一塊長度為size字節(jié)的連續(xù)空間,并返回該區(qū)域的首地址。若函數(shù)調(diào)用失敗,就返回空指針NULL。24calloc函數(shù)函數(shù)原型:void*calloc(unsignedn,unsignedsize)函數(shù)功能:在內(nèi)存的動態(tài)存儲區(qū)分配長度為
size字節(jié)的連續(xù)空間n塊,并返回該區(qū)域的首地址。若函數(shù)調(diào)用失敗,就返回空指針NULL。動態(tài)存儲分配函數(shù)malloc函數(shù)函數(shù)原型:void*malloc(unsignedsize)25free函數(shù)函數(shù)原型:voidfree(void*p)函數(shù)功能:釋放當(dāng)前指針p所指向的內(nèi)存區(qū)域動態(tài)存儲分配函數(shù)calloc函數(shù)函數(shù)原型:void*calloc(unsignedn,unsignedsize)malloc函數(shù)函數(shù)原型:void*malloc(unsignedsize)26free函數(shù)函數(shù)原型:voidfree(void*p)函數(shù)功能:釋放當(dāng)前指針p所指向的內(nèi)存區(qū)域動態(tài)存儲分配函數(shù)calloc函數(shù)函數(shù)原型:void*calloc(unsignedn,unsignedsize)malloc函數(shù)函數(shù)原型:void*malloc(unsignedsize)27創(chuàng)建鏈表先進(jìn)后出:結(jié)點(diǎn)總是從表首插入,最后插入的點(diǎn)為頭結(jié)點(diǎn),即棧式:先進(jìn)后出式結(jié)構(gòu)28創(chuàng)建鏈表Structodd*head,*p;建空表:head=NULL;創(chuàng)建新結(jié)點(diǎn),并對結(jié)點(diǎn)的數(shù)據(jù)域賦值:
p=(結(jié)點(diǎn)類型*)malloc(長度);新結(jié)點(diǎn)進(jìn)棧:
p->next=head;head=p;重復(fù)2、3步headp4NULLheadp3head29創(chuàng)建鏈表先進(jìn)先出:結(jié)點(diǎn)總是從表尾插入,最后插入的點(diǎn)為尾結(jié)點(diǎn),即隊列式:先進(jìn)先出式結(jié)構(gòu)30創(chuàng)建鏈表創(chuàng)建新結(jié)點(diǎn),并對結(jié)點(diǎn)的數(shù)據(jù)域賦值:
head=(結(jié)點(diǎn)類型*)malloc(長度);開辟后續(xù)新結(jié)點(diǎn):
p=(結(jié)點(diǎn)類型*)malloc(長度);新結(jié)點(diǎn)插入表尾:last->next=p;4head對末結(jié)點(diǎn)指針last
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 面向5G mMTC的群組切換認(rèn)證協(xié)議研究
- 高溫后灌漿套筒連接靜力與疲勞性能試驗研究
- 2025年安徽揚(yáng)子職業(yè)技術(shù)學(xué)院高職單招高職單招英語2016-2024歷年頻考點(diǎn)試題含答案解析
- 一年級數(shù)學(xué)計算題專項練習(xí)集錦
- 2025至2030年中國水景雕塑數(shù)據(jù)監(jiān)測研究報告
- 二年級數(shù)學(xué)計算題專項練習(xí)1000題匯編集錦
- 二年級數(shù)學(xué)(上)計算題專項練習(xí)匯編
- 辦公室客戶關(guān)系管理戰(zhàn)略規(guī)劃考核試卷
- 2025年度船舶電氣系統(tǒng)成套配電箱訂制合同4篇
- 二零二五年度汽車售后服務(wù)居間合作協(xié)議樣本4篇
- 湖北省石首楚源“源網(wǎng)荷儲”一體化項目可研報告
- 醫(yī)療健康大數(shù)據(jù)平臺使用手冊
- 碳排放管理員 (碳排放核查員) 理論知識考核要素細(xì)目表四級
- 撂荒地整改協(xié)議書范本
- 診所負(fù)責(zé)人免責(zé)合同范本
- 2024患者十大安全目標(biāo)
- 會陰切開傷口裂開的護(hù)理查房
- 實驗報告·測定雞蛋殼中碳酸鈣的質(zhì)量分?jǐn)?shù)
- 部編版小學(xué)語文五年級下冊集體備課教材分析主講
- 電氣設(shè)備建筑安裝施工圖集
- 《工程結(jié)構(gòu)抗震設(shè)計》課件 第10章-地下建筑抗震設(shè)計
評論
0/150
提交評論