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

正文內(nèi)容

譚浩強(qiáng)c語言word版11-閱讀頁(yè)

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

【正文】 外部結(jié)構(gòu)數(shù)組,因此在整個(gè)源程序中有效。然后以 ps 作實(shí)參調(diào)用函數(shù) ave。 由于本程序全部采用指針變量作運(yùn)算和處理,故速度更快,程序效率更高。C語言中不允許動(dòng)態(tài)數(shù)組類型。 scanf(%d,amp。 int a[n]。但是在實(shí)際的編程中,往往會(huì)發(fā)生這種情況,即所需的內(nèi)存空間取決于實(shí)際輸入的數(shù)據(jù),而無法預(yù)先確定。為了解決上述問題,C語言提供了一些內(nèi)存管理函數(shù),這些內(nèi)存管理函數(shù)可以按需要?jiǎng)討B(tài)地分配內(nèi)存空間,也可把不再使用的空間回收待用,為有效地利用內(nèi)存資源提供了手 段。函數(shù)的返回值為該區(qū)域的首地址。 (類型說明符 *)表示把返回值強(qiáng)制轉(zhuǎn)換為該類型指針。 例如: pc=(char *)malloc(100)。 2. 分配內(nèi)存空間函數(shù) calloc calloc 也用于分配內(nèi)存空間。函數(shù)的返回值為該區(qū)域的首地址。 calloc函數(shù)與 malloc 函數(shù)的區(qū)別僅在于一次可以分配 n塊區(qū)域。 其中的 sizeof(struct stu)是求 stu的結(jié)構(gòu)長(zhǎng)度。 2. 釋放內(nèi)存空間函數(shù) free 調(diào)用形式: free(void*ptr)。被釋放區(qū)應(yīng)是由 malloc或 calloc函數(shù)所分配的區(qū)域。 main() { struct stu { int num。 char sex。 } *ps。 psnum=102。 pssex=39。 psscore=。 printf(Sex=%c\nScore=%f\n,pssex,psscore)。 } 本例中,定義了結(jié)構(gòu) stu,定義了 stu類型指針變量 ps。再以 ps為指向結(jié)構(gòu)的指針變量對(duì)各成員賦值,并用printf輸出各成員值。整個(gè)程序包含了申請(qǐng)內(nèi)存空間、使用內(nèi)存空間、釋放內(nèi)存空間三個(gè)步驟,實(shí)現(xiàn)存 儲(chǔ)空間的動(dòng)態(tài)分配。每一次分配一塊空間可用來存放一個(gè)學(xué)生的數(shù)據(jù),我們可稱之為一個(gè)結(jié)點(diǎn)。當(dāng)然用結(jié)構(gòu)數(shù)組也可以完成上述工作,但如果預(yù)先不能準(zhǔn)確把握學(xué)生人數(shù),也就無法確定數(shù)組大小。 用動(dòng)態(tài)存儲(chǔ)的方法可以很好地解決這些問題。從而節(jié)約了寶貴的內(nèi)存資源。而使用動(dòng)態(tài)分配時(shí),每個(gè)結(jié)點(diǎn)之間可以是不連續(xù)的 (結(jié)點(diǎn)內(nèi)是連續(xù)的 )。 即在結(jié)點(diǎn)結(jié)構(gòu)中定義一個(gè)成員項(xiàng)用來存放下一結(jié)點(diǎn)的首地址,這個(gè)用于存放地址的成員,常把它稱為指針域。最后一個(gè)結(jié)點(diǎn)因無后續(xù)結(jié)點(diǎn)連接,其指針域可賦為 0。 下圖為最 一簡(jiǎn)單鏈表的示意圖。以下的每個(gè)結(jié)點(diǎn)都分為兩個(gè)域,一個(gè)是數(shù)據(jù)域,存放各種實(shí)際的數(shù)據(jù),如學(xué)號(hào) num,姓名 name,性別 sex和成績(jī) score等。鏈表中的每一個(gè)結(jié)點(diǎn)都是同一種結(jié)構(gòu)類型。 int score。 } 前兩個(gè)成員項(xiàng)組成數(shù)據(jù)域,后一個(gè)成員項(xiàng) next構(gòu)成指針域,它是一個(gè)指向 stu類型結(jié)構(gòu)的指針變量。 【例 】建立一個(gè)三個(gè)結(jié)點(diǎn)的鏈表,存放學(xué)生數(shù)據(jù)。可編寫一個(gè)建立鏈表的函數(shù) creat。 int age。 }。 int i。in。 printf(input Number and Age\n)。pbnum,amp。 if(i==0) pf=head=pb。 pbnext=NULL。 } return(head)。這里用 TYPE表示 struct stu,用 LEN表示 sizeof(struct stu)主要的目的是為了在以下程序內(nèi)減少書寫并使閱讀更加方便。 creat函數(shù)用于建立一個(gè)有 n個(gè)結(jié)點(diǎn)的鏈表,它是一個(gè)指針函數(shù),它返回的指針指向 stu結(jié)構(gòu)。 head為頭指針, pf為指向兩相鄰結(jié)點(diǎn)的前一結(jié)點(diǎn)的指針變量。 枚舉類 型 在實(shí)際問題中,有些變量的取值被限定在一個(gè)有限的范圍內(nèi)。如果把這些量說明為整型,字符型或其它類型顯然是不妥當(dāng)?shù)?。在“枚舉”類型的定義中列舉出所有可能的取值,被說明為該“枚舉”類型的變量取值不能超過定義的范圍。 枚舉類型的定義和枚舉變量的說明 1. 枚舉的定義枚舉類型定義的一般形式為: enum 枚舉名 { 枚舉值表 }。這些值也稱為枚舉元素。凡被說明為 weekday 類型變量的取值只能是七天中的某一天。 設(shè)有變量 a,b,c被說明為上述的 weekday,可采用下述任一種方式: enum weekday{ sun,mou,tue,wed,thu,fri,sat }。 或者為: enum weekday{ sun,mou,tue,wed,thu,fri,sat }a,b,c。 枚舉類型變量的賦值和使用 枚舉類型在使用中有以下規(guī)定: 1. 枚舉值是常量,不是變量。 例如對(duì)枚舉 weekday的元素再作以下賦值: sun=5。 sun=mon。 2. 枚舉元素本身由系統(tǒng)定義了一個(gè)表示序號(hào)的數(shù)值,從 0開始順序定義 為 0, 1, 2…。 【例 】 main(){ enum weekday { sun,mon,tue,wed,thu,fri,sat } a,b,c。 b=mon。 printf(%d,%d,%d,a,b,c)。如: a=sum。 是正確的。 b=1。如一定要把數(shù)值賦予枚舉變量,則必須用強(qiáng)制類型轉(zhuǎn)換。 其意義是將順序號(hào)為 2的枚舉元素賦予枚舉變量 a,相當(dāng)于: a=tue。 【例 】 main(){ enum body { a,b,c,d } month[31],j。 j=a。i=30。 j++。 } for(i=1。i++){ switch(month[i]) { case a:printf( %2d %c\t,i,39。)。 case b:printf( %2d %c\t,i,39。)。 case c:printf( %2d %c\t,i,39。)。 case d:printf( %2d %c\t,i,39。)。 default:break。 } 類型定義符 typedef C語言不僅提供了豐富的數(shù)據(jù)類型,而且還允許由用戶自己定義類型說明符,也就是說允許由用戶為數(shù)據(jù)類型取“別名”。例如,有整型量 a,b,其說明如下: int a,b。 int的完整寫法為 integer,為了增加程序的可讀性,可把整型說明符用 typedef定義為: typedef int INTEGER 這以后就可用 INTEGER來代替 int作整型變量的類型說明了。 它等效于: int a,b。 例如: typedef char NAME[20]。然后可用 NAME 說明變量,如: NAME a1,a2,s1,s2。 int age。 } STU。 typedef定義的一般形式為: typedef 原類型名 新類型名 其中原類型名中含有定義部分,新類型名一般用大寫表示,以便于區(qū)別。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1