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

正文內(nèi)容

譚浩強(qiáng)c語(yǔ)言word版11-資料下載頁(yè)

2024-09-04 18:25本頁(yè)面

【導(dǎo)讀】在實(shí)際問題中,一組數(shù)據(jù)往往具有不同的數(shù)據(jù)類型。例如,在學(xué)生登記表中,姓名應(yīng)為。字符型;學(xué)號(hào)可為整型或字符型;年齡應(yīng)為整型;性別應(yīng)為字符型;成績(jī)可為整型或?qū)嵭?。然不能用一個(gè)數(shù)組來存放這一組數(shù)據(jù)。因?yàn)閿?shù)組中各元素的類型和長(zhǎng)度都必須一致,以便于?!被蚪小敖Y(jié)構(gòu)體”。它相當(dāng)于其它高級(jí)語(yǔ)言中的記錄。構(gòu)既是一種“構(gòu)造”而成的數(shù)據(jù)類型,那么在說明和使用之前必須先定義它,也就是構(gòu)造它。成員表列由若干個(gè)成員組成,每個(gè)成員都是該結(jié)構(gòu)的一個(gè)組成部分。成員名的命名應(yīng)符合標(biāo)識(shí)符的書寫規(guī)定。第一個(gè)成員為num,整型變。量;第二個(gè)成員為name,字符數(shù)組;第三個(gè)成員為sex,字符變量;第四個(gè)成員為score,應(yīng)注意在括號(hào)后的分號(hào)是不可少的。固定,類型不同的若干有序變量的集合。說明了兩個(gè)變量boy1和boy2為stu結(jié)構(gòu)類型。如果成員本身又是一個(gè)結(jié)構(gòu)則必須逐級(jí)找到最低級(jí)的成員才能使用。即第一個(gè)人出生的月份成員可以在程序中單獨(dú)使用,與普通變量完全相同。

  

