c語言基礎(chǔ)知識(shí)復(fù)習(xí)過程_第1頁
c語言基礎(chǔ)知識(shí)復(fù)習(xí)過程_第2頁
c語言基礎(chǔ)知識(shí)復(fù)習(xí)過程_第3頁
c語言基礎(chǔ)知識(shí)復(fù)習(xí)過程_第4頁
c語言基礎(chǔ)知識(shí)復(fù)習(xí)過程_第5頁
已閱讀5頁,還剩29頁未讀 繼續(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語言期末復(fù)習(xí)之基礎(chǔ)知識(shí)篇- 楊士帥一 C 語言概述? 程序:一組計(jì)算機(jī)能夠識(shí)別和執(zhí)行的指 令。指令的有序的集合。? 計(jì)算機(jī)語言:人和計(jì)算機(jī)交流信息 , 計(jì)算 機(jī)和人都能識(shí)別的語言? C語言的注釋:/ 單行注釋/*/多行注釋。? C語言的結(jié)構(gòu):由一個(gè)或多個(gè)源程序文件組成。函數(shù)是C程序的基本單位。一個(gè)C程序至少含有一個(gè) main函數(shù), 也可以由一個(gè)main 函數(shù)和若干個(gè)其他函數(shù)組成。C 的這些特點(diǎn)容易實(shí)現(xiàn)程序的模塊化。C程序總是從main函數(shù)開始執(zhí)行,而且不論 main 函數(shù)的位置如何。? 每個(gè)語句和數(shù)據(jù)的定義后面必須有一個(gè)括號(hào)。? C語言本身沒有輸入輸出函數(shù),輸入輸出操作是庫函數(shù)scanf 和

2、 printf 提供的。二 數(shù)據(jù)的類型和運(yùn)算( 一 ) 常量:在程序運(yùn)行的過程中,其值不能被改變。 TOC o 1-5 h z 整型常量:1000.實(shí)型常量:0.34 ,12.34e3.字符常量:a ,n .字符串常量:“ boy”。符號(hào)常量: #define PI 3.1416( 二 )變量:在程序運(yùn)行期間,變量的值是可以改變的。變量必須先定義后使用。剛定義尚未賦值的變量具有隨機(jī)值。定義變量要同時(shí)定義名字和類型。變量名和變量值是兩個(gè)不同的概念。變量名實(shí)際是以這個(gè)名字代表一個(gè)內(nèi)存地址。變量值就是該內(nèi)存單元當(dāng)前存儲(chǔ)的值。( 三 ) 標(biāo)識(shí)符:一個(gè)對(duì)象的名字。1.2.只能由字母,數(shù)字和下劃線三種字符

3、組成,而且第一個(gè)字符必需為字母或下劃線。標(biāo)識(shí)符的長度無限制,但不能以關(guān)鍵字 作為標(biāo)識(shí)符。3. 不合法的標(biāo)識(shí)符:M D.John, #33, 3D64, Include 。(四)數(shù)據(jù)類型:就是對(duì)數(shù)據(jù)分配儲(chǔ)存單元 的安排,包括儲(chǔ)存單元的長度以及數(shù)據(jù)的 存儲(chǔ)形式。數(shù)據(jù)類型寬度Char1BShort int2BInt4BLong int4BFloat4BDouble8BLong double80B整數(shù)的默認(rèn)時(shí)signed,各整數(shù)類型均可加修 飾符unsigned表示無符號(hào)整數(shù)類型, unsigned int 可以簡(jiǎn)寫成 unsigned.1.整型:? 一個(gè)十進(jìn)制數(shù)是0到9的序列。?十六進(jìn)制應(yīng)該加前綴

4、0 x。如:0 xfa , 0 xAE03?八進(jìn)制應(yīng)該加前綴 0.如:030.?使用科學(xué)記數(shù)法,e/E的后面絕對(duì)不能在 跟小數(shù),且E/e的前面必須有值。2.字符型:?用單引號(hào)括起來的單個(gè)字符。如:a , 0.實(shí)際上存儲(chǔ)的是該數(shù)據(jù) 的ASCII碼。所以也可以把他們看成是整 型量,C語言容許對(duì)整型變量賦以字符型, 也允許對(duì)字符變量賦以整形值。3.轉(zhuǎn)義字符:轉(zhuǎn)義字符含義bBackspacetTabn換行r回車雙引號(hào)單引號(hào)反斜杠4.字符串:? C語言中并沒有字符串類型,用字符數(shù)組來處理字符串? 字符串是由一對(duì)雙引號(hào)括起來的字符數(shù)列。? 字符串常量和字符常量的區(qū)別:? 字符常量由單引號(hào)括起來,字符串常量

5、由雙引號(hào)括起來。? 字符常量只能是單個(gè)字符,字符串常量則可以是一個(gè)或多個(gè)字符。? 字符常量占一個(gè)字節(jié)的內(nèi)存空間,字符串所占的內(nèi)存空間常量等于字符串中的字符數(shù)加一。增加的一個(gè)字節(jié)中存放字符 0 .? ASCII 為 0,這是字符串結(jié)束的標(biāo)志。? Ex:? a 在內(nèi)存中占一個(gè)字節(jié), “ a ” 在內(nèi)存中占 2 個(gè)字節(jié)。5. 符號(hào)常量:?在C語言中,可以用一個(gè)標(biāo)識(shí)符來表示一個(gè)常量,稱之為符號(hào)常量。符號(hào)常量在使用之前必須先定義:#define 標(biāo)識(shí)符常量名 常量值? #define 是一條預(yù)處理命令,稱為宏定義命令,其功能是把該標(biāo)識(shí)符定義為其后的常量值。習(xí)慣上常量的標(biāo)識(shí)符用大寫字母,而變量名用小寫字母

6、。( 五 ) 運(yùn)算符:算術(shù)運(yùn)算符:? 整數(shù)除法:兩個(gè)整數(shù)相除的結(jié)果為整數(shù)。Ex: 5/3=1 ,舍去小數(shù)部分。-5/3=-1 ,向零取整。? 浮點(diǎn)除法:保證除數(shù)和被除數(shù)中至少有一個(gè)是浮點(diǎn)數(shù)。Ex:5/4.0=1.25.? %模運(yùn)算要求運(yùn)算元為整數(shù),結(jié)果也是整數(shù)。Ex: 5%3=2.? C 語言沒有乘方運(yùn)算,但 pow 函數(shù)可以實(shí)現(xiàn)乘方運(yùn)算。pow(x,y ) x 的 y 次方。#include.算數(shù)運(yùn)算符的優(yōu)先級(jí)與結(jié)合性: 先乘除后加減,從左至右。? 不同類型數(shù)據(jù)的混合運(yùn)算:類型的自動(dòng)轉(zhuǎn)換,編譯系統(tǒng)會(huì)自動(dòng)把各操作系統(tǒng)操縱數(shù)轉(zhuǎn)化為操作數(shù)中最長的類型。EX若int型與float 或double型數(shù)

7、據(jù)進(jìn)行運(yùn)算時(shí), 系統(tǒng)會(huì)自動(dòng)把 int 與 float 型數(shù)據(jù)轉(zhuǎn)化為 double 型, 然后在進(jìn)行運(yùn)算, 結(jié)果 時(shí) double 型。自加自減運(yùn)算符:? i+ , i-: 在使用 i 之后將 i 的值加 / 減 1.? +I,-i :在使用 i 之前,先將i 的值加 /減1.強(qiáng)制類型轉(zhuǎn)換:( double ) a 將 a 轉(zhuǎn)化為 double 類型。短類型- 長類型安全長類型- 短類型有可能會(huì)丟失數(shù)據(jù)。運(yùn)算符的優(yōu)先級(jí):()、口、.、(結(jié)構(gòu)體成員運(yùn)算符)、一 (指向結(jié)構(gòu)體成員運(yùn)算符)2, 單目運(yùn)算符 ! (非) 、 (自減) 、 (自加)、(按位取反)、正號(hào)(+)、負(fù)號(hào)( - )3,算術(shù)運(yùn)算符*

8、 、 %、 / , +、 -4,關(guān)系運(yùn)算符 、 = 、 b)?a:b 中? : 為 3目運(yùn)算符 ! a 為單目運(yùn)算符 .單目,三目運(yùn)算符都為自右向左結(jié)合,雙目運(yùn)算符除賦值運(yùn)算符都為自左向右結(jié)合關(guān)系運(yùn)算符:,=,=,=,!=. 用來比較兩個(gè)操作數(shù)之間的關(guān)系,運(yùn)算結(jié)果為 1 或 0.邏輯運(yùn)算符:! , &, | 。 用來實(shí)現(xiàn)邏輯運(yùn)算和邏輯判斷。用非 0 表示邏輯值的 true , 用 0 表示邏輯值的 false 。條件運(yùn)算符:三目運(yùn)算符:表達(dá)式a?表達(dá)式b:表達(dá)式c若表達(dá)式的值非0,則返回表達(dá)式b 的值;若表達(dá)式的 a 的值為0,則返回表達(dá)式c 的值。逗號(hào)運(yùn)算符:用來將若干獨(dú)立的表達(dá)式分隔并連接

9、構(gòu)成一個(gè)逗號(hào)表達(dá)式。賦值運(yùn)算符:變量二表達(dá)式。右結(jié)合性。三輸入輸出函數(shù)(一)控制臺(tái)I/O :程序與外界交流。(二)C語言中所有的I/O都是由庫函數(shù)完 成的,要用#include將相關(guān)頭文件包含在 源文件當(dāng)中。使用標(biāo)準(zhǔn)輸入輸出函數(shù)時(shí)要 用到stdio.h 文件。(三)格式輸出函數(shù):printf (“格式控制字 符串”,表達(dá)式列表)。格式字符意義d,i以帶符號(hào)的十進(jìn)制 輸出整數(shù)o以八進(jìn)制形式輸出 無符號(hào)整數(shù)(不帶前 綴0)X,x以十六進(jìn)制的無符 號(hào)數(shù)輸出整數(shù)(不帶 前綴0 x)u以無符號(hào)的十進(jìn)制 形式輸出整數(shù)f以小數(shù)的形式輸出單,雙精度實(shí)數(shù),隱 含6位小數(shù)E,e以指數(shù)的形式輸出 單,雙精度實(shí)數(shù)G,

10、g以或6中較短的 輸出寬度輸出單、雙 精度實(shí)數(shù)c輸出單個(gè)字符s輸出字符串格式修飾符:%-m.nlf ) %-mld字符說明l用于輸出長整形數(shù)據(jù)以及double型數(shù)據(jù)m數(shù)據(jù)顯示的最小寬度n對(duì)實(shí)數(shù),表示輸出n位 小數(shù)。對(duì)字符串,表示截取的 字符個(gè)數(shù)。-輸出的數(shù)字或字符在顯 示寬度區(qū)域內(nèi)左對(duì)齊。? 未指定輸出寬度m, 則按實(shí)際位數(shù)輸出。? 未指定小數(shù)位數(shù),默認(rèn)6 位。? 寬度計(jì)算中小數(shù)點(diǎn)要占一位。? 若數(shù)據(jù)實(shí)際寬度比制定寬度要小,默認(rèn)右對(duì)齊, 即左補(bǔ)空格。 有修飾符- ,則左對(duì)齊,即右補(bǔ)空格。? 若數(shù)據(jù)的實(shí)際寬度比指定寬度大,則按實(shí)際寬度輸出。格式輸入函數(shù):用戶用指定的格式從盤上把數(shù)據(jù)輸入到指定的變

11、量中。scanf (“格式控制字符” ,變量地址列表) ;? 在 scanf 語句的格式字符串中, 如果沒有非格式字符在d%d%比間做輸入時(shí)的間隔,在輸入時(shí)要用一個(gè)或一個(gè)以上的空格或回車或 TAB 鍵 作為輸入數(shù)據(jù)之間的間隔。? scanf 函數(shù)中的格式控制后面應(yīng)當(dāng)是變量地址,而不是變量名。? 不能用格式控制來規(guī)定輸入數(shù)據(jù)的精度。scanf(%7.2f,&a);scanf(%f, &a);? 如果輸入在格式控制字符串中除了格式字符還有其它字符,那么在輸入時(shí)這些字符將被作為間隔符,要輸入相同的字符。? scanf( “ a=%d,b=%d,&a,&b) a=12,b=34在輸入數(shù)據(jù)時(shí)遇到以下情況

12、, 則認(rèn)為是一個(gè)數(shù)據(jù)輸入的結(jié)束:遇到空格鍵,回車鍵, tab 鍵。滿足域?qū)?,?a輸入4位結(jié)束。遇到非法字符。? 在輸入字符型數(shù)據(jù)時(shí), 若格式控制字符中沒有非格式字符, 則認(rèn)為所有輸入的字符均為有效字符。如: scanf(%c%c%c,&a,&b,&c);只 有當(dāng)輸入為: def 時(shí)(即:不能有間隔) , 才能把 d 賦于a, e 賦予b, f 賦予c 。四 流程控制( 一 ) 順序:? 按語句的先后順序依次執(zhí)行。? 復(fù)合語句:可用 括起來的多個(gè)語句,構(gòu)成一個(gè)復(fù)合語句。在C語言中復(fù)合語句被認(rèn)為是一條語句。( 二 ) 分支:if 語句:實(shí)現(xiàn)兩個(gè)分支的選擇結(jié)構(gòu)。最常用的 3 種 if 語句的形式:

13、i f ( 表達(dá)式 ) 語句 1 ( 沒有 else 子 句)if ( 表達(dá)式 ) 語句 1else 語句 2( 有 else 子句)if(表達(dá)式1 ) 語句1else if(表達(dá)式2 )語句2else if(表達(dá)式3 )語句311Ielse if(表達(dá)式 m)語句 melse 語句 m+1IF 嵌套 : 在 if 語句中又包含一個(gè)或多個(gè)if語句稱為 if 語句的嵌套。 else 總是與它上面最近的為配對(duì)的 if 配對(duì)。if( ) TOC o 1-5 h z if( )語句1else語句2elseif( )語句3else語句4Switch 語句:實(shí)現(xiàn)多分支的選擇結(jié)構(gòu)。根據(jù)表達(dá)式的值, 使流程跳

14、轉(zhuǎn)到不同的語句。 switch 語句的一般格式:switch (表達(dá)式) case 常量 1 :語句 1 TOC o 1-5 h z case常量2 :語句2111111IIIcase常量n :語句ndefault :語句 n+1switch 語句中表達(dá)式和常量可以是整形以及字符型。任何兩個(gè) case 后面的常量不可有相同的值。先計(jì)算表達(dá)式的值, 在根據(jù)表達(dá)式的值轉(zhuǎn)向不同的分支。每個(gè)case 分支的語句無需用 括起來。每個(gè)case 分支都是入口點(diǎn)。break 語句時(shí)轉(zhuǎn)移語句,即跳出 switch ,無break 語句, 將執(zhí)行入口點(diǎn)之后的所有語句。( 三 ) 循環(huán):? While( 表達(dá)式 )

15、 語句先判斷循環(huán)條件表達(dá)式的值,若為真,則執(zhí)行循環(huán)體;若為假則不執(zhí)行循環(huán)體語句。? do循環(huán)體語句whilie (表達(dá)式)先無條件執(zhí)行一次循環(huán)體,然后在判斷循環(huán)條件是否成立。? For( 表達(dá)式 1;表達(dá)式 2;表達(dá)式 3)循環(huán)體語句。表達(dá)式1:為循環(huán)變量設(shè)置初始值。表達(dá)式2:判斷是否繼續(xù)循環(huán)。表達(dá)式3:修改循環(huán)變量的值。循環(huán)嵌套:一個(gè)循環(huán)體內(nèi)又包含另一個(gè)完整的循環(huán)結(jié)構(gòu),稱之為循環(huán)嵌套。內(nèi)層循環(huán)中還可以嵌套循環(huán),這就是多層循環(huán)。 3 種循環(huán)可以互相嵌套。三種循環(huán)的比較:? 一般情況下,三種循環(huán)可以互相代替。? 循環(huán)中應(yīng)包含使循環(huán)趨于結(jié)束的語句。?用while和dowhile循環(huán)變量操作應(yīng)在 w

16、hile 和dowhile 之前完成。而 for語 句可以在表達(dá)式 1 中實(shí)現(xiàn)循環(huán)變量的初始化。? Break : 從循環(huán)體中強(qiáng)行退出, 結(jié)束整個(gè)循 環(huán)。? Continue :停止本次循環(huán),直接開始下次 循環(huán)。五 函數(shù)使用角度來看函數(shù)包括庫函數(shù)和用戶自定義函數(shù)。庫函數(shù):由 C 系統(tǒng)提供,用戶無須定義,也不必在程序中作類型說明,只需在程序中包含有該函數(shù)的頭文件即可在程序中直接調(diào)用。用戶自定義函數(shù): 用戶按照需要自己編寫的函數(shù)。從函數(shù)形式來看: 函數(shù)分為無參數(shù)函數(shù)和有參數(shù)函數(shù)。無參數(shù)函數(shù):無參數(shù)函數(shù)一般用來執(zhí) 行 一組操作。 無參數(shù)函數(shù)可以帶回或不帶回函數(shù)值。有參數(shù)函數(shù):在調(diào)用函數(shù)時(shí),主調(diào)函數(shù)要

17、通過參數(shù)向被調(diào)函數(shù)傳遞數(shù)據(jù)。 函數(shù)可以帶回或者不帶回函數(shù)值。一般情況下,被調(diào)函數(shù)會(huì)返回一個(gè)函數(shù)值,供主函數(shù)使用。一個(gè)C程序由一個(gè)或多個(gè)程序模塊組成,每一個(gè)程序模塊作為一個(gè)源程序文件。對(duì)較大的程序,一般不希望將所有的內(nèi)容都放在一個(gè)文件中, 而是將它們分別放在若干個(gè)源文件當(dāng)中,由若干個(gè)源文件組成一個(gè) C程序。一個(gè)源程序文件由一個(gè)或多個(gè)函數(shù)及其他相關(guān)語句組成。一個(gè)源程序文件是一個(gè)編譯的單位, 在程序進(jìn)行編譯是以源程序文件為單位進(jìn)行編譯的,而不死以函數(shù)為單位進(jìn)行編譯的。C程序的執(zhí)行是從main函數(shù)開始的,如果在main 函數(shù)的執(zhí)行過程中調(diào)用其他函數(shù), 調(diào)用函數(shù)結(jié)束后流程返回到 main 函數(shù), mai

18、n 函數(shù)結(jié)束時(shí)整個(gè)程序運(yùn)行結(jié)束。所有函數(shù)都是平行和平等的, 即在定義函數(shù)時(shí)是分別進(jìn)行的,互相獨(dú)立的,一個(gè)函數(shù)并不從屬于另一個(gè)函數(shù), 即函數(shù)不能嵌套定義。函數(shù)間可以互相調(diào)用,但不能調(diào)用 main 函數(shù), main 函數(shù)是被操作系統(tǒng)所調(diào)用。定義函數(shù):C 語言要求在程序中遇到的所有函數(shù),必須先定義后使用。函數(shù)的定義指明了函數(shù)名,函數(shù)返回值類型,函數(shù)實(shí)現(xiàn)的功能以及參數(shù)的個(gè)數(shù)與類型, 將這些信息通知給編譯系統(tǒng)。函數(shù)定義格式:類型名 函數(shù)名(形式參數(shù)表列)函數(shù)體類型說明了函數(shù)返回值的類型,它可以是任何有效類型,如果省略,默認(rèn)為 int 。參數(shù)列表使用逗號(hào)分割變量表,各變量表由類型和變量名組成,參數(shù)列表可以

19、為空,表示無參,但此括號(hào)不能省略,不管定義還是聲明時(shí),每個(gè)函數(shù)參數(shù)必須同時(shí)含有類型和參數(shù)名??蘸瘮?shù): 中類容為空,調(diào)用函數(shù),什么也不做,目的時(shí)方便以后對(duì)功能的擴(kuò)充,而不會(huì)影響程序的結(jié)構(gòu)。函數(shù)的返回: return 表達(dá)式。用途:使得本函數(shù)立即退出,返回到調(diào)用語句的地方,返回一個(gè)值。函數(shù)可以用兩種方法停止運(yùn)行并返回到調(diào)用它的地方:執(zhí)行到函數(shù)最后一個(gè)語句。遇到 return 語句, 函數(shù)的返回值是靠 return語句獲得的。如果不希望函數(shù)有返回值,將函數(shù)類型聲明為 void 。除了類型為 void 函數(shù)外,其他函數(shù)均有返回值,該值由 return 語句決定,如果沒有return 語句函數(shù)將返回一個(gè)

20、不確定的值。如果函數(shù)沒有指明函數(shù)返回值的類型, 默認(rèn)為 int 。當(dāng)函數(shù)的返回值不是整型時(shí),應(yīng)該:明確說明函數(shù)的類型。函數(shù)聲明位于第一次調(diào)用之前。參數(shù)傳遞 :C語言中的函數(shù)調(diào)用傳遞參數(shù)是按值傳送。如果實(shí)參的修改通過形參帶回主調(diào)函數(shù), 用指針。用數(shù)組作為函數(shù)參數(shù)時(shí), 就把數(shù)組的地址傳給了參數(shù)。函數(shù)的作用域:每個(gè)函數(shù)都是一個(gè)獨(dú)立的代碼塊, 一個(gè)函數(shù)的代碼屬于該函數(shù)專有。一個(gè)代碼塊中定義的變量成為局部變量, 局部變量隨代碼塊的產(chǎn)生而產(chǎn)生, 隨代碼塊的退出而消亡。函數(shù)的形參也是局部變量。在任何一個(gè)函數(shù)之外定義的變量成為全局變量,可以被任何一個(gè)函數(shù)訪問,修改。在函數(shù)內(nèi)部用存儲(chǔ)類型符 static 說明變

21、量不隨函數(shù)的運(yùn)行,退出而產(chǎn)生,消亡。但仍然只能在函數(shù)內(nèi)部訪問它。如果全局變量和局部變量同名,局部變量屏蔽全局變量。函數(shù)的嵌套調(diào)用:C 語言容許在一個(gè)在一個(gè)函數(shù)的定義中出現(xiàn)對(duì)另一個(gè)函數(shù)的調(diào)用。 這樣就出現(xiàn)了函數(shù)的嵌套調(diào)用。 即在被調(diào)函數(shù)中又調(diào)用其他函數(shù)。六 數(shù)組數(shù)組是一組有序數(shù)據(jù)的集合, 下標(biāo)代表了數(shù)據(jù)在數(shù)組中的序號(hào)。用數(shù)組名和下標(biāo)唯一確定數(shù)組中的元素。數(shù)組中每一個(gè)元素都必須屬于同一個(gè)數(shù)據(jù)類型。一維數(shù)組的定義:類型 數(shù)組名 常量表達(dá)式 數(shù)組名的命名規(guī)則與變量命名規(guī)則相同,數(shù)組也必須先定義后使用。數(shù)組類型實(shí)際上是數(shù)組元素的取值類型。對(duì)于同一數(shù)組,其所有元素的數(shù)據(jù)類型都是相同的。數(shù)組民是用戶定義的標(biāo)

22、識(shí)符, 不能與其他變量名相同。定義數(shù)組時(shí), 方括號(hào)必須是一個(gè)常量表達(dá)式,表示數(shù)據(jù)的元素個(gè)數(shù),也稱為數(shù)組長度??梢允欠?hào)常量或常量表達(dá)式, 但不能時(shí)變量。一維數(shù)組的使用:使用數(shù)組就是使用他的元素。數(shù)組的元素和普通變量一樣, 只不過是名字有些特殊。數(shù)組元素的一般表示形式:數(shù)組名 下標(biāo)序號(hào) 使用數(shù)組時(shí),數(shù)組下標(biāo)可以是常量,變量和表達(dá)式,從0 開始。一維數(shù)組的初始化:Int a10=0,1,2,3,4,5,6,7,8,9;可以只給部分元素賦值, 當(dāng) 中元素少于元素個(gè)數(shù)時(shí),系統(tǒng)自動(dòng)給前面元素賦值,其余元素自動(dòng)賦0。Int a10=1,2,3,4,5;只能給逐個(gè)元素賦值, 而不能給數(shù)組整體賦值。給十個(gè)元素

23、全部賦 3 ,只能寫為:int a10=3,3,3,3,3,3,3,3,3,3;而不能寫為: int a10=3;在定義數(shù)組時(shí),若要給全部元素賦值,可以省略數(shù)組元素的長度。如: int a5=1,2,3,4,5;可寫為: int a=1,2,3,4,5;二維數(shù)組的定義:類型 變量名 常量表達(dá)式 1 常量表達(dá)式2二位數(shù)組的使用:數(shù)組名 下標(biāo) 1 下標(biāo) 2數(shù)組中元素順序:C語言中,二維數(shù)組是按行儲(chǔ)存的。i nt a34a00a01a02a03a10a11a12a13a20a21a22a23二維數(shù)組的初始化:Int a53=80,75,92, 61,65,71,59,63,70, 85,87,90,

24、 76,77,85;如對(duì)全部元素賦值,行下表可以省略,但列下表不能省略。inta33=1,2,3,4,5,6,7,8,9;可以寫為:inta3=1,2,3,4,5,6,7,8,9;字符數(shù)組: char c10;字符數(shù)組的初始化: 如果初始值小于數(shù)組長度,則將這些字符賦給數(shù)組中前面的那些元素,其余元素自動(dòng)定位空字符。字符 0 作為字符串的結(jié)束標(biāo)志。字符串處理函數(shù):輸入字符串到字符數(shù)組。scanf (”%s” , 字符數(shù)組名) ;gets (字符數(shù)組名) ;char st20; gets(st);scanf( “ %s” , st);把字符數(shù)組中存放的字符串輸出:printf( “ %s” , 字

25、符數(shù)組名 )puts( 字符數(shù)組名 )charst20=” China ”puts(st); printf(“ %s” , st);#includestract( 字符串1 ,字符串2)把字符串 2 鏈接到字符串 1 后面。Strcpy( 字符串1 ,字符串2)把字符串 2 的內(nèi)容拷貝的字符串 1(覆蓋)strcmp (字符串 1,字符串 2)按照 ASCII 碼順序比較兩個(gè)字符串, 返回比較結(jié)果。 TOC o 1-5 h z 字符串1=字符串2 ,返回值=0;字符串1字符串2 ,返回值0;字符串1字符串2 ,返回值num 來代替。結(jié)構(gòu)體變量做函數(shù)參數(shù):用結(jié)構(gòu)體變量的成員作參數(shù):例如,用 st

26、u1.num 或 作函數(shù)實(shí)參,將實(shí)參值傳給形參用結(jié)構(gòu)體變量做參數(shù):用結(jié)構(gòu)體變量做實(shí)參時(shí), 將結(jié)構(gòu)體變量所占的內(nèi)存單元的內(nèi)容全部按順序傳給形參, 形參也必須是同類型的結(jié)構(gòu)體變量。用指向結(jié)構(gòu)體變量:指針做實(shí)參, 將結(jié)構(gòu)體變量的地址傳給形參。八 指針內(nèi)存單元的地址稱之為指針。變量A中存放變量B的地址,稱A是B的指針,即 A 指向 B.定義指針變量:Type *nametype可以時(shí)C語言中的任何一種類型。指針運(yùn)算符:&一元運(yùn)算符,返回變量的內(nèi)存地址。* 一元運(yùn)算符,返回指針?biāo)赶蜃兞康闹?。指針指向變量:Int a;Int *p;P=&a;指針賦值:與其他變量一樣,指針變量也可以出

27、現(xiàn)在賦值語句中, 將一個(gè)指針變量的值賦給另一個(gè)指針變量。指針運(yùn)算:+和 -Int *p , 當(dāng)前 p 的值為 2000,由于整型數(shù)占4個(gè)字節(jié),p+的值將變成2004, p-值將變?yōu)?1996.p 每遞增一次就指向下一個(gè)整形數(shù),遞減時(shí)也一樣。指針比較:int *p=10,*q=20;if(pq)比 較的是兩個(gè)指針?biāo)赶虻膬?nèi)存地址的大小指針與數(shù)組:指針與數(shù)組是緊密相連的。一個(gè)變量有地址,一個(gè)數(shù)組包含若干個(gè)元素,每個(gè)元素都有相應(yīng)地址,指針變量可以指向數(shù)組元素。Int a10;數(shù)組名 a 其實(shí)就是一個(gè)地址值,記錄的數(shù)組開始的地址,即 a0 地址。通過指針引用數(shù)組元素:(1 ) 下標(biāo)法,如ai形式(2)指針法,如 *(a+i)或*(p+i)指針數(shù)組:樣構(gòu)成數(shù)組。指針可以像任何數(shù)據(jù)類型Int *x10定義的是一個(gè)包含10 個(gè)整型指針的數(shù)組。Ex: 要將變量 a 的地址給數(shù)組中的第三個(gè)元素。x2=&a;a 的值為: *x2多級(jí)間指指向指針的指針可以構(gòu)造一個(gè)指針指向另一個(gè)指針,后者指向目標(biāo)值。指針的初值:指針可以看作是一種特殊的變量類型, 沒有賦值的指針是一個(gè)隨機(jī)值,而指針的指向錯(cuò)誤會(huì)帶來嚴(yán)重的錯(cuò)誤。給一個(gè)指針賦初值null , 將使這個(gè)指針為空,即哪也不指。動(dòng)態(tài)內(nèi)存分配:變量都是非

溫馨提示

  • 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)論