freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[工學(xué)]c語言結(jié)構(gòu)體與共用體復(fù)習(xí)課件(完整版)

2024-11-23 23:36上一頁面

下一頁面
  

【正文】 如變量 stu1存儲(chǔ)字節(jié)數(shù) (sizeof(stu1)): TC下: 4+20+1+6+4+15=50 VC下: 4+20+1+12+4+15=56 C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 11 ? 結(jié)構(gòu)體變量的存儲(chǔ)結(jié)構(gòu):各成員按定義順序連續(xù) 存儲(chǔ); 如 VC下: struct date { int m, d, y。 num name sex birthday score tel 4 20 1 12 4 15 共 56字節(jié) 成員 成員字節(jié)數(shù) stu1 m d y C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 12 結(jié)構(gòu)體變量的引用 數(shù)組引用的單位是元素,而不能引用整個(gè)數(shù)組。, amp。 [i]!=0。 3) 結(jié)構(gòu)體變量間的賦值 如: stu2=stu1。stu1. num name成員指針: stu1. name name第 i個(gè)元素指針: amp。 void main( ) /*↓ 按成員順序給出初值 */ { struct student stu1={109031,Li Feng,}, stu2={109032,Wang Li,}。 i++) /*處理 stu1 */ if([i]=39。 [i]!=0。 printf(\n\t%ld,%s,%, , , )。 說明: 1) 數(shù)組 stu各元素類型相同,都為 struct student型; 2) 結(jié)構(gòu)體數(shù)組 stu的存儲(chǔ)字節(jié)數(shù)為: 元素類型長 元素個(gè)數(shù) =(4+20+4) 3=84字節(jié) C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 22 3) 結(jié)構(gòu)體數(shù)組 stu的存儲(chǔ)結(jié)構(gòu) stu[0] stu[1] stu[2] 99001 Li Feng\0 99002 Wang Yi\0 99003 Zhao Hui\0 4 20 28 4 84 byte stu[1]. score stu[2]. num C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 23 2. 結(jié)構(gòu)體數(shù)組的引用 結(jié)構(gòu)體數(shù)組在引用時(shí),不僅要確定引用哪一個(gè) 元素,還要確定引用該元素的哪一個(gè)成員。 } stu[3]={ {99031, Li Lin, }, {99032, Wang Fang, }, {99033, Zhao Ping, } }。 i3。 int count。 i=N。 i3。 } stu1, *p。 printf(score:%\n, (*p).score)。 且保持不變時(shí), (*p).num表示訪問 p所指向變量的 num成員; 其中: *號(hào)為 2級(jí),括號(hào)可保證先使 p與 *結(jié)合。 }。 } stu[0] stu[1] stu[2] 99001 Li Feng 99002 Wang Yi 99003 Zhao Hui stu p C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 32 sqrt(25)。 gets(stu[i].name)。 i3。 要求: 1) 分別用結(jié)構(gòu)體變量 stu stu2存儲(chǔ)數(shù)據(jù); 2) 由函數(shù) aver實(shí)現(xiàn)個(gè)人平均分計(jì)算; 3) 由函數(shù) pfun實(shí)現(xiàn)輸出; 函數(shù)間信息傳遞: 主 函 數(shù) aver pfun 結(jié)構(gòu)體變量的指針 結(jié)構(gòu)體變量各成員值 無返回值 無返回值 C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 36 源程序: struct student { long num。 } num name score[0] score[1] score[2] aver 99001 Li Hong 0 12byte C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 37 void main( ) { struct student /*↓ 定義結(jié)構(gòu)體變量并賦初值 */ stu1={99001,Li Hong,89,76,90,0}, stu2={99002,Wang Li,76,0}。 pfun(stu1)。 return。 } C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 39 【 例 】 設(shè)計(jì)一軟件計(jì)時(shí)器 , 用字符顯示時(shí):分:秒 struct time_stru /*該類型全局有效 */ { int h, m, s。time)。 tm=0。 return。 }。sysd)。 int gd=VGA, gm=VGAHI, size。sysdate。systime。 delay(200)。 structer student *next。 功能: 釋放 p所指向的內(nèi)存塊。 scanf(%ld,%f, amp。 p2next=p1。 p2=p1。 int i, len。 /*↓ 輸入數(shù)據(jù) */ scanf(%ld,%f, amp。 i=N。 輸出鏈表函數(shù) : void plink(struct student *head)。 float averf(struct student *head)。 aver=averf(head)。 printf(Enter num,score:)。 //尾節(jié)點(diǎn) } return(head)。 } return。 } return(sum/c)。 p1=p1next。 /*返回頭指針 */ } C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 66 void plink(struct student *head) /*更具通用性 */ { struct student *p。 2101 1370 head 1048 2304 90 1012 2414 78 1048 1370 1012 1012 2680 2680 2918 85 NULL C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 69 【 例 】 按上例在鏈表中按學(xué)號(hào)順序插入節(jié)點(diǎn) 插入函數(shù): struct student *insert(struct student *head) { struct student *p0, *p1, *p2。p0score)。 } while(p1!=NULL amp。 int len。 if(n==0) break。 /*以 0表示數(shù)據(jù)結(jié)束 */ p1=(struct student *)malloc(len)。 /*返回鏈表頭指針 */ } /*creat*/ C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 73 補(bǔ)充作業(yè) /實(shí)驗(yàn): : 用隨機(jī)數(shù)建立 10節(jié)點(diǎn)有序鏈表。 : 10只猴子圍成一圈選猴王,方法是 3報(bào)數(shù),數(shù)到第 3者退出,用循環(huán)鏈表模擬。 p1score=s。 ┇ } return(head)。 float s。 np1num)。 /*產(chǎn)生學(xué)號(hào)副本 n*/ p1=head。 int len。 while(p!=NULL) { printf(num=%ld, score=%\n, pnum, pscore)。amp。 若:要?jiǎng)h除節(jié)點(diǎn)為首節(jié)點(diǎn),則將首節(jié)點(diǎn)“鏈節(jié)”成 員賦給鏈頭指針變量。 float sum=0。 int i。p1num, amp。 } ┇ C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 61 struct student *create( ) { struct student *head, *p1, *p2。 float aver。 函數(shù)間信息傳遞: 主 函 數(shù) create plink averf 無參 頭指針 頭指針 無返回值 平均值 頭指針 C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 59 include include define N 3 struct student /*全局結(jié)構(gòu)類型 */ { long num。 i=N。p1score)。 /*TC激活浮點(diǎn)運(yùn)算 */ head=NULL。 /*末尾節(jié)點(diǎn) next賦值 0*/ C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 55 【 例 】 建立并輸出有 3名學(xué)生數(shù)據(jù)的單鏈表。 /*使 p2也指向新節(jié)點(diǎn) */ 1370 1370 p2 p1 C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 54 3) 重復(fù)第 2步,建立并鏈接多個(gè)節(jié)點(diǎn)直至所需長 度,將末尾節(jié)點(diǎn)的 next成員賦值 0。p1score)。 C 程序設(shè)計(jì) 第十一章 結(jié)構(gòu)體與共用體 NWPU—CC—ZhangYanChun 49 5) 采用鏈表的意義 ?與定長數(shù)據(jù)結(jié)構(gòu)數(shù)組相比,鏈表能更好地利用內(nèi)存,按需分配和釋放存儲(chǔ)空間。 /*鏈節(jié)成員 */ 其中: ?成員 num、 score用于存放一個(gè)節(jié)點(diǎn)的具體數(shù)據(jù); ?成員 next是指針類型,用于存放下一節(jié)點(diǎn)指針, 最后一個(gè)節(jié)點(diǎn)的 next 成員存放空指針 NULL; ?成員 next是指向與自身同一類型的結(jié)構(gòu),這種結(jié) 構(gòu)稱為自引用結(jié)構(gòu)。 /*關(guān)閉聲音 */ t=tpti_sec。 /*取系統(tǒng)時(shí)間 */ t=tpti_sec。 /*取系統(tǒng)日期 */ printf(\t\tdate:%d.%d.%d, /*輸出日期各成員 */ dpda_year, dpda_mon, dpda_day)。 initgraph(amp。syst)。 char da_day。 系統(tǒng)日期函數(shù)原形: void getdate(struct date *datep)。 for(i=1。time)。 /*三個(gè)成員用一個(gè)標(biāo)識(shí)符 */ void main( ) { void updata(struct time_str
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1