【正文】 for(i=0。in。i++) { pb=(TYPE*) malloc(LEN)。 printf(input Number and Age\n)。 scanf(%d%d,amp。pbnum,amp。pbage)。 if(i==0) pf=head=pb。 else pfnext=pb。 pbnext=NULL。 pf=pb。 } return(head)。 } 在函數(shù)外首先用宏定義對(duì)三個(gè)符號(hào)常量作了定義。這里用 TYPE表示 struct stu,用 LEN表示 sizeof(struct stu)主要的目的是為了在以下程序內(nèi)減少書寫并使閱讀更加方便。結(jié)構(gòu)stu定義為外部類型,程序中的各個(gè)函數(shù)均可使用該定義。 creat函數(shù)用于建立一個(gè)有 n個(gè)結(jié)點(diǎn)的鏈表,它是一個(gè)指針函數(shù),它返回的指針指向 stu結(jié)構(gòu)。在 creat函數(shù)內(nèi)定義了三個(gè) stu結(jié)構(gòu)的指針變量。 head為頭指針, pf為指向兩相鄰結(jié)點(diǎn)的前一結(jié)點(diǎn)的指針變量。 pb為后一結(jié)點(diǎn)的指針變量。 枚舉類 型 在實(shí)際問題中,有些變量的取值被限定在一個(gè)有限的范圍內(nèi)。例如,一個(gè)星期內(nèi)只有七天,一年只有十二個(gè)月,一個(gè)班每周有六門課程等等。如果把這些量說明為整型,字符型或其它類型顯然是不妥當(dāng)?shù)?。為此,C語(yǔ)言提供了一種稱為“枚舉”的類型。在“枚舉”類型的定義中列舉出所有可能的取值,被說明為該“枚舉”類型的變量取值不能超過定義的范圍。應(yīng)該說明的是,枚舉類型是一種基本數(shù)據(jù)類型,而不是一種構(gòu)造類型,因?yàn)樗荒茉俜纸鉃槿魏位绢愋汀? 枚舉類型的定義和枚舉變量的說明 1. 枚舉的定義枚舉類型定義的一般形式為: enum 枚舉名 { 枚舉值表 }。 在枚舉值表中應(yīng)羅列出所有可用值。這些值也稱為枚舉元素。 例如: 該枚舉名為 weekday,枚舉值共有 7 個(gè),即一周中的七天。凡被說明為 weekday 類型變量的取值只能是七天中的某一天。 2. 枚舉變量的說明 如同結(jié)構(gòu)和聯(lián)合一樣,枚舉變量也可用不同的方式說明,即先定義后說明,同時(shí)定義說明或直接說明。 設(shè)有變量 a,b,c被說明為上述的 weekday,可采用下述任一種方式: enum weekday{ sun,mou,tue,wed,thu,fri,sat }。 enum weekday a,b,c。 或者為: enum weekday{ sun,mou,tue,wed,thu,fri,sat }a,b,c。 或者為: enum { sun,mou,tue,wed,thu,fri,sat }a,b,c。 枚舉類型變量的賦值和使用 枚舉類型在使用中有以下規(guī)定: 1. 枚舉值是常量,不是變量。不能在程序中用賦值語(yǔ)句再對(duì)它賦值。 例如對(duì)枚舉 weekday的元素再作以下賦值: sun=5。 mon=2。 sun=mon。 都是錯(cuò)誤的。 2. 枚舉元素本身由系統(tǒng)定義了一個(gè)表示序號(hào)的數(shù)值,從 0開始順序定義 為 0, 1, 2…。如在 weekday中, sun值為 0, mon值為 1, …,sat值為 6。 【例 】 main(){ enum weekday { sun,mon,tue,wed,thu,fri,sat } a,b,c。 a=sun。 b=mon。 c=tue。 printf(%d,%d,%d,a,b,c)。 } 說明: 只能把枚舉值賦予枚舉變量,不能把元素的數(shù)值直接 賦予枚舉變量。如: a=sum。 b=mon。 是正確的。而: a=0。 b=1。 是錯(cuò)誤的。如一定要把數(shù)值賦予枚舉變量,則必須用強(qiáng)制類型轉(zhuǎn)換。 如: a=(enum weekday)2。 其意義是將順序號(hào)為 2的枚舉元素賦予枚舉變量 a,相當(dāng)于: a=tue。 還應(yīng)該說明的是枚舉元素不是字符常量也不是字符串常量,使用時(shí)不要加單、雙引號(hào)。 【例 】 main(){ enum body { a,b,c,d } month[31],j。 int i。 j=a。 for(i=1。i=30。i++){ month[i]=j。 j++。 if (jd) j=a。 } for(i=1。i=30。i++){ switch(month[i]) { case a:printf( %2d %c\t,i,39。a39。)。 break。 case b:printf( %2d %c\t,i,39。b39。)。 break。 case c:printf( %2d %c\t,i,39。c39。)。 break。 case d:printf( %2d %c\t,i,39。d39。)。 break。 default:break。 } } printf(\n)。 } 類型定義符 typedef C語(yǔ)言不僅提供了豐富的數(shù)據(jù)類型,而且還允許由用戶自己定義類型說明符,也就是說允許由用戶為數(shù)據(jù)類型取“別名”。類 型定義符 typedef即可用來完成此功能。例如,有整型量 a,b,其說明如下: int a,b。 其中 int是整型變量的類型說明符。 int的完整寫法為 integer,為了增加程序的可讀性,可把整型說明符用 typedef定義為: typedef int INTEGER 這以后就可用 INTEGER來代替 int作整型變量的類型說明了。 例如: INTEGER a,b。 它等效于: int a,b。 用 typedef定義數(shù)組、指針、結(jié)構(gòu)等類型將帶來很大的方便,不僅使程序書寫簡(jiǎn)單而且使意義更為 明確,因而增強(qiáng)了可讀性。 例如: typedef char NAME[20]。 表示 NAME 是字符數(shù)組類型,數(shù)組長(zhǎng)度為 20。然后可用 NAME 說明變量,如: NAME a1,a2,s1,s2。 完全等效于: char a1[20],a2[20],s1[20],s2[20] 又如: typedef struct stu { char name[20]。 int age。 char sex。 } STU。 定義 STU表示 stu的結(jié)構(gòu)類型,然后可用 STU來說明結(jié)構(gòu)變量: STU body1,body2。 typedef定義的一般形式為: typedef 原類型名 新類型名 其中原類型名中含有定義部分,新類型名一般用大寫表示,以便于區(qū)別。 有時(shí)也可用宏定義來代替 typedef 的功能,但是宏定義是由預(yù)處理完成的,而 typedef則是在編譯時(shí)完成的,后者更為靈活方便。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1