首頁 - 網(wǎng)校 - 萬題庫 - 美好明天 - 直播 - 導(dǎo)航

2018年全國計(jì)算機(jī)二級(jí)考試C語言?贾R(shí)點(diǎn)歸納

來源:考試吧 2018-01-03 14:44:30 要考試,上考試吧! 萬題庫
“2018年全國計(jì)算機(jī)二級(jí)考試C語言常考知識(shí)點(diǎn)歸納”供考生參考。更多計(jì)算機(jī)等級(jí)考試復(fù)習(xí)資料等信息請(qǐng)?jiān)L問考試吧計(jì)算機(jī)等級(jí)考試網(wǎng)。

  總體上必須清楚的

  1)程序結(jié)構(gòu)是三種: 順序結(jié)構(gòu) , 循環(huán)結(jié)構(gòu)(三個(gè)循環(huán)結(jié)構(gòu)), 選擇結(jié)構(gòu)(if 和 switch)

  2)讀程序都要從main()入口, 然后從最上面順序往下讀(碰到循環(huán)做循環(huán),碰到選擇做選擇)。

  3)計(jì)算機(jī)的數(shù)據(jù)在電腦中保存是以 二進(jìn)制的形式. 數(shù)據(jù)存放的位置就是 他的地址.

  4)bit是位 是指為0 或者1。 byte 是指字節(jié), 一個(gè)字節(jié) = 八個(gè)位.

  5)一定要記住 二進(jìn)制如何劃成 十進(jìn)制。

  概念常考到的

  1)、編譯預(yù)處理不是C語言的一部分,不再運(yùn)行時(shí)間。C語言編譯的程序稱為源程序,它以ASCII數(shù)值存放在文本文件中。

  2)、每個(gè)C語言程序中main函數(shù)是有且只有一個(gè)。

  3)、在函數(shù)中不可以再定義函數(shù)。

  4)、算法的是一定要有輸出的,他可以沒有輸入。

  5)、break可用于循環(huán)結(jié)構(gòu)和switch語句。

  6)、逗號(hào)運(yùn)算符的級(jí)別最低。

  第一章

  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.333×10-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

  \b 退格(BS) 008

  \f 換頁(FF) 012

  \n 換行(LF) 010

  \r 回車(CR) 013

  \t 水平制表(HT) 009

  \v 垂直制表(VT) 011

  \\ 反斜杠 092

  \? 問號(hào)字符 063

  \' 單引號(hào)字符 039

  \" 雙引號(hào)字符 034

  \0 空字符(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: 一定要記住,

  例3: 在沒有舍去數(shù)據(jù)的時(shí)候,>右移一位表示除以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 = getchar() 是沒有參數(shù)的,從鍵盤得到你輸入的一個(gè)字符給變量a。

  putchar(‘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 語句

  else 是與最接近的if且沒有else的相組合的。

  4)條件表達(dá)式:

  表達(dá)式1 ?表達(dá)式2 :表達(dá)式3

  注意是當(dāng)非0時(shí)候是表達(dá)式2的數(shù)值,當(dāng)為0是就是表達(dá)式2的數(shù)值。

  考試口訣:真前假后。

  5)switch語句:

  a)一定要注意有break 和沒有break的差別,沒有break時(shí)候,只要有一個(gè)case匹配了,剩下的都要執(zhí)行,有break則是直接跳出了swich語句。

  b)switch只可以和break一起用,不可以和continue用。

  第四章

  1)三種循環(huán)結(jié)構(gòu):

  a)for(); while(); do- while()三種。

  b)for循環(huán)當(dāng)中必須是兩個(gè)分號(hào),千萬不要忘記。

  c)寫程序的時(shí)候一定要注意,循環(huán)一定要有結(jié)束的條件,否則成了死循環(huán)。

  d) do-while()循環(huán)的最后一個(gè)while();的分號(hào)一定不能夠丟。(當(dāng)心上機(jī)改錯(cuò))

  2) break 和 continue的差別

  記憶方法:

  break:是打破的意思,(破了整個(gè)循環(huán))所以看見break就退出真?zhèn)一層循環(huán)。

  continue:是繼續(xù)的意思,(繼續(xù)循環(huán)運(yùn)算),但是要結(jié)束本次循環(huán),就是循環(huán)體內(nèi)剩下的語句不再執(zhí)行,跳到循環(huán)開始,然后判斷循環(huán)條件,進(jìn)行新一輪的循環(huán)。

  3)嵌套循環(huán)

  就是有循環(huán)里面還有循環(huán),這種比較復(fù)雜,要一層一層一步一步耐心的計(jì)算,一般記住兩層是處理二維數(shù)組的。

  4) while((c=getchar())!=’\n’)和 while(c=getchar() !=’\n’)的差別

  先看a = 3 != 2 和(a=3)!=2 的區(qū)別:

  (!=號(hào)的級(jí)別高于=號(hào) 所以第一個(gè)先計(jì)算 3!=2) 第一個(gè)a的數(shù)值是得到的1;第二個(gè)a的數(shù)值是3。

  考試注意點(diǎn): 括號(hào)在這里的重要性。

  第五章

  函數(shù):是具有一定功能的一個(gè)程序塊;

  1) 函數(shù)的參數(shù),返回?cái)?shù)值(示意圖):

  main()

  {

  int a = 5,b=6,c;

  c = add(a,b);

  printf(“%d”,c);

  }

  調(diào)用函數(shù)

  a,b是實(shí)參

  整個(gè)函數(shù)得到一個(gè)數(shù)值就是

  Add函數(shù)的返回?cái)?shù)值。

  int add ( int x,int y)

  {

  int z;

  z=x+y;

  return z;

  }

  被調(diào)用函數(shù)

  x,y是形式參數(shù)

  函數(shù)返回?cái)?shù)值是整型

  z就是這個(gè)add函數(shù)計(jì)算后得到的結(jié)果,就是函數(shù)返回給主程序的返回?cái)?shù)值。

  程序是在從上往下順序執(zhí)行,當(dāng)碰到了函數(shù)add后,把a(bǔ),b的數(shù)值穿給調(diào)用函數(shù),程序暫時(shí)中斷等待返回?cái)?shù)值。當(dāng)?shù)玫搅朔祷財(cái)?shù)值后,再順序的往下執(zhí)行

  2)一定要注意參數(shù)之間的傳遞

  實(shí)參和形參之間 傳數(shù)值,和傳地址的差別。(考試的重點(diǎn))

  傳數(shù)值的話,形參的變化不會(huì)改變實(shí)參的變化。

  傳地址的話,形參的變化就會(huì)有可能改變實(shí)參的變化。

  3)函數(shù)聲明的考查:

  一定要有:函數(shù)名,函數(shù)的返回類型,函數(shù)的參數(shù)類型。

  不一定要有:形參的名稱。

  第六章

  指針變量的本質(zhì)是用來放地址,而一般的變量是放數(shù)值的。

  int *p 中 *p和p的差別:

  *p可以當(dāng)做變量來用;*的作用是取后面地址p里面的數(shù)值

  p是當(dāng)作地址來使用。

  *p++ 和 (*p)++的之間的差別:改錯(cuò)題目中很重要

  *p++是 地址會(huì)變化。

  (*p)++ 是數(shù)值會(huì)要變化。

  三名主義:(考試的重點(diǎn))

  數(shù)組名:表示第一個(gè)元素的地址。數(shù)組名不可以自加,他是地址常量名。(考了很多次)

  函數(shù)名:表示該函數(shù)的入口地址。

  字符串常量名:表示第一個(gè)字符的地址。

  第七章

  1一維數(shù)組的重要概念:

  對(duì)a[10]這個(gè)數(shù)組的討論。

  1、a表示數(shù)組名,是第一個(gè)元素的地址,也就是元素a[10]的地址。

  2、a是地址常量,所以只要出現(xiàn)a++,或者是a=a+2賦值的都是錯(cuò)誤的。

  3、a是一維數(shù)組名,所以它是列指針,也就是說a+1是跳一列。

  對(duì)a[3][3]的討論。

  1、a表示數(shù)組名,是第一個(gè)元素的地址,也就是元素a[10]的地址。

  2、a是地址常量,所以只要出現(xiàn)a++,或者是a=a+2賦值的都是錯(cuò)誤的。

  3、a是二維數(shù)組名,所以它是行指針,也就是說a+1是跳一行。

  4、a[0]、a[1]、a[2]也都是地址常量,不可以對(duì)它進(jìn)行賦值操作,同時(shí)它們都是列指針,a[0]+1,a[1]+1,a[2]+1都是跳一列。

  5、注意a和a[0] 、a[1]、a[2]是不同的,它們的基類型是不同的。前者是一行元素,后三者是一列元素。

  二維數(shù)組做題目的技巧:

  如果有a[3][3]=這樣的題目。

  步驟一:把他們寫成:

  第一列 第二列 第三列

  a[0]à 1 2 3 ->第一行

  a[1]à 4 5 6—>第二行

  a[2]à 7 8 9->第三行

  步驟二:這樣作題目間很簡單:

  *(a[0]+1)我們就知道是第一行的第一個(gè)元素往后面跳一列,那么這里就是a[0][1]元素,所以是1。

  *(a[1]+2)我們就知道是第二行的第一個(gè)元素往后面跳二列。那么這里就是a[1][2]元素,所以是6。

  一定記。褐灰嵌S數(shù)組的題目,一定是寫成如上的格式,再去做題目,這樣會(huì)比較簡單。

  數(shù)組的初始化,一維和二維的,一維可以不寫,二維第二個(gè)一定要寫

  int a[]= 合法。 int a[][4]=合法。 但int a[4][]=非法。

  二維數(shù)組中的行指針

  int a[1][2];

  其中a現(xiàn)在就是一個(gè)行指針,a+1跳一行數(shù)組元素。 搭配(*)p[2]指針

  a[0],a[1]現(xiàn)在就是一個(gè)列指針。a[0]+1 跳一個(gè)數(shù)組元素。搭配*p[2]指針數(shù)組使用

  還有記住脫衣服法則:

  a[2] 變成 *(a+2) a[2][3]變成 *(a+2)[3]再可以變成 *(*(a+2)+3)

