C程序設(shè)計(jì)演示稿前一至八_第1頁
C程序設(shè)計(jì)演示稿前一至八_第2頁
C程序設(shè)計(jì)演示稿前一至八_第3頁
C程序設(shè)計(jì)演示稿前一至八_第4頁
C程序設(shè)計(jì)演示稿前一至八_第5頁
已閱讀5頁,還剩79頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、C程序設(shè)計(jì)第章第章1第1章C語言概述 “高級(jí)語言” 匯編語言:優(yōu)點(diǎn):可以充分發(fā)揮機(jī)器硬件的功能,并提高質(zhì)量。缺點(diǎn):必須熟悉機(jī)器的指令系統(tǒng),而指令系統(tǒng)又是和具體機(jī)器的內(nèi)部結(jié)構(gòu)密切相關(guān)的,所以所編寫的程序依賴于計(jì)算機(jī)硬件,可讀性和可移植性比較差。 一般高級(jí)語言:優(yōu)點(diǎn):可讀性和可移植性比較好。缺點(diǎn):難以對(duì)硬件進(jìn)行操作,如內(nèi)存地址、位操作等。1.1 介紹 :2C語言:具有一般高級(jí)語言的特性,也具有匯編語言的優(yōu)點(diǎn),所以有人稱為“中級(jí)語言”高級(jí)語言有的:高級(jí)語言沒有的: 算術(shù)運(yùn)算關(guān)系運(yùn)算邏輯運(yùn)算 位運(yùn)算單目、三目運(yùn)算復(fù)合運(yùn)算 31、語言簡(jiǎn)潔、緊湊,使用方便、靈活。32個(gè)關(guān)鍵字、9種控制語句。 2、運(yùn)算符豐

2、富34種運(yùn)算符 3、數(shù)據(jù)類型和數(shù)據(jù)結(jié)構(gòu)豐富?;绢愋停ㄕ汀⒆址?、實(shí)型)構(gòu)造類型(數(shù)組、結(jié)構(gòu)體、共用體)指針、文件、空類型 數(shù)據(jù)結(jié)構(gòu)(鏈、表、樹、棧等)1.2 C語言的特點(diǎn)44、具有結(jié)構(gòu)化控制語句5、語法不嚴(yán)格松散結(jié)構(gòu),即語法檢查不嚴(yán)格,編程時(shí)必須控制好。6、C語言允許直接訪問物理地址,能進(jìn)行位操作。7、目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。8、輸入輸出采用函數(shù)而無輸入輸出語句,可移植性好51.3 用C庫函數(shù)組裝程序 用庫函數(shù)必須注意包含相應(yīng)的頭文件 #include #include #include 61.4 程序格式和特點(diǎn)1、main()函數(shù)必須有且唯一 2、函數(shù)是C語言程序的基本單位3、大

