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

正文內(nèi)容

c語言程序設(shè)計(四)ppt-資料下載頁

2025-01-19 08:23本頁面
  

【正文】 n)。break。 case sat: case sun:printf(Rest day\n)。break。 default :printf(Input error!\n)。 } } 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 用戶定義類型 “替代”類型名 typedef 類型名 標(biāo)識符; 注意: “ 類型名 ” 必須是系統(tǒng)提供的數(shù)據(jù)類型或用戶已定義的數(shù)據(jù)類型 。 作用:給已有類型起個別名標(biāo)識符 , 例如: typedef int INTEGER; “構(gòu)造”類型名 typedef 類型名 標(biāo)識符及“構(gòu)造”; 注意:“類型名”必須是系統(tǒng)提供的數(shù)據(jù)類型或用戶已定義的數(shù)據(jù)類型。 作用:自己定義新“構(gòu)造”類型名標(biāo)識符。 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 舉 例 (1) 定義字符型指針類型名 CHARP typedef char * CHARP; 以后可用它來定義指針變量 , 例如: CHARP p, q; 即等價于: char * p, *q; (2) 定義具有 3個元素的整型數(shù)組名 NUM typedef int NUM[3]; 以后可用它來定義有三個元素的 int型數(shù)組 , 如: NUM a, b, c; 就相當(dāng)于 int a[3], b[3], c[3]; 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 (3) 定義某結(jié)構(gòu)體類型名 STUDENT typedef struct {int num; char name[10]; char sex; float score[3]; }STUDENT; 以后可用它來定義該種結(jié)構(gòu)體類型變量、指針變量等,例如: STUDENT stu1, stu2, *st; 就定義了該結(jié)構(gòu)體類型的變量和指針變量。 舉 例 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 (1) 先按定義變量或數(shù)組的方法寫出定義 。 如 : char a[10]。 (2) 將定義的名字換成新類型名 。 如 : char NAME[10]。 (3) 在前面加上 typedef。 如 : typedef char NAME[10]。 (4) 然后可以用新類型名定義變量 。 如 :NAME c,d; c、 d即是有 10個元素的字符數(shù)組 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 程序舉例 【 例 923】 有 5個學(xué)生 , 每個學(xué)生的信息有學(xué)號 、 姓名和三門課的成績 , 求每個學(xué)生的平均成績并按平均成績從大到小對所有學(xué)生的信息進(jìn)行排序然后輸出 。 分析:在定義結(jié)構(gòu)體類型時可以設(shè)計一個存放平均成績的成員 , 排序交換位置時應(yīng)將結(jié)構(gòu)體數(shù)組元素整體交換 , 編程如下: 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 【 例 923】 main() {struct student {long num。 char name[10]。 int score[3]。 float evr。 }t, st[5] ={{1001,wang,67,75,88},{1002,li,83,92,95}, {1003,zhao,56,82,79}, {1004,han,78,87,79}, {1005,qian,69,79,81}}。 int i,j。 for(i=0。i5。i++) {st[i].evr=0。 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 for(j=0。j3。j++) st[i].evr+=st[i].score[j]。 st[i].evr/=3。 } for(i=0。i4。i++) for(j=i+1。j5。j++) if(st[i].evrst[j].evr){t=st[i]。st[i]=st[j]。st[j]=t。} printf(No. Name scor1 scor2 score3 evr\n)。 for(i=0。i5。i++) {printf(%ld%8s,st[i].num,st[i].name)。 for(j=0。j3。j++)printf(%8d,st[i].score[j])。 printf(%\n,st[i].evr)。 } } 【 例 923】 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 【 例 924】 有 5個學(xué)生 , 每個學(xué)生的信息有學(xué)號 、 姓名和三門課的成績 , 輸出三門課的總平均分以及所有成績中最高成績所對應(yīng)學(xué)生的全部信息 。 【 分析 】 三門課的總平均分可以定義一個數(shù)組 , 找出最高成績時應(yīng)記錄是哪個學(xué)生才能輸出該學(xué)生的全部信息 , 編程如下: 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 main() {struct student {long num。 char name[10]。 int score[3]。 }st[5] ={{1001,wang,67,75,88},{1002,li,83,92,95}, {1003,zhao,56,82,79},{1004,han,78,87,79}, {1005,qian,69,79,81}}。 int i,j,max,maxi。 float aver[3]={0}。 for(j=0。j3。j++) {for(i=0。i5。i++) aver[j]+=st[i].score[j]。 aver[j]/=5。 } 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 max=st[0].score[0]。 for(i=0。i5。i++) for(j=0。j3。j++) if(st[i].score[j]max){max=st[i].score[j]。maxi=i。} printf(The averages of courses are:\n)。 for(i=0。i3。i++) printf(%,aver[i])。 printf(\n)。 printf(The informations of the student with maximal score:\n)。 printf(No. Name scor1 scor2 score3\n)。 printf(%ld%8s,st[maxi].num,st[maxi].name)。 for(j=0。j3。j++)printf(%8d,st[maxi].score[j])。 printf(\n)。 } 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 【 例 925】 已知單向鏈表的結(jié)點類型為 struct node,頭指針為 head,編寫一個釋放鏈表的函數(shù)。 【 分析 】 鏈表由頭指針代表,要釋放鏈表可以定義一個工作指針得到頭指針,然后頭指針和工作指針均不斷下移,同時釋放結(jié)點,編寫函數(shù)如下: void fun(struct node *head) {struct node *p。 while(head!=NULL) {p=head。 head=headnext。 free(p)。 } } 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 【 例 926】 口袋中有紅、黃、綠、藍(lán)顏色的球各一些,現(xiàn)從口袋中每次摸出 3個球,要求顏色均不同,考慮摸出的順序,輸出所有可能的取法的排列及取法的數(shù)量。 【 分析 】 可用枚舉類型數(shù)據(jù)來模擬摸球過程程序編寫如下: 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 main() {enum color{red,yellow,green,blue}c,x,y,z。 int i,n=0。 for(x=red。x=blue。x++) for(y=red。y=blue。y++) if(x!=y) /* 避開 x=y的情況 , 提高了效率 */ for(z=red。z=blue。z++) if(z!=x amp。amp。 z!=y) /* x、 y、 z均不相同 */ {n++。printf(%5d,n)。 /* 打印序號 */ for(i=1。i=3。i++) /* 輪流對 x、 y、 z打印顏色 */ {switch(i) {case 1:c=x。break。 case 2:c=y。break。 case 3:c=z。 } 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 switch(c) {case red :printf(“%8s”,“red”)。break。 case yellow:printf(“%8s”,“yellow”)。break。 case green :printf(“%8s”,“green”)。break。 case blue :printf(“%8s”,“blue”)。 } } if (n%2==0) printf(“\n”)。 } printf(“n=%d\n”,n)。 } 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 本章小結(jié) 本章學(xué)習(xí)了 C語言的用戶定義類型 , 包括結(jié)構(gòu)體 、共用體和枚舉類型三種 , 其中結(jié)構(gòu)體和共用體是構(gòu)造類型 , 枚舉類型是基本數(shù)據(jù)類型 , 重點學(xué)習(xí)了結(jié)構(gòu)體類型 。 本章還學(xué)習(xí)了用戶定義類型名的方法 。 現(xiàn)小結(jié)如下 。 1. 結(jié)構(gòu)體與共用體有很多相似的地方: (1)類型定義的形式相同 。 通過定義類型說明了結(jié)構(gòu)體或共用體所包含的不同數(shù)據(jù)類型的的成員項 , 同時確定了結(jié)構(gòu)體或共用體類型的名稱 。 (2)變量定義的方法相同。都有三種方法定義變量,第一種方法是先定義類型,再定義變量;第二種方法是在定義類型的同時定義變量;第三種方法是利用結(jié)構(gòu)直接定義變量。數(shù)組、指針等可與變量同時定義。 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 本章小結(jié) (續(xù) ) (3)結(jié)構(gòu)體與共用體的引用方式相同 。 除了同類型的變量之間可賦值外 , 均不能對變量整體賦常數(shù)值 、 輸入 、 輸出和運算等 , 都只能通過引用其成員項進(jìn)行 ,嵌套結(jié)構(gòu)只能引用其基本成員 , 如: 變量 .成員 或 變量 .成員 .成員 … 基本成員 。 結(jié)構(gòu)體或共用體的 (基本 )成員是基本數(shù)據(jù)類型的 , 可作為簡單變量使用 , 是數(shù)組的可當(dāng)作一般數(shù)組使用 。 (4)無論結(jié)構(gòu)體還是共用體其應(yīng)用的步驟是基本相同的 , 都要經(jīng)過三個過程: ① 定義類型 。 ② 用定義的類型定義變量 , 定義后編譯系統(tǒng)會為其開辟內(nèi)存單元存放具體的數(shù)據(jù) 。 ③ 引用結(jié)構(gòu)體或共用體的成員 。 安 慶 師 范 學(xué) 院 計 算 機(jī) 與 信 息 學(xué) 院 2.了解結(jié)構(gòu)體與共用體的區(qū)別非常重要,他們的主要區(qū)別有: (1)在結(jié)構(gòu)體變量中,各成員均擁有自己的內(nèi)存空間,它們是同時存在的,
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1