- 相關(guān)推薦
C語言知識點(diǎn)講解
豐富的知識能給大家?guī)碡S富的生活,不知道大家對C語言了解多少?以下是小編為大家搜索整理的C語言知識點(diǎn)講解,希望能給大家?guī)韼椭?
C語言知識點(diǎn)講解
第一章
1)合法的用戶標(biāo)識符考查:
合法的要求是由字母,數(shù)字,下劃線組成。有其它元素就錯了。
并且第一個必須為字母或則是下劃線。第一個為數(shù)字就錯了。
關(guān)鍵字不可以作為用戶標(biāo)識符號。main define scanf printf 都不是關(guān)鍵字。迷惑你的地方If是可以做為用戶標(biāo)識符。因?yàn)镮f中的第一個字母大寫了,所以不是關(guān)鍵字。
2)實(shí)型數(shù)據(jù)的合法形式:
2.333e-1 就是合法的,且數(shù)據(jù)是2.333x10-1。
考試口訣:e前e后必有數(shù),e后必為整數(shù)。
3)字符數(shù)據(jù)的合法形式::
'1'是字符占一個字節(jié),"1"是字符串占兩個字節(jié)(含有一個結(jié)束符號)。
'0' 的ASCII數(shù)值表示為48,'a' 的ASCII數(shù)值是97,'A'的ASCII數(shù)值是65。
4) 整型一般是兩個字節(jié), 字符型是一個字節(jié),雙精度一般是4個字節(jié):
考試時候一般會說,在16位編譯系統(tǒng),或者是32位系統(tǒng)。碰到這種情況,不要去管,一樣做題。掌握整型一般是兩個字節(jié), 字符型是一個字節(jié),雙精度一般是4個字節(jié)就可以了。
5)轉(zhuǎn)義字符的考查:
在程序中 int a = 0x6d,是把一個十六進(jìn)制的數(shù)給變量a 注意這里的0x必須存在。
在程序中 int a = 06d, 是一個八進(jìn)制的形式。
在轉(zhuǎn)義字符中,’x6d’才是合法的,0不能寫,并且x是小寫。
‘141’是合法的。
‘108’是非法的,因?yàn)椴豢梢猿霈F(xiàn)8。
轉(zhuǎn)義字符意義 ASCII碼值(十進(jìn)制)
a 響鈴(BEL) 007
退格(BS) 008
f 換頁(FF) 012
換行(LF) 010
回車(CR) 013
水平制表(HT) 009
v 垂直制表(VT) 011
反斜杠 092
? 問號字符 063
' 單引號字符 039
" 雙引號字符 034
空字符(NULL) 000
ddd 任意字符三位八進(jìn)制
xhh 任意字符二位十六進(jìn)制
6)算術(shù)運(yùn)算符號的優(yōu)先級別:
同級別的有的是從左到右,有的是從右到左。
7)強(qiáng)制類型轉(zhuǎn)換:
一定是(int)a 不是 int(a),注意類型上一定有括號的。
注意(int)(a+b)和(int)a+b 的區(qū)別。 前是把a(bǔ)+b轉(zhuǎn)型,后是把a(bǔ)轉(zhuǎn)型再加b。
8)表達(dá)式的考查:
是表達(dá)式就一定有數(shù)值。
賦值表達(dá)式:表達(dá)式數(shù)值是最左邊的數(shù)值,a=b=5;該表達(dá)式為5,常量不可以賦值。
自加、自減表達(dá)式:假設(shè)a=5,++a(是為6), a++(為5);
運(yùn)行的機(jī)理:++a 是先把變量的數(shù)值加上1,然后把得到的數(shù)值放到變量a中,然后再用這
個++a表達(dá)式的數(shù)值為6,而a++是先用該表達(dá)式的數(shù)值為5,然后再把a(bǔ)的數(shù)值加上1為6,
再放到變量a中。 進(jìn)行了++a和a++后在下面的程序中再用到a的話都是變量a中的6了。
考試口訣:++在前先加后用,++在后先用后加。
逗號表達(dá)式:優(yōu)先級別最低 ;表達(dá)式的數(shù)值逗號最右邊的那個表達(dá)式的數(shù)值。
(2,3,4)的表達(dá)式的數(shù)值就是4。
9)位運(yùn)算的考查:
會有一到二題考試題目。
總的處理方法:幾乎所有的位運(yùn)算的題目都要按這個流程來處理(先把十進(jìn)制變成二進(jìn)制再變成十進(jìn)制)。
例1: char a = 6, b;
b = a<<2; 這種題目的計算是先要把a(bǔ)的十進(jìn)制6化成二進(jìn)制,再做位運(yùn)算。
例2: 一定要記住,
例3: 在沒有舍去數(shù)據(jù)的時候,<<左移一位表示乘以2;>>右移一位表示除以2。
10)018的數(shù)值是非法的,八進(jìn)制是沒有8的,逢8進(jìn)1。
11)%符號兩邊要求是整數(shù)。不是整數(shù)就錯了。
12) 兩種取整丟小數(shù)的情況:
1、int a =1.6;
2、(int)a;
第二章
1)printf函數(shù)的格式考查:
%d對應(yīng)整型;%c對應(yīng)字符;%f對應(yīng)單精度等等。寬度的,左對齊等修飾。
%ld對應(yīng) long int;%lf 對應(yīng)double。
2)scanf函數(shù)的格式考察:
注意該函數(shù)的第二個部分是&a 這樣的地址,不是a;
Scanf(“%d%d%*d%d”,&a,&b,&c);跳過輸入的第三個數(shù)據(jù)。
3)putchar ,getchar 函數(shù)的考查:
char a = get) 是沒有參數(shù)的,從鍵盤得到你輸入的一個字符給變量a。
put‘y’)把字符y輸出到屏幕中。
4)如何實(shí)現(xiàn)兩個變量x ,y中數(shù)值的互換(要求背下來)
不可以把 x=y,y=x; 要用中間變量 t=x;x=y;y=t。
5)如何實(shí)現(xiàn)保留三位小數(shù),第四位四舍五入的程序,(要求背下來)
x=(int)(x*1000+0.5)/1000.0
這個有推廣的意義,注意 x = (int)x 這樣是把小數(shù)部分去掉。
第三章
特別要注意:c語言中是用非0表示邏輯真的,用0表示邏輯假的。
1)關(guān)系表達(dá)式:
表達(dá)式的數(shù)值只能為1(表示為真),或0(表示假)
當(dāng)關(guān)系的表達(dá)是為真的時候得到1。如 9>8這個是真的,所以表達(dá)式的數(shù)值就是1;
2)邏輯表達(dá)式:
只能為1(表示為真),或0(表示假)
a) 共有&& || ! 三種邏輯運(yùn)算符號。
b) !>&&>|| 優(yōu)先的級別。
c) 注意短路現(xiàn)象?荚嚤容^喜歡考到。
d) 要表示 x 是比0大,比10小的方法。0
3)if 語句
C語言的最大特點(diǎn)是:功能強(qiáng)、使用方便靈活。
C編譯的程序?qū)φZ法檢查并不象其它高級語言那么嚴(yán)格,這就給編程人員留下“靈活的余地”,但還是由于這個靈活給程序的調(diào)試帶來了許多不便,尤其對初學(xué)C語言的人來說,經(jīng)常會出一些連自己都不知道錯在哪里的錯誤。
1.書寫標(biāo)識符時,忽略了大小寫字母的區(qū)別。
2.忽略了變量的類型,進(jìn)行了不合法的運(yùn)算。
3.將字符常量與字符串常量混淆。
4.忽略了“=”與“==”的區(qū)別。
5.忘記加分號。分號是C語句中不可缺少的一部分,語句末尾必須有分號。
6.多加分號。 復(fù)合語句的花括號后不應(yīng)再加分號,否則將會畫蛇添足。
7.輸入變量時忘記加地址運(yùn)算符“&”。
8.輸入數(shù)據(jù)的方式與要求不符。代碼①scanf("%d%d",&a,&b);輸入時,不能用逗號作兩個數(shù)據(jù)間的分隔符②scanf("%d,%d",&a,&b);C規(guī)定:如果在“格式控制”字符串中除了格式說明以外還有其它字符,則在輸入數(shù)據(jù)時應(yīng)輸入與這些字符相同的字符。
9.輸入字符的格式與要求不一致。在用“%c”格式輸入字符時,“空格字符”和“轉(zhuǎn)義字符”都作為有效字符輸入。
10.輸入輸出的數(shù)據(jù)類型與所用格式說明符不一致。
11.輸入數(shù)據(jù)時,企圖規(guī)定精度。
12.switch語句中漏寫break語句。
13.忽視了while和do-while語句在細(xì)節(jié)上的區(qū)別。
14.定義數(shù)組時誤用變量。
15.在定義數(shù)組時,將定義的“元素個數(shù)”誤認(rèn)為是可使的最大下標(biāo)值。
16.初始化數(shù)組時,未使用靜態(tài)存儲。
17.在不應(yīng)加地址運(yùn)算符&的位置加了地址運(yùn)算符。
18.同時定義了形參和函數(shù)中的局部變量。
c語言公共基礎(chǔ)知識
一、 基本數(shù)據(jù)結(jié)構(gòu)與算法
1. 算法的基本概念;算法復(fù)雜度的概念和意義(時間復(fù)雜度與空間復(fù)雜度)。
2. 數(shù)據(jù)結(jié)構(gòu)的定義;數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu);數(shù)據(jù)結(jié)構(gòu)的圖形表示;線性結(jié)構(gòu)與非線性結(jié)構(gòu)的概念。
3. 線性表的定義;線性表的順序存儲結(jié)構(gòu)及其插入與刪除運(yùn)算。
4. 棧和隊列的定義;棧和隊列的順序存儲結(jié)構(gòu)及其基本運(yùn)算。
5. 線性單鏈表、雙向鏈表與循環(huán)鏈表的結(jié)構(gòu)及其基本運(yùn)算。
6. 樹的基本概念;二叉樹的定義及其存儲結(jié)構(gòu);二叉樹的前序、中序和后序遍歷。
7. 順序查找與二分法查找算法;基本排序算法(交換類排序,選擇類排序,插入類排序)。
二、 程序設(shè)計基礎(chǔ)
1. 程序設(shè)計方法與風(fēng)格。
2. 結(jié)構(gòu)化程序設(shè)計。
3. 面向?qū)ο蟮某绦蛟O(shè)計方法,對象,方法,屬性及繼承與多態(tài)性。
三、 軟件工程基礎(chǔ)
1. 軟件工程基本概念,軟件生命周戎概念,軟件工具與軟件開發(fā)環(huán)境。
2. 結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖,數(shù)據(jù)字典,軟件需求規(guī)格說明書。
3. 結(jié)構(gòu)化設(shè)計方法,總體設(shè)計與詳細(xì)設(shè)計。
4. 軟件測試的方法,白盒測試與黑盒測試,測試用例設(shè)計,軟件測試的實(shí)施,單元測試、集成測試和系統(tǒng)測試。
5. 程序的調(diào)試,靜態(tài)調(diào)試與動態(tài)調(diào)試。
四、 數(shù)據(jù)庫設(shè)計基礎(chǔ)
1. 數(shù)據(jù)庫的基本概念:數(shù)據(jù)庫,數(shù)據(jù)庫管理系統(tǒng),數(shù)據(jù)庫系統(tǒng)。
2. 數(shù)據(jù)模型,實(shí)體聯(lián)系模型及E-R圖,從E-R圖導(dǎo)出關(guān)系數(shù)據(jù)模型。
3. 關(guān)系代數(shù)運(yùn)算,包括集合運(yùn)算及選擇、投影、連接運(yùn)算,數(shù)據(jù)庫規(guī)范化理論。
4. 數(shù)據(jù)庫設(shè)計方法和步驟:需求分析、概念設(shè)計、邏輯設(shè)計和物理設(shè)計的相關(guān)策略。
【C語言知識點(diǎn)講解】相關(guān)文章:
C語言的指針類型講解09-14
C語言if語句的使用講解04-02
C語言入門例題講解10-05
C語言中assert的用法講解09-13
C語言知識點(diǎn)精選09-09
C語言循環(huán)總結(jié)以及實(shí)例講解09-04
C語言指針的長度和類型講解09-16
C語言字符串操作講解10-30