3、小寫敏感4、無行概念(1)、語句以分號(hào)結(jié)束 (2)、以號(hào)開頭的編譯預(yù)處理語句無分號(hào)(3)、/*/加在C語言任何部分作注釋說明采用小寫,大寫有特殊意義(宏,常量等)71.5 程序執(zhí)行從main函數(shù)開始Turbo C 是一個(gè)集成環(huán)境,編輯、編譯、連接、執(zhí)行。1、源程序擴(kuò)展名.c2、Turbo C 的使用 TC選擇工作目錄建立工作環(huán)境建立工作環(huán)境F9編譯、連接。運(yùn)行Alt+R.3、建立工作環(huán)境8例題例1例3講解、說明9上機(jī)題:1、建立一個(gè)自己的工作環(huán)境2、熟悉Turbo C環(huán)境3、輸入并調(diào)試運(yùn)行例1-例34、自己編寫C程序習(xí)題1.5、1.610第2章數(shù)據(jù)描述和基本操作 程序 2.1 C的數(shù)據(jù)類型 :

4、對(duì)數(shù)據(jù)的描述 (數(shù)據(jù)結(jié)構(gòu)) 對(duì)操作的描述 (算法) 1、不同的數(shù)據(jù)占用的空間不同2、對(duì)應(yīng)的運(yùn)算不同數(shù)據(jù)類型(P38)112.2 基本數(shù)據(jù)類型 :1、整型 shout 2字節(jié)int機(jī)器字長(zhǎng)(2字節(jié)) -215(215-1)long 4字節(jié)2、無符號(hào)類型只對(duì)整型;也包含字符型,存放正數(shù)的范圍擴(kuò)大一倍Unsigned 整型x;122.2 基本數(shù)據(jù)類型 :3、實(shí)型 float 單精度 4字節(jié)double雙精度8字節(jié)long double 長(zhǎng)雙精度16字節(jié)132.2 基本數(shù)據(jù)類型 :4、字符型存貯形式,按ASCII碼值;占一字節(jié);與整型通用,相當(dāng)一個(gè)字節(jié)整數(shù)。 142.2 基本數(shù)據(jù)類型 :5、類型長(zhǎng)度運(yùn)

5、算符sizeof(類型 )用途:測(cè)試動(dòng)態(tài)分配存貯空間 例如Asizeof(int); 152.3 常量和變量 :1、常量(1)、數(shù)值常量整型常量實(shí)型常量十進(jìn)制 自然表示八進(jìn)制零打頭十六進(jìn)制ox打頭指數(shù)形式E(e)前面有數(shù),后面是整數(shù)小數(shù)形式 .必須有“.”16(2)、字符型常量用單引號(hào)包圍的單一字符a A字符常量沒有結(jié)束標(biāo)志(3)、字符串型常量用雙引號(hào)包圍的0個(gè)或多個(gè)字符序列“china” 有結(jié)束標(biāo)志17(4)、特殊常量(一)符號(hào)常量如:宏定義#define PI 3.14(二)轉(zhuǎn)義字符(換碼序列)字母表示動(dòng)作 見P(48)182、變量(1)、變量的定義int x,y;先定義每個(gè)變量被指定為一

6、確定類型便于編譯系統(tǒng)檢查如a%b19(2)、變量標(biāo)識(shí)符C語言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符必須是字母或下劃線。用來標(biāo)識(shí)變量名、符號(hào)常量名、函數(shù)名、數(shù)組名、類型名、文件名的有效字符序列。保留關(guān)鍵字預(yù)定義標(biāo)識(shí)符用戶自定義20(3)、變量的初始化定義變量的同時(shí)給變量賦值如: int x=3,y=5;212.4 表達(dá)式運(yùn)算 :1、說明例如表達(dá)式b=(a=x)*5運(yùn)算符的功能與運(yùn)算量的關(guān)系優(yōu)先級(jí)結(jié)合方向結(jié)果類型222、算術(shù)運(yùn)算符雙目運(yùn)算符5%3=2 -5%3=? 5%-3=?、/、(模運(yùn)算符或求余運(yùn)算符)a%b 這里a、b必須是整型數(shù)5/3=1 -5/3=-1(-2)舍入的

7、方向不因定,“向零取整原則”符號(hào)同左邊的操作數(shù)233、算術(shù)表達(dá)式用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象(也稱操作數(shù))連接起來,符合C語法規(guī)則的式子稱C算術(shù)表達(dá)式。如:a*b/c-1.5+a同級(jí)時(shí)“從左到右”的結(jié)合原則244、復(fù)合的賦值運(yùn)算+=、-=、*=、/=、%=、=、&=、=、|=只要有賦值號(hào)優(yōu)先級(jí)較低,只比逗號(hào)運(yùn)算符高如:a+=b a=a+b 累加器,注意a一定是變量b可以是表達(dá)式或變量,結(jié)合規(guī)律從右到左A+=3 a=a+3X*=y+8 x=x*(y+8)255、自增減運(yùn)算+、-a+ , +a 自增a=a+1a- , -a 自減a=a-1后置運(yùn)算、前置運(yùn)算只能用于變量,不能用于常量或表達(dá)式;結(jié)合方

8、向是從右至左266、關(guān)系運(yùn)算 =!=If(x=y) 真(非0為真)假(0為假)277、邏輯運(yùn)算(與)(或)?。ǚ牵?)實(shí)型數(shù)不比較相等的1.0/3.0*3.0=1.0 x=-y就是小到一定形式就行了 106或10828e1?e2:e3 (e為表達(dá)式)8、條件運(yùn)算(三目)33,68逗號(hào)表達(dá)式,又稱順序求值運(yùn)算符9、逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式292.5 類型轉(zhuǎn)換 :1、隱式轉(zhuǎn)換(1)必然轉(zhuǎn)換(2)由低向高轉(zhuǎn)換,一次到位轉(zhuǎn)換P54(3)賦值轉(zhuǎn)換2、顯示轉(zhuǎn)換強(qiáng)制類型運(yùn)算(類型)30第3章簡(jiǎn)單的C程序設(shè)計(jì) 順序結(jié)構(gòu)3.1 C語句 :1、表達(dá)式語句2、控制語句3、函數(shù)調(diào)用語句4、空語句5、復(fù)合語句313.2

9、 格式化輸入輸出函數(shù) :(一)、格式輸出Printf(“格式控制”,輸出項(xiàng)序列);(二)、格式輸入scanf(“格式控制”,地址序列);323.3 字符輸入輸出函數(shù) :(一)、輸入字符getchar()(二)、輸出一個(gè)字符Putchar(c);333.4 順序結(jié)構(gòu)程序設(shè)計(jì)舉例34第4章邏輯運(yùn)算和判斷選取控制4.1 條件分支 :1、if語句的三種形式(1)、if(表達(dá)式)語句(2)、if(表達(dá)式) 語句1; else 語句2;(3) if(表達(dá)式1) 語句1; else if(表達(dá)式2)語句2; else if(表達(dá)式3)語句3; 35if語句的說明:(1)表達(dá)式一般為邏輯表達(dá)式或關(guān)系表達(dá)式,但

10、可以是任意表達(dá)式,是任意的數(shù)值類型(整型、實(shí)型、字符型、指針型數(shù)據(jù))(2)else 前面的分號(hào)不可缺少,它是if語句內(nèi)嵌語句所要求的,缺少時(shí)語法錯(cuò)誤。(3) if和else后面可以是一個(gè)操作語句,也可以是多個(gè)操作語句,若為多個(gè)語句必須用復(fù)合語句。362、if語句的嵌套: if語句中又包含一個(gè)或多個(gè)if語句。if(表達(dá)式1) if(表達(dá)式2)語句1; else 語句2;else if(表達(dá)式3)語句3; else 語句4;373、條件運(yùn)算符: 在if語句中執(zhí)行一個(gè)賦值語句且給同一個(gè)變量。(1)條件運(yùn)算符 ? :(2)條件運(yùn)算符優(yōu)先于賦值運(yùn)算符,低于關(guān)系運(yùn)算符和算術(shù)運(yùn)算符。(3)條件運(yùn)算符的結(jié)合方

11、向“從右至左”(4)條件運(yùn)算符不能取代一般的if語句(5)表達(dá)式1的類型可以與表達(dá)式2和表達(dá)式3的類型不同。384.2 開關(guān)分支switch語句 :是多分支選擇語句格式:Switch(表達(dá)式) case 判斷值1:語句組1;break; case 判斷值2:語句組2;break; default :語句組n;break;39switch語句的說明:(1) switch后面的表達(dá)式應(yīng)是整型、字符型或是枚舉。(2)若表達(dá)式的值與某個(gè)case后面的判斷值相等時(shí)就執(zhí)行case后面的語句組,沒有匹配值時(shí)執(zhí)行default后面的語句組。(3) case后面的判斷值不能重復(fù)。(4)case和 default

12、出現(xiàn)的次序不影響執(zhí)行結(jié)果。(5)執(zhí)行完一個(gè)case后面的語句,則轉(zhuǎn)到下一個(gè)case繼續(xù)執(zhí)行,所以必須用break語句跳出。40第5章循環(huán)控制5.1 循環(huán)結(jié)構(gòu) :循環(huán)結(jié)構(gòu)是結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)之一(1)當(dāng)型循環(huán)結(jié)構(gòu),當(dāng)條件成立時(shí)反復(fù)執(zhí)行操作,直到條件為假時(shí)才停止循環(huán)。(2)直到型循環(huán)結(jié)構(gòu):先執(zhí)行操作,再判斷條件是否為假,若條件為假,再執(zhí)行。如此反復(fù),直到條件為真為止。415.2 C語言中循環(huán)語句 :1.while2.for3.do while當(dāng)型循環(huán),先判斷后執(zhí)行直到型循環(huán),先執(zhí)行后判斷1.while和do while語句(1)while(條件) 語句; 如: 421.while和do

13、while語句(2)do 語句; while(條件);如: 需要注意: (1)循環(huán)前的初始值 (2)循環(huán)體內(nèi)必須改變循環(huán)條件,使其趨于結(jié)束 (3)循環(huán)體如果包含一個(gè)以上語句,應(yīng)以復(fù)合語句出現(xiàn) (4)當(dāng)while后面的表達(dá)式第一次值為真時(shí),二者等價(jià),否則二者不同。循環(huán)次數(shù)不確定,只給結(jié)束條件。432.for語句“靈活”循環(huán)次數(shù)確定或不確定(只給結(jié)束條件)for(初值表達(dá)式;條件;修正表達(dá)式) 語句;如: s=0;for(i=1;i=100;i+) s+=i;44for語句的說明:(1)條件為真,則執(zhí)行for語句中指定的內(nèi)嵌語句(2)初值表達(dá)式和修正表達(dá)式可以是逗號(hào)表達(dá)式(3) e1,e2,e3

14、均可缺少,但分號(hào)保留(4)可以取代while語句(5)初值表達(dá)式可以和循環(huán)變量無關(guān)455.3 輔助控制 :1.break語句 (1)跳出switch結(jié)構(gòu) (2)用于循環(huán)體內(nèi),結(jié)束本層循環(huán),一次退出一層循環(huán)2.continue語句 僅用于循環(huán)體內(nèi),使本次循環(huán)結(jié)束3.goto語句 goto 語句標(biāo)號(hào); 標(biāo)號(hào):用標(biāo)識(shí)符表示,規(guī)則同變量 退出多重循環(huán),從內(nèi)到外465.4 循環(huán)的嵌套 :一個(gè)循環(huán)體內(nèi)又包含另一個(gè)完整的循環(huán)結(jié)構(gòu)三種循環(huán)結(jié)構(gòu)可以互相嵌套。例題分析:47例題分析:例1 輸入字符顯示之。#include Main() char c; while(c=getchar()!=EOF) putchar

15、(c);48例題分析:例2 打印ASCII碼0-255的字符。49第6章數(shù)組6.1 一維數(shù)組的定義和引用 :1 定義 類型說明符 數(shù)組名常量表達(dá)式 如 int a10;說明: (1)數(shù)組名 (2)用方括號(hào) (3)數(shù)組長(zhǎng)度,元素個(gè)數(shù) (4)不能含變量數(shù)組:是有序數(shù)據(jù)的集合,數(shù)組中的元素應(yīng)是同一類型。502 引用 先定義,后使用的原則C規(guī)定:逐個(gè)引用數(shù)組元素,不能一次引用整個(gè)數(shù)組數(shù)組元素的表示形式:數(shù)組名下標(biāo)規(guī)定:下標(biāo)是整型常量或整型表達(dá)式 如 a5 或 a2*3等513 初始化 (1)在定義數(shù)組時(shí)對(duì)數(shù)組元素賦以初值規(guī)定:只有靜態(tài)存貯數(shù)組和外部存貯數(shù)組才能初始化 static -靜態(tài) extern

16、-外部 (2)只給部分元素賦值 (3)使數(shù)組中全部元素為0 (4)在對(duì)全部數(shù)組元素初始化時(shí),可以不指定數(shù)組長(zhǎng)度。526.2 二維數(shù)組的定義和引用 :1 定義 類型說明符 數(shù)組名常量表達(dá)式 常量表達(dá)式 如 int a34;是特殊的一維數(shù)組 存貯順序:按行存貯,多維數(shù)組同理532 引用 數(shù)組元素的表示形式: 數(shù)組名下標(biāo)下標(biāo) 如 a00 或 a01等3 初始化546.3 字符數(shù)組 :用來存放字符數(shù)據(jù)的數(shù)組是字符數(shù)組,字符數(shù)組中每個(gè)元素存放一個(gè)字符。1 定義 類型說明符 數(shù)組名常量表達(dá)式 如:char a10; int a10;552 初始化static char c5=c,h,i,n,a;注(1)如

17、果字符個(gè)數(shù)大于數(shù)組長(zhǎng)度則語法錯(cuò) (2)如果字符個(gè)數(shù)小于數(shù)組長(zhǎng)度則將字符賦給數(shù)組前面的元素,其余元素為空格 (3)字符個(gè)數(shù)等于數(shù)組長(zhǎng)度時(shí)可以省略數(shù)組長(zhǎng)度3 引用 可以引用字符數(shù)組中的一個(gè)元素,得到一個(gè)字符。564 字符串和字符串結(jié)束標(biāo)志字符數(shù)組長(zhǎng)度:實(shí)際長(zhǎng)度0;有效長(zhǎng)度字符串結(jié)束標(biāo)志 0表示“china” 共有5個(gè)字符,但占6個(gè)字節(jié)可以用字符串常量來初始化字符數(shù)組Static char c=“china”;也可寫成static char c=“china”; 在C中將字符串作為字符數(shù)組來處理,為了測(cè)定字符串的實(shí)際長(zhǎng)度0作為結(jié)束標(biāo)志。575 字符數(shù)組輸入、輸出(1)getchar()/putcha

18、r()(2)用格式符%c輸入、輸出(3)將整個(gè)字符串一次輸入、輸出,用格式符%s如Static char c=“china”;Printf(“%s”,c);58注(1)輸出字符不包括結(jié)束符0; (2) 用%s時(shí)輸出項(xiàng)是數(shù)組名; (3) 長(zhǎng)度大于實(shí)際長(zhǎng)度時(shí)也到、0結(jié)束; (4)用scanf函數(shù)輸入一個(gè)字符串,利用一個(gè)scanf函數(shù)輸入多個(gè)字符串時(shí),以空格分隔。 static char c6; scanf(“%s”,c); printf(“%s”,c);所以一維字符數(shù)組可以看作是“字符串變量”596 字符串輸入、輸出(1)gets(str) 輸入一個(gè)字符串到字符數(shù)組(2)puts(str) 可以包

19、含轉(zhuǎn)義字符,如0,n等607 字符串函數(shù) #include (1)拷貝 strcpy(str1,str2); 目的 源注:str1長(zhǎng)度str2長(zhǎng)度str1是數(shù)組名形式,str2可以是字符串常量,不能用賦值語句將字符串常量或字符數(shù)組賦給一個(gè)字符數(shù)組。如:str1=“china”; str1=str2;61(2)字符串連接 strcat(str1,str2); 目的 源注:作用是把字符2連到字符1后面,結(jié)果放在字符數(shù)組1中,所以字符數(shù)組1必須足夠大,初始化時(shí)不能省略長(zhǎng)度;連接時(shí)第一個(gè)0取消。(3)字符串比較strcmp(str1,str2);(4)測(cè)試字符串長(zhǎng)度函數(shù)strlen(str)(5)將字

20、符串中大寫字母轉(zhuǎn)成小寫字母函數(shù)strlwr(str)(6)將字符串中小寫字母轉(zhuǎn)成大寫字母函數(shù)strupr(str) 62第8章模塊化程序設(shè)計(jì)8.1 函數(shù)定義:在C中子程序的作用是由函數(shù)來完成的, 使用的角度函數(shù)有兩種(1)系統(tǒng)函數(shù)(2)用戶定義函數(shù);從函數(shù)的形式上分(1)無參函數(shù)(2)有參函數(shù)格式: 函數(shù)類型 函數(shù)名(形式參數(shù)) 函數(shù)體; 模塊化設(shè)計(jì);結(jié)構(gòu)化編程。63說明: 函數(shù)類型-返回值的類型 如:float aver(成績(jī)表) void-無返值 main() 就應(yīng)是void類型 默認(rèn)時(shí)為int型形參: (int a,int b,float r) 或 (a,b,r) int a,b; fl

21、oat r; 函數(shù)類型 函數(shù)名() 稱為“空函數(shù)”648.2 函數(shù)參數(shù)和函數(shù)值:1、形式參數(shù)和實(shí)際參數(shù)定義函數(shù)時(shí)函數(shù)名后面括號(hào)中的變量形參調(diào)用函數(shù)時(shí)函數(shù)名后面括號(hào)中的表達(dá)式實(shí)參通過函數(shù)調(diào)用使兩個(gè)函數(shù)中的數(shù)據(jù)發(fā)生聯(lián)系說明:(1)形參變量在函數(shù)調(diào)用前無分配存貯空間(2)實(shí)參可以是常量、變量、表達(dá)式或數(shù)組名(3)在被定義的函數(shù)中,必須指定形參類型(4)實(shí)參和形參類型應(yīng)一致,否則類型不匹配錯(cuò)誤(5)形參和實(shí)參間的傳遞是單向的“值傳遞”,不同單元。652、函數(shù)的返值(1)函數(shù)的返值是通過return語句獲得的,return后面可以是一個(gè)表達(dá)式。(2)函數(shù)值的類型,在定義函數(shù)時(shí)指定函數(shù)值類型,如果不指定,

22、按整型處理,函數(shù)類型決定返值類型。(3)如果被調(diào)函數(shù)中沒有return語句,則返值不確定。(4)如果不帶回值,應(yīng)將函數(shù)定義為void類型。668.3 函數(shù)的調(diào)用:1、函數(shù)調(diào)用的一般形式函數(shù)名(實(shí)參表列);說明: 對(duì)實(shí)參表的求值順序并不是確定的,一般是從右至左,這種情況在printf函數(shù)中也同樣存在如:i=2;Printf(“%d %dn”,i,+i);結(jié)果:3 3672、函數(shù)的調(diào)用方式函數(shù)在程序中出現(xiàn)的位置;(1)函數(shù)語句(2)函數(shù)表達(dá)式(3)函數(shù)參數(shù)683、被調(diào)函數(shù)的說明在一個(gè)函數(shù)中調(diào)用另一個(gè)函數(shù)所具備的條件是:(1)被調(diào)函數(shù)是已經(jīng)存在的函數(shù)(庫函數(shù)、自定義)(2)如果是庫函數(shù)則 #incl

23、ude 命令相關(guān)頭文件(3)如果是用戶自定義函數(shù),在主調(diào)函數(shù)中對(duì)被調(diào)函數(shù)聲明: 函數(shù)類型 函數(shù)名(參數(shù)表); 特例: (1)函數(shù)的返值是整型或字符型 (2)被調(diào)函數(shù)的定義在主調(diào)函數(shù)之前 (3)在所有函數(shù)定義之前,說明了函數(shù)類型698.4 函數(shù)的嵌套調(diào)用:關(guān)系:自身可調(diào)用,相互之間可調(diào)用,即在調(diào)用一個(gè)函數(shù)的過程中,又調(diào)用另一個(gè)函數(shù)。如圖8.5函數(shù)1函數(shù)2函數(shù)3例8.6 P155708.5 函數(shù)的遞歸調(diào)用:1、直接遞歸2、間接遞歸函數(shù)A函數(shù)A函數(shù)B718.6 數(shù)組作為函數(shù)參數(shù):數(shù)組元素作參數(shù)同變量相同,數(shù)組名作為參數(shù)時(shí)傳遞整個(gè)數(shù)組。當(dāng)用數(shù)組名作函數(shù)參數(shù)時(shí),實(shí)參和形參都應(yīng)用數(shù)組名(或指針變量)。例8

24、.11 P16572說明(1)主調(diào)函數(shù)和被調(diào)函數(shù)分別定義數(shù)組(2)實(shí)參數(shù)組和形參數(shù)組類型應(yīng)一致(3)實(shí)參數(shù)組和形參數(shù)組大小可以不一致,C編譯對(duì)形參數(shù)組大小不作檢查,只是將實(shí)參首址傳遞給形參數(shù)組。如:例8.12(4)不是“傳值”而是“傳址”例:8.13(5)也可以用多維數(shù)組名作函數(shù)參數(shù),同上。例:8.14738.7 局部變量和全局變量:1、局部變量在函數(shù)內(nèi)定義的變量例:float f1(int a) int b,c; . 74說明(1)主函數(shù)main中定義的變量只在主函數(shù)中有效(2)不同函數(shù)中可以使用相同的變量(3)形參也是局部變量(4)在一個(gè)函數(shù)內(nèi)部,可以在復(fù)合語句中定義變量,這些變量只在復(fù)合

25、語句中有效,離開復(fù)合語句該變量就無效。758.7 局部變量和全局變量:2、全局變量在函數(shù)之外定義的變量稱為外部變量,外部變量是全局變量,全局變量可以為本文件中其它函數(shù)所共用,它的有效范圍為“從定義的位置開始到文件結(jié)束”。例:8.1576說明(1)設(shè)全局變量的作用是增加了函數(shù)間數(shù)據(jù)聯(lián)系,可以從函數(shù)得到一個(gè)以上的返值,是“雙向傳遞的”。(2)不要輕易使用全局變量在程序執(zhí)行過程中都占用存貯單元;通用性降低;不清晰。(3)在定義點(diǎn)之前引用外部變量要用關(guān)鍵字extern作“外部變量說明”(4)在同一源文件中,外部變量與局部變量同名,則在局部變量的作用范圍內(nèi),外部變量不起作用。778.8 動(dòng)態(tài)存貯變量與靜態(tài)存貯變量:1、變量的存貯類別 以上是從變量的作用域角度分;從變量值生存期角度分靜態(tài)存貯變量和動(dòng)態(tài)存貯變量。靜態(tài)存貯區(qū)存放:全局變量動(dòng)態(tài)存貯區(qū)存放: (1)函數(shù)形參變量 (2)局部變量(未加static說明的) (3)函數(shù)調(diào)用時(shí)的現(xiàn)場(chǎng)保護(hù)和返回地址程序區(qū)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論