掃描/長按二維碼幫助考試通關(guān)
2018年等考報(bào)考資訊
2018等考各科通關(guān)技巧
2018各科最新預(yù)測試卷
2018等考各科備考資料

微信搜索"考試吧"了解更多考試資訊、下載備考資料

  相關(guān)推薦:

  2018計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間|各地報(bào)名入口|報(bào)名條件

  2018年全國計(jì)算機(jī)等級(jí)考試時(shí)間|教材目錄(2018年版)

  報(bào)名方法|考試內(nèi)容|考試大綱|2018計(jì)算機(jī)等級(jí)考試科目

  歷年真題匯總|考試吧策劃:2018年計(jì)算機(jī)等級(jí)考試報(bào)考指南

0
收藏該文章
0
收藏該文章
文章搜索
萬題庫小程序
萬題庫小程序
·章節(jié)視頻 ·章節(jié)練習(xí)
·免費(fèi)真題 ·?荚囶}
微信掃碼,立即獲取!
掃碼免費(fèi)使用
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
此欄目下沒有文章
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。
Copyright © 2004- 考試吧計(jì)算機(jī)等級(jí)考試網(wǎng) 出版物經(jīng)營許可證新出發(fā)京批字第直170033號(hào) 
京ICP證060677 京ICP備05005269號(hào) 中國科學(xué)院研究生院權(quán)威支持(北京)
在線模擬試題
考證通關(guān)殺器
考試最新資訊
學(xué)
一次通關(guān)技巧