2019C語言知識點總結

2021-10-30 15:25:04 字數 5010 閱讀 6023

型別名int 整型,long 長整型: 用於存放整數,只是數值範圍不同

float 單精度浮點型double 雙精度浮點型:用於存放實數,數值範圍,

精度不同

char字元型:用於存放字元

變數賦值,初始化

int a=3;定義的同時初始化

a=6*9;定義後在程式中進行賦值

變數的值

只有在賦值操作時才會被改變,即將其放在等號左邊時才會改變它的值,

或自增自減操作:a=5,a++,a--,像a+3 並未改變a 的值,只是使用了a

的值而已.

自增自減運算

變數++,++變數,變數--,--變數使變數的值自增1 或自減1

等價於變數=變數+1 變數=變數-1

++,--放於變數前後效果的區別:

當自增自減運算做為表示式的一部分時,++,--放在變數前面是先自增

自減再使用變數的值,放在變數後面則是先使用變數的值,再自增自減。

如x=3; printf(「%d」,++x);則相當於執行了++x; printf(「%d」,x);這樣的操作

所以列印出4

再如x=3; printf(「%d」,x++);則相當於執行了printf(「%d」,x); x++;這樣的操

作,則列印出3,當然最後x 的值還是4。

四、表示式

運算子和運算物件

乙個運算子都有若干個運算物件,如+ 必然要跟兩個運算物件才能進行

加法運算:3+5。c 語言裡稱需要跟n 個運算物件的運算子為n 元運算子。

一元運算子有:!,(型別名)

二元運算子有求餘< , > , <=, >=, = =(等

於), !=(不等於),&&(且) , ||(或)

多元運算子有: ,

運算子的優先順序和結合性

i. 優先順序:同乙個運算物件左右兩邊若同時有兩個運算子,則這兩個運算

符優先順序高的先進行運算。

ii. 結合性:若同乙個運算物件左右兩邊的兩個運算子優先順序相同,則根據

結合性判斷先進行哪個運算,自左自右結合性的先算左邊的運算子,自

右自左的先算右邊的運算子。

iii. 各運算子的優先順序和結合性見p365附錄c

強制型別轉換

格式: (型別名) 表示式。將後跟的表示式的值的資料型別轉換為與圓

括號內的型別名一致的型別。注意型別名一定要用() 括起來。

算術表示式

i. 算術運算子求餘)

ii. 由算術運算子加上運算物件構成算術表示式,如3+3*6-9/2

iii. 值:跟我們小學時學的一樣,就是表示式的計算結果

iv. 整數除以整數結果取整數部分,故1/3 得到的值是0

v. 5%3 結果為2,想想小學除法,求餘得到的是餘數不是商。

賦值表示式

i. 賦值運算子

ii. 賦值表示式:變數=表示式,如x=3+6,x+=6-9,x+=x*=3+4 注意等號

左邊只能是變數

iii. 復合賦值運算子的運算:以/=為例:x/=表示式等價於x=x/(表示式)

iv. 值:=號左邊的變數最終的值

關係表示式

i. 關係運算子:< , > , <=, >=, = =(等於), !=(不等於)

ii. 由關係運算子加上運算物件構成關係表示式,如3>=4, 2==a

iii. 值:滿足相應運算子所指定的關係的值為1,否則為0

邏輯表示式

i. 邏輯運算子:&&(且) , ||(或) , !(非)

ii. 由邏輯運算子加上運算物件構成邏輯表示式,如3&&4, x||!y

iii. 值:滿足相應運算子所指定的關係的值為1,否則為0

iv. 進行||或運算時,若||左邊的表示式值為1,則不再對右邊的表示式

進行運算。

v. 進行&&且運算時,若&&左邊的表示式值為0,則不再對右邊的表示式

進行運算。

逗號表示式

i. 逗號運算子: ,

ii. 用逗號將各種表示式連續起來構成逗號表示式,如3+4,a=9,8*a

iii. 值:組成逗號表示式的各個表示式中的最後乙個的值,如上例為8*a

題目:p7—11~17 p8—18~33

五、輸入輸出函式

scanf(「格式控制串」,變數位址表列);

如scanf(「%d%c%d」,&a,&ch,&b); scanf(「%4f」,&x);

注意:i. 格式控制串可控制擷取使用者輸入的前幾個字元給變數,但不能控制輸入

幾位小數給變數,如不能寫成scanf(「%4.2f」,&x);

ii. 第二個引數給的是位址,即要麼是&+變數名或陣列元素名的形式,要

麼就是乙個陣列名或指標變數名,如int *p,a; p=&a; scanf(「%d」,p);

iii. 考試時注意看題目給你寫好的scanf的格式

1. 若其格式控制串內各格式符用「,」隔開如scanf(「%d,%c,

%d」,&a,&ch,&b);那輸入時也要用逗號隔開,如此例輸入時應:3,+,5

2. 若是這種格式scanf(「%d %d」,&a,&b);則輸入時應:3 5;

3. 若是這種格式scanf(「%d%c%d」,&a,&ch,&b);則輸入時應3+5,若寫成3

+ 5 則a=3,ch=『 』(空格),b=任意值(自己上機執行看看結果)

printf(「格式控制串」,輸出項表列);

如float x=7.5; printf(「%8.2f」,x);此處的意思是將x 列印出來,且佔8 列,

保留兩位小數。自己上機執行看看效果。

常用格式符彙總:

i. %d:輸入輸出整型資料,%ld:輸入輸出長整型資料

ii. %c:輸入輸出字元型資料

iii. %f:輸出單(雙)精度浮點型資料,輸入單精度型資料。

%lf:輸入雙精度型資料

iv. %s:輸入輸出乙個字串,用printf輸出字串時,輸出項書寫時可

為字串常量,或字元陣列名。如printf(「%s」,」hello」);或char

str[10]=」hello」; printf(「%s」,str);

v. %u:輸入輸出無符號整型,%o:輸入輸出八進位制數,

%x:輸入輸出十六進製制數

getchar();

函式呼叫後返回使用者輸入的乙個字元,故需再定義乙個變數來存放這個

字元,即使用時應char c; c=getchar();意思就是接收使用者輸入的乙個字

符,並將其賦值給變數c。

putchar(字元常量或字元變數名);

如char c=』a』; putchar(c);或putchar(『a』);都會向螢幕輸出字元a。

六、c 語言的語句

表示式語句:由表示式末尾加上分號構成。

函式呼叫語句:由函式呼叫表示式加上分號構成。

空語句: ;

選擇結構語句:if 語句switch 語句

迴圈語句:for 語句while 語句do while 語句

復合語句:用花括號{}將以上任意語句括起來構成一條復合語句。

七、c 程式的基本結構

void main()

} main 函式外可寫自定義函式。如

int max()

八、選擇結構語句

if(表示式) 語句1 else 語句2

如果if 語句的圓括號內的表示式值為非0,則執行語句1,值為0 則執行語

句2。i. 表示式可為任意表示式,if 語句執行的實質是判斷表示式的值是否為0

來決定執行語句1 還是語句2。另外請在此處表達嚴重關切,不管是高

手還是菜鳥經常會把判斷兩個數相等的符號「==」寫成了乙個等號「=」

成為了賦值運算,這樣的寫法不會引發編譯錯誤,但結果會與原意大

大不同,所以考試前請再三提醒自己。

ii. 語句1 和語句2 都只能是乙個語句,若要跟多條語句,切記用一對{}

括起來,構成復合語句;也不要隨便在圓括號後加「;」 ,因「 ;」

構成一條空語句,這會使後面跟的語句1 不再屬於if 語句的組成部分。

iii. if 語句的三種結構

1. 單邊: if(表示式) 語句

2. 雙邊:if(表示式) 語句1 else 語句2

3. 多層(重點掌握):

if(表示式1) 語句1

else if(表示式2) 語句2

else if(表示式3) 語句3

… else 語句n

條件運算子表示式1? 表示式2 : 表示式3

若表示式1 的值非0,則取表示式2 的值做為整個表示式的值,否則取表達

式3 的值為整個表示式的值。如3>4? 1:2 該表示式的值為2

switch語句

switch(表示式)

語句執行過程:先計算表示式的值,然後判斷該值與表示式1 到表示式n 中

的哪個相等,若與表示式i 的值相等,則執行表示式i 後的所有語句,當遇

到break;語句時結束整個switch語句的執行。表示式1 到表示式n 的值都

不相等的情況下執行default 後跟的語句。每個case 後可跟多條語句。

九、迴圈結構

for迴圈語句

for(表示式1;表示式2;表示式3) 迴圈體語句

語句執行過程:

1. 計算表示式1

2. 判斷表示式2 的值是否為0,若為0,語句執行結束,若不為0,進入

步驟33. 執行迴圈體語句(需注意的是迴圈體語句只能有乙個語句,若要包含多

個語句要用一對{}括起來,構成一條復合語句,此處也不要隨便加上

「 ; 」,因乙個「;」可構成一條空語句,這會使得後面真正的迴圈體

語句不屬於for 迴圈語句的部分)。進入步驟4

4. 計算表示式3,然後重新進入步驟2

while迴圈語句do while迴圈語句

i. while(表示式) 迴圈體語句

執行過程:

1. 判斷表示式的值是否為非0,若是進入步驟2,否則結束語句執行。

2. 執行迴圈體語句,重新回到步驟1。

ii. do 迴圈體語句while(表示式);

執行過程:

1. 執行迴圈體語句,進入步驟2

C語言知識點總結

char字元型 用於存放字元 變數賦值,初始化 int a 3 定義的同時初始化 a 6 9 定義後在程式中進行賦值 變數的值 只有在賦值操作時才會被改變,即將其放在等號左邊時才會改變它的值,或自增自減操作 a 5,a a 像a 3並未改變a的值,只是使用了a的值而已.自增自減運算 變數 變數,變數...

C語言知識點總結

c語言最重要的知識點 總體上必須清楚的 1 程式結構是三種 順序結構 選擇結構 分支結構 迴圈結構。2 讀程式都要從main 入口,然後從最上面順序往下讀 碰到迴圈做迴圈,碰到選擇做選擇 有且只有乙個main函式。3 計算機的資料在電腦中儲存是以二進位制的形式.資料存放的位置就是他的位址.4 bit...

C語言知識點總結

c語言知識點總結 1 一 常量 2 二 識別符號 2 三 變數 2 四 表示式 3 五 輸入輸出函式 4 六 c語言的語句 5 七 c程式的基本結構 5 八 選擇結構語句 5 if 表示式 語句1 else 語句2 5 條件運算子表示式1?表示式2 表示式3 6 switch語句 6 九 迴圈結構 ...