




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、會(huì)計(jì)學(xué)1程序設(shè)計(jì)程序設(shè)計(jì)(chn x sh j)基礎(chǔ)基礎(chǔ)C語言語言第一頁,共56頁。第1頁/共56頁第二頁,共56頁。第2頁/共56頁第三頁,共56頁。枚舉枚舉(mi j)共用共用(n yn)體體結(jié)構(gòu)體與動(dòng)態(tài)鏈表結(jié)構(gòu)體與動(dòng)態(tài)鏈表結(jié)構(gòu)體對(duì)象在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)體對(duì)象在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)體結(jié)構(gòu)體第3頁/共56頁第四頁,共56頁。何刪除它的信息。n如何新加一個(gè)學(xué)生,并且添加完成后學(xué)生信息按數(shù)學(xué)成績有序第4頁/共56頁第五頁,共56頁。表8-1 某學(xué)校(xuxio)學(xué)生成績管理表學(xué)號(hào)學(xué)號(hào)姓名姓名性別性別入學(xué)時(shí)間入學(xué)時(shí)間計(jì)算機(jī)原理計(jì)算機(jī)原理英英 語語數(shù)數(shù) 學(xué)學(xué)音音 樂樂1令狐沖男1999908372822林
2、平之男1999789288783岳靈珊女1999897298664任瑩瑩女1999789587905 6 第5頁/共56頁第六頁,共56頁。第6頁/共56頁第七頁,共56頁。907889788392729572889887827866901234令狐沖林平之岳靈珊任瑩瑩男男女女1999199919991999第7頁/共56頁第八頁,共56頁。1令狐沖男1999908372822林平之男1999789288783岳靈珊女1999897298664任瑩瑩女199978958790采用一個(gè)整體描述學(xué)生相關(guān)(xinggun)信息第8頁/共56頁第九頁,共56頁。struct studentchar s
3、tudentID10; /*學(xué)生的序號(hào)學(xué)生的序號(hào)*/ char studentName10;/*學(xué)生的姓名學(xué)生的姓名*/ char studentSex4; /*學(xué)生的性別學(xué)生的性別*/ int timeOfEnter; /*學(xué)生的入學(xué)時(shí)間學(xué)生的入學(xué)時(shí)間*/ int scoreComputer; /*學(xué)生的計(jì)算機(jī)原理學(xué)生的計(jì)算機(jī)原理(yunl)成績成績*/ int scoreEnglish; /*學(xué)生的英語成績學(xué)生的英語成績*/ int scoreMath; /*學(xué)生的數(shù)學(xué)成績學(xué)生的數(shù)學(xué)成績*/ int scoreMusic; /*學(xué)生的音樂成績學(xué)生的音樂成績*/ ;第9頁/共56頁第十頁,共
4、56頁。普通變量普通變量結(jié)構(gòu)體變量結(jié)構(gòu)體變量數(shù)據(jù)類型固定(死板)自定義(靈活)定義方式Datatype varNamestruct student stu1;struct students1;struct s1,s2;訪問方式通過變量名訪問整體-部分存儲(chǔ)方式整體部分-整體,有內(nèi)存漏洞數(shù)組Datatype arrName5struct student stu50;指針Datatype *pointer普通結(jié)構(gòu)體指針結(jié)構(gòu)體內(nèi)的自引用指針(關(guān)系).-第10頁/共56頁第十一頁,共56頁。struct 結(jié)構(gòu)結(jié)構(gòu)(jigu)體名體名 類型關(guān)鍵字類型關(guān)鍵字 成員名成員名1; 類型關(guān)鍵字類型關(guān)鍵字 成員名成
5、員名2; . 類型關(guān)鍵字類型關(guān)鍵字 成員名成員名n;構(gòu)成結(jié)構(gòu)體的變量稱結(jié)構(gòu)體成員(成員(member)也稱域(域(filed)struct 結(jié)構(gòu)體名結(jié)構(gòu)體名定義了是一個(gè)模板,不分配內(nèi)存,用于生成結(jié)構(gòu)體變量第11頁/共56頁第十二頁,共56頁。struct studentchar studentID10; /*學(xué)生的序號(hào)學(xué)生的序號(hào)*/ char studentName10;/*學(xué)生的姓名學(xué)生的姓名*/ char studentSex4; /*學(xué)生的性別學(xué)生的性別*/ int timeOfEnter; /*學(xué)生的入學(xué)時(shí)間學(xué)生的入學(xué)時(shí)間(shjin)*/ int scoreComputer; /*學(xué)
6、生的計(jì)算機(jī)原理成績學(xué)生的計(jì)算機(jī)原理成績*/ int scoreEnglish; /*學(xué)生的英語成績學(xué)生的英語成績*/ int scoreMath; /*學(xué)生的數(shù)學(xué)成績學(xué)生的數(shù)學(xué)成績*/ int scoreMusic; /*學(xué)生的音樂成績學(xué)生的音樂成績*/ ;第12頁/共56頁第十三頁,共56頁。/出生日期的結(jié)構(gòu)出生日期的結(jié)構(gòu)(jigu)體體struct DATE int year; int month; int day;struct student char ID10; char name20; char sex; int age; float score; char addr30;結(jié)構(gòu)體定義
7、結(jié)構(gòu)體定義可以嵌套可以嵌套第13頁/共56頁第十四頁,共56頁。struct Complex double real; double imag;struct Node int data_id; struct Complex data; struct Node nextNode; struct Node *next;u普通成員變量(binling)的類型不能和本結(jié)構(gòu)體類型相同,即不能遞歸定義。u結(jié)構(gòu)體的成員變量(binling)可以是本結(jié)構(gòu)體類型的指針變量(binling)。這種結(jié)構(gòu)也叫自引用結(jié)構(gòu)。第14頁/共56頁第十五頁,共56頁。普通變量普通變量結(jié)構(gòu)體變量結(jié)構(gòu)體變量數(shù)據(jù)類型固定(死板)自定
8、義(靈活)定義方式Datatype varNamestruct student stu1;struct students1;struct s1,s2;訪問方式通過變量名訪問整體-部分存儲(chǔ)方式整體部分-整體,有內(nèi)存漏洞數(shù)組Datatype arrName5struct student stu50;指針Datatype *pointer普通結(jié)構(gòu)體指針結(jié)構(gòu)體內(nèi)的自引用指針(關(guān)系).-第15頁/共56頁第十六頁,共56頁。struct Complex double real; double imag;op1,op2;struct double real; double imag;op3;struct
9、Complex op1,op2; struct Complex double real; double imag;struct Complex類類型型(lixng)名太長了名太長了,能不能短一點(diǎn)?,能不能短一點(diǎn)?第16頁/共56頁第十七頁,共56頁。typedef struct Complex Complex; struct Complex double real; double imag;typedef struct student Complex;Complex就是(jish)struct Complex的同義詞Complex stu1,stu2; Complex stu1,stu2; 第
10、17頁/共56頁第十八頁,共56頁。第18頁/共56頁第十九頁,共56頁。c1.imag = 2.1; c1.real = 3.4;c2 - real = 4.5; c2 - imag = 5.6; (*c2).real = 6.7; (*c2).imag = 5.9; struct Complex c1 ;struct Complex *c2;c2 = (struct Complex *)malloc(sizeof(struct Complex );第19頁/共56頁第二十頁,共56頁。struct Complex c1 = 1.4,2.5;struct Complex c1 ;c1.rea
11、l = 1.4;c1.imag = 2.5;struct Complex c1, c2 ;c1.real = 1.4;c1.imag = 2.5;c2 = c1;第20頁/共56頁第二十一頁,共56頁。以相互賦值。n如何從鍵盤上接收數(shù)據(jù)到結(jié)構(gòu)(jigu)體對(duì)象的成員中。n如何訪問結(jié)構(gòu)(jigu)體對(duì)象的數(shù)據(jù)。n如何通過指針訪問結(jié)構(gòu)(jigu)體數(shù)組中的各個(gè)元素,及如何通過指針訪問結(jié)構(gòu)(jigu)體對(duì)象中的各個(gè)成員。第21頁/共56頁第二十二頁,共56頁。第22頁/共56頁第二十三頁,共56頁。n. -(chngyun)n可以取地址&n不可能直接參與算術(shù)和比較運(yùn)算n面向?qū)ο蠛蛿?shù)據(jù)庫是st
12、ruct的思想的發(fā)展第23頁/共56頁第二十四頁,共56頁。第24頁/共56頁第二十五頁,共56頁。枚舉枚舉(mi j)共同體共同體結(jié)構(gòu)結(jié)構(gòu)(jigu)體與動(dòng)態(tài)鏈表體與動(dòng)態(tài)鏈表結(jié)構(gòu)體對(duì)象在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)體對(duì)象在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)體結(jié)構(gòu)體第25頁/共56頁第二十六頁,共56頁。struct DemoS1char x;char y;int z;struct DemoS1char x;int z;char y;DemoS1對(duì)象(duxing)的大小為:8DemoS2對(duì)象的大小為:12第26頁/共56頁第二十七頁,共56頁。第27頁/共56頁第二十八頁,共56頁。第28頁/共56頁第二十九頁,共56頁
13、。枚舉枚舉(mi j)共同體共同體結(jié)構(gòu)結(jié)構(gòu)(jigu)體與動(dòng)態(tài)鏈表體與動(dòng)態(tài)鏈表結(jié)構(gòu)在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)體結(jié)構(gòu)體第29頁/共56頁第三十頁,共56頁。n當(dāng)我們需要添加一個(gè)學(xué)生時(shí),程序會(huì)自動(dòng)添加;n當(dāng)我們需要?jiǎng)h除一個(gè)學(xué)生時(shí),程序會(huì)自動(dòng)放棄該學(xué)生原來占有的內(nèi)存。動(dòng)態(tài)(dngti)數(shù)據(jù)結(jié)構(gòu)-鏈表第30頁/共56頁第三十一頁,共56頁。Data1nextData2nextData3nextDatan不帶頭不帶頭(di tu)結(jié)點(diǎn)的動(dòng)態(tài)鏈表結(jié)點(diǎn)的動(dòng)態(tài)鏈表struct Link int data; struct Link *next;數(shù)據(jù)域:存儲(chǔ)數(shù)據(jù)元素信息數(shù)據(jù)域:存儲(chǔ)數(shù)據(jù)元素信息指針域:存
14、儲(chǔ)直接后繼的節(jié)點(diǎn)地址指針域:存儲(chǔ)直接后繼的節(jié)點(diǎn)地址head第31頁/共56頁第三十二頁,共56頁。typedef struct BookNode char ISBNISBN_LENGTH; char bookBOOK_LENGTH; char authorNAME_LENGTH; float price; struct BookNode * next;BookNode;數(shù)據(jù)(shj)域指針域節(jié)點(diǎn)信息第32頁/共56頁第三十三頁,共56頁。第33頁/共56頁第三十四頁,共56頁。第34頁/共56頁第三十五頁,共56頁。Datai-1nextDatai+1next.pq第35頁/共56頁第三十六頁
15、,共56頁。n如何表示從鏈表里刪除一個(gè)節(jié)點(diǎn)?BookNode * deleteNode(BookNode *head,char *bookISBN)第36頁/共56頁第三十七頁,共56頁。Datai-1nextDatainext.pq第37頁/共56頁第三十八頁,共56頁。nheadn當(dāng)i=1時(shí)是如何處理的?n如何將新插入的節(jié)點(diǎn)加入到鏈表里?int insertNode(BookNode *head,BookNode newBook,int i)第38頁/共56頁第三十九頁,共56頁。n鏈表是數(shù)據(jù)結(jié)構(gòu)的一種基本數(shù)據(jù)結(jié)構(gòu),鏈表掌握的程度影響數(shù)據(jù)結(jié)構(gòu)課程的掌握第39頁/共56頁第四十頁,共56頁。
16、枚舉枚舉(mi j)共同體共同體結(jié)構(gòu)結(jié)構(gòu)(jigu)體與動(dòng)態(tài)鏈表體與動(dòng)態(tài)鏈表結(jié)構(gòu)在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)體結(jié)構(gòu)體第40頁/共56頁第四十一頁,共56頁。n在定義共同體類型的時(shí)候聲明該共同體的變量(binling)n像聲明 int 型變量(binling)一樣聲明共同體變量(binling)問題(wnt):會(huì)不會(huì)幾個(gè)變量占用同一塊內(nèi)存呢?第41頁/共56頁第四十二頁,共56頁。結(jié)構(gòu)體 成員各自占有內(nèi)存空間 大小為各成員占用空間的和+填充 定義時(shí)可以初始化 可以做函數(shù)參數(shù)和返回值 可定義結(jié)構(gòu)體指針和數(shù)組共同體 成員共同占有內(nèi)存空間 大小為成員變量中占用空間最大的 定義時(shí)不可初始化 不可
17、做函數(shù)參數(shù)和返回值 可定義結(jié)構(gòu)體指針和數(shù)組第42頁/共56頁第四十三頁,共56頁。第43頁/共56頁第四十四頁,共56頁。第44頁/共56頁第四十五頁,共56頁。typedef struct Members char nameNAME_LENGTH; char telTEL_LENGTH; char sexy; enum Status status; union char classNameCLASS_NAME_LENGTH; char titleTITLE_LENGTH; ;Members;#define CLASS_NAME_LENGTH 15 #define NAME_LENGTH 10
18、#define TITLE_LENGTH 10 #define TEL_LENGTH 12enum Statusstudent, teacher;#define MEMBERS_COUNT 100第45頁/共56頁第四十六頁,共56頁。第46頁/共56頁第四十七頁,共56頁。枚舉枚舉(mi j)共同體共同體結(jié)構(gòu)結(jié)構(gòu)(jigu)體與動(dòng)態(tài)鏈表體與動(dòng)態(tài)鏈表結(jié)構(gòu)在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)在內(nèi)存中的存儲(chǔ)結(jié)構(gòu)體結(jié)構(gòu)體第47頁/共56頁第四十八頁,共56頁。enum 枚舉枚舉(mi j)類型名類型名有限集合元素列有限集合元素列表表;enum weekday sun,mon,tues,wednes, thurs,frisatur; enum weekday sun = 1,mon,tues,wednes, thurs,frisatur; 第48頁/共56頁第四十九頁,共56頁。 成員表列;成員表列;變量表列;變量表列;enum color red, white;enum color myColor;enum color red, whitemyColor;enumred, whitemyColor;第49頁/共56頁第五
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電工電子技術(shù) 課件全套 潘學(xué)海 1 手電筒電路的連接與測(cè)試 -16.流水燈電路的整體安裝與調(diào)試
- 計(jì)算機(jī)安全技術(shù)-4操作系統(tǒng)安全
- SCI論文寫作與投稿 第2版-課件匯 0-課程介紹 -7 SCI論文摘要寫作
- 婦產(chǎn)科圍手術(shù)期護(hù)理講課
- 家具店長培訓(xùn)
- 2025屆上海崇明區(qū)高考二模高考數(shù)學(xué)試卷試題(含答案詳解)
- 廣東省韶關(guān)市樂昌市2025屆高三下學(xué)期2月模擬演練測(cè)驗(yàn)語文試題(含答案)
- 內(nèi)科病房住院制度管理
- 基層管理者品質(zhì)培訓(xùn)
- 護(hù)理人才培養(yǎng)工程申請(qǐng)匯報(bào)
- 虛擬現(xiàn)實(shí)技術(shù)在醫(yī)療領(lǐng)域的應(yīng)用
- 鐵路客運(yùn)段QC小組運(yùn)用PDCA循環(huán)減少旅客列車乘降問題發(fā)生次數(shù)現(xiàn)場(chǎng)型成果匯報(bào)
- 會(huì)計(jì)信息系統(tǒng)(本) · 網(wǎng)絡(luò)考試備考資料
- 紅外測(cè)溫培訓(xùn)課件
- 四百字作文格子稿紙(可打印編輯)
- 私募股權(quán)投資PE
- 模型的制作工具與材料
- 稀土功能材料及應(yīng)用
- 算24點(diǎn)教學(xué)講解課件
- 人教版五年級(jí)上冊(cè)科學(xué)第五單元《太陽能熱水器》單元試題(含答案)
- 【骨科-關(guān)節(jié)資料】髕股關(guān)節(jié)置換
評(píng)論
0/150
提交評(píng)論