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