- 相關(guān)推薦
2016計(jì)算機(jī)二級(jí)《C語(yǔ)言》章節(jié)重要考點(diǎn)
下面百分網(wǎng)小編為大家搜索整理了關(guān)于計(jì)算機(jī)二級(jí)《C語(yǔ)言》章節(jié)重要考點(diǎn),歡迎參考學(xué)習(xí),希望對(duì)大家有所幫助!想了解更多相關(guān)信息請(qǐng)持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
第四章循環(huán)結(jié)構(gòu)
【考點(diǎn)1】三種循環(huán)結(jié)構(gòu)
while();do- while();for()三種。三種結(jié)構(gòu)的格式及執(zhí)行順序詳見教材第58、62、64頁(yè)。
b)for 循環(huán)當(dāng)中必須是兩個(gè)分號(hào),千萬(wàn)不要忘記。
c)寫程序的時(shí)候一定要注意,循環(huán)一定要有結(jié)束的條件,否則成了死循環(huán)。
d) do-while()循環(huán)的最后一個(gè)while();的分號(hào)一定不能夠丟。(當(dāng)心上機(jī)改錯(cuò)),do-while
循環(huán)是至少執(zhí)行一次循環(huán)。
【考點(diǎn)2】break與continue
break 和 continue 的差別
記憶方法:
break:是打破的意思,(破了整個(gè)循環(huán))所以看見break 就退出這一層循環(huán)。
continue: 是繼續(xù)的意思,是要結(jié)束本次循環(huán),就是循環(huán)體內(nèi)剩下的語(yǔ)句不再執(zhí)行,跳到循環(huán)開始,然后判斷循環(huán)條件,進(jìn)行新一輪的循環(huán)。
【考點(diǎn)3】循環(huán)的嵌套
就是有循環(huán)里面還有循環(huán),這種比較復(fù)雜,要一層一層一步一步耐心的計(jì)算,一般只考查兩層嵌套,循環(huán)嵌套通常是處理二維數(shù)組。
循環(huán)結(jié)構(gòu)是重點(diǎn),筆試所占分值一般在13分左右,在上機(jī)考試中也是必考點(diǎn),應(yīng)用性很強(qiáng)。要求學(xué)員重點(diǎn)理解并多加練習(xí),領(lǐng)會(huì)掌握。
第五章函數(shù)
【考點(diǎn)1】函數(shù)的定義
函數(shù):是具有一定功能的一個(gè)程序塊;是C 語(yǔ)言的基本組成單位。
函數(shù)的首部為:函數(shù)類型 函數(shù)名(類型1 形參1,類型2 形參2,……)。在函數(shù)定義中不可以再定義函數(shù),即不能嵌套定義函數(shù)。函數(shù)類型默認(rèn)為int型。
【考點(diǎn)2】庫(kù)函數(shù)
調(diào)用C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)時(shí)要包含include命令,include命令行以#開頭,后面是“”或<>括起來(lái)的后綴為”.h”的頭文件。以#開頭的一行稱為編譯預(yù)處理命令行,編譯預(yù)處理不是C語(yǔ)言語(yǔ)句,不加分號(hào),不占運(yùn)行時(shí)間。
【考點(diǎn)3】函數(shù)的返回值
函數(shù)通過(guò)return語(yǔ)句返回一個(gè)值,返回的值類型與函數(shù)類型一樣。return語(yǔ)句只執(zhí)行一次,執(zhí)行完或函數(shù)體結(jié)束后退出函數(shù)。
【考點(diǎn)4】函數(shù)的聲明
函數(shù)要“先定義后調(diào)用”,或“先聲明再調(diào)用后定義”。函數(shù)的聲明一定要有函數(shù)名、函數(shù)返回值類型、函數(shù)參數(shù)類型,但不一定要有形參的名稱。
【考點(diǎn)5】函數(shù)的調(diào)用
程序從上往下執(zhí)行,當(dāng)碰到函數(shù)名后,把值傳給調(diào)用函數(shù),當(dāng)程序得到了返回值或調(diào)用函數(shù)結(jié)束,再順序往下執(zhí)行。
【考點(diǎn)6】函數(shù)的參數(shù)及值傳遞
形式參數(shù)簡(jiǎn)稱形參,是定義函數(shù)時(shí)函數(shù)名后面括號(hào)中的參數(shù)。實(shí)在參數(shù)簡(jiǎn)稱實(shí)參,是調(diào)用函數(shù)時(shí)函數(shù)名后面括號(hào)中的參數(shù)。實(shí)參和形參分別占據(jù)不同的存儲(chǔ)單元。實(shí)參向形參單向傳遞數(shù)值。
“傳值”與“傳址”的區(qū)別:傳數(shù)值的話,形參的變化不會(huì)改變實(shí)參的變化。傳地址的話,形參的變化就有可能改變實(shí)參所對(duì)應(yīng)的量。(考試的重點(diǎn))
【考點(diǎn)7】函數(shù)的遞歸調(diào)用
函數(shù)直接或間接地調(diào)用自己稱為函數(shù)的遞歸調(diào)用。遞歸調(diào)用必須有一個(gè)明確的結(jié)束遞歸的條件。在做遞歸題時(shí)可把遞歸的步驟一步步寫下來(lái),不要弄顛倒了。
【考點(diǎn)8】要求掌握的庫(kù)函數(shù)
sqrt()算術(shù)平方根函數(shù),fabs()絕對(duì)值函數(shù),sin()正弦函數(shù),sin(3.14159/180*30);,pow()冪函數(shù),23是由pow(2,3)表示的。
第六章指針
【考點(diǎn)1】指針變量
指針變量是用來(lái)存儲(chǔ)地址的,而一般變量是存儲(chǔ)數(shù)值的。指針變量可指向任意一種數(shù)據(jù)類型,但不管它指向的數(shù)據(jù)占用多少字節(jié),一個(gè)指針變量占用四個(gè)字節(jié)。
【考點(diǎn)2】指針變量的定義
格式為:類型名 *指針變量名。二維指針int **p;可以理解為基類型為(int *)類型。
【考點(diǎn)3】指針變量的初始化
指針變量在使用前必須要初始化,把一個(gè)具體的地址賦給它,否則引用時(shí)會(huì)有副作用,如果不指向任何數(shù)據(jù)就賦“空值”NULL。
指針變量?jī)煞N初始化
方法一:int a=2,*p=&a;(定義的同時(shí)初始化)
方法二:int a=2,*p; (定義之后初始化)
p=&a;
【考點(diǎn)4】指針變量的引用
&是取地址符,*是間接訪問(wèn)運(yùn)算符,它們是互逆的兩個(gè)運(yùn)算符。在指針變量名前加間接訪問(wèn)運(yùn)算符就等價(jià)它所指向的量。
【考點(diǎn)5】指針的運(yùn)算
int *p 中 *p 和p 的差別:
*p 可以當(dāng)做變量來(lái)用;*的作用是取后面地址p 里面的數(shù)值
p 是當(dāng)作地址來(lái)使用。
*p++ 和(*p)++的之間的差別:改錯(cuò)題目中很重要
*p++是地址會(huì)變化。
(*p)++ 是數(shù)值會(huì)要變化。
三名主義:(考試的重點(diǎn))
數(shù)組名:表示第一個(gè)元素的地址。數(shù)組名不可以自加,他是地址常量名。(考了很多次)
函數(shù)名:表示該函數(shù)的入口地址。
字符串常量名:表示第一個(gè)字符的地址。
考試重要的話語(yǔ):
指針變量是存放地址的。并且指向哪個(gè)就等價(jià)哪個(gè),所有出現(xiàn)*p 的地方都可以用它等價(jià)的代替指向的變量。
例如:int a=2,*p=&a;
*p=*p+2;
(由于*p 指向變量a,所以指向哪個(gè)就等價(jià)哪個(gè),這里*p 等價(jià)于a,可以相當(dāng)于是a=a+2)
第七章數(shù)組
【考點(diǎn)1】數(shù)組的定義
數(shù)組是一組具有相同類型的數(shù)據(jù)的集合,這些數(shù)據(jù)稱為數(shù)組元素。格式為:類型名 數(shù)組名[常量表達(dá)式]。數(shù)組的所占字節(jié)數(shù)為元素個(gè)數(shù)與基類型所占字節(jié)數(shù)的乘積。
【考點(diǎn)2】數(shù)組的初始化
第一維長(zhǎng)度可以不寫,其它維必須寫。
int a[]={1,2};合法,
int a[][3]={2,3,4};合法,
int a[2][]={2,3,4};非法。
數(shù)組初始化元素值默認(rèn)為0,沒(méi)有初始化元素值為隨機(jī)。如在int a[5]={0,1,2};中,元素a[4]值為0;而在int a[5];中,元素a[4]值為一個(gè)不確定的隨機(jī)數(shù)。
【考點(diǎn)3】元素的引用
數(shù)組元素的下標(biāo)從0開始,到數(shù)組長(zhǎng)度減1結(jié)束。所以int a[5];中數(shù)組最后一個(gè)元素是a[4]。要把數(shù)組元素看作一個(gè)整體,可以把a(bǔ)[4]當(dāng)作一個(gè)整型變量。
【考點(diǎn)4】二維數(shù)組
數(shù)組a[2][3]={1,2,3,4,5,6};中含6個(gè)元素,有2行3列。第一行為a[0]行,第2行為a[1]行,a[0]、a[1]叫行首地址,是地址常量。*(a[0]+1)是第一行第一個(gè)元素往后跳一列,即元素a[0][1]值為2,*(a[0]+3)是第一行第一個(gè)元素往后跳三個(gè),即元素a[1][0]值為4。
【考點(diǎn)5】行指針
是一個(gè)指針變量,占四個(gè)字節(jié),行指針指向一行連續(xù)數(shù)據(jù),形式為:int (*p)[2];,p只能存放含有兩個(gè)整型元素的一維數(shù)組的首地址。注意(*p)兩邊的小括號(hào)不能省略,否則就成了指針數(shù)組,是若干指針元素的集合。
【考點(diǎn)6】數(shù)組名
數(shù)組名是數(shù)組的首地址。數(shù)組名不能單獨(dú)引用,不能通過(guò)一個(gè)數(shù)組名代表全部元素。數(shù)組名是地址常量,不能對(duì)數(shù)組名賦值,所以a++是錯(cuò)誤的。但數(shù)組名可以作為地址與一個(gè)整數(shù)相加得到一個(gè)新地址。
【考點(diǎn)7】元素形式的轉(zhuǎn)換
助記:“脫衣服法則”a[2]變成*(a+2),a[2][3]變成*(a+2)[3]再可變成*(*(a+2)+3)。這個(gè)思想很重要!
二維數(shù)組做題目的技巧:
如果有 a[3][3]={1,2,3,4,5,6,7,8,9}這樣的題目。
步驟一:把他們寫成: 第一列 第二列 第三列
a[0] 1 2 3 ->第一行
a[1] 4 5 6 —>第二行
a[2] 7 8 9 ->第三行
步驟二:這樣作題目間很簡(jiǎn)單:
*(a[0]+1)我們就知道是第一行的第一個(gè)元素往后面跳一列,那么這里就是a[0][1]元素,
所以是1。
*(a[1]+2)我們就知道是第二行的第一個(gè)元素往后面跳二列。那么這里就是a[1][2]元素,
所以是 6。
一定記。褐灰嵌S數(shù)組的題目,一定是寫成如上的格式,再去做題目,這樣會(huì)比較簡(jiǎn)單。
兩種重要的數(shù)組長(zhǎng)度:
char a[]={‘a’,’b’,’c’}; 數(shù)組長(zhǎng)度為3,字符串長(zhǎng)度不定。sizeof(a)為3。
char a[5]={ ‘a’,’b’,’c’} 數(shù)組長(zhǎng)度為5,字符串長(zhǎng)度3。sizeof(a)為5。
第八章字符串
【考點(diǎn)1】字符串常量及表示
字符串常量是由雙引號(hào)括起來(lái)的一串字符,如”ABC”。在存儲(chǔ)字符串時(shí),系統(tǒng)會(huì)自動(dòng)在其尾部加上一個(gè)空值’\0’,空值也要占用一個(gè)字節(jié),也就是字符串”ABC”需要占四個(gè)字節(jié)。
【考點(diǎn)2】字符數(shù)組
C語(yǔ)言沒(méi)有字符串變量,只能采用字符數(shù)組來(lái)存儲(chǔ)字符串。數(shù)組的大小應(yīng)該比它將要實(shí)際存放的最長(zhǎng)字符串多一個(gè)元素,從而存放’\0’。
【考點(diǎn)3】字符串賦值
字符串賦值的兩種形式:
char str[]=“Hello!”;
或char *p;p=“Hello!”;,
但不能用下面的形式:char str[10];str=”Hello”;因?yàn)閟tr是一個(gè)地址常量,不能進(jìn)行賦值操作。
【考點(diǎn)4】字符串的輸入與輸出
可以用scanf和printf函數(shù),如scanf(”%s”,str);,也可用專門處理字符串的兩個(gè)函數(shù)gets和puts函數(shù),還可以對(duì)字符數(shù)組逐個(gè)元素進(jìn)行賦值,但一定要在最后賦一個(gè)’\0’。使用gets函數(shù)可以接收空格,使用puts函數(shù)在最后輸出一個(gè)換行。
scanf 和 gets 的數(shù)據(jù):
如果輸入的是 good good study!
那么 scanf(“%s”,a); 只會(huì)接收 good. 考點(diǎn):不可以接收空格。
gets(a); 會(huì)接收 good good study! 考點(diǎn):可以接收空格。
【考點(diǎn)5】字符串函數(shù)
要掌握的四個(gè)字符串函數(shù):字符串拷貝函數(shù)strcpy(),求字符串長(zhǎng)度函數(shù)strlen(),字符串鏈接函數(shù)strcat(),字符串比較函數(shù)strcmp()。使用這些函數(shù)需在預(yù)處理部分包含頭文件”string.h”。
字符串長(zhǎng)度要小于字符數(shù)組的長(zhǎng)度,例:char str[10]=”Hello”;sizeof(str)的值為10(數(shù)組長(zhǎng)度),strlen(str)的值為5(字符串長(zhǎng)度)。這些函數(shù)是考試常用到的函數(shù),大家一定要熟練應(yīng)用這幾個(gè)函數(shù)。
第九章文件
【考點(diǎn)1】文件類型指針
文件指針是一個(gè)指向結(jié)構(gòu)體類型的指針,定義格式為:FILE *指針變量名。在使用文件時(shí),都需要先定義文件指針。
【考點(diǎn)2】文本文件與二進(jìn)制文件
文本形式存放的是字符的ASCII碼,二進(jìn)制形式存放的是數(shù)據(jù)的二進(jìn)制。例如“100”如果是文本形式就是存儲(chǔ)’1’、 ’0’、 ’0’三個(gè)字符的ASCII碼(00110001 00110000 00110000),如果是二進(jìn)制形式就把100轉(zhuǎn)化成二進(jìn)制(01100100)。
【考點(diǎn)3】打開文件
文件的打開形式:
FILE *fp;
fp=fopen(“c:\\lab.c”,”rb”);。
fopen函數(shù)的前面一部分為文件名,后面一部分為文件的使用方式。打開方式見教材第116頁(yè),其中r代表讀,w代表寫,a代表添加,b代表二進(jìn)制位的。
【考點(diǎn)4】文件函數(shù)
判斷文件結(jié)束feof函數(shù),移動(dòng)文件指針位置fseek函數(shù),獲得文件位置ftell函數(shù),文件位置移到開頭rewind函數(shù),文件字符輸入輸出fgetc函數(shù)和fputc函數(shù),文件輸入輸出fscanf函數(shù)和fprintf函數(shù),文件字符串輸入輸出fgets函數(shù)和fputs函數(shù),讀寫二進(jìn)制文件fread函數(shù)和fwrite函數(shù)。
以上函數(shù)要求知道格式會(huì)用,清楚是用于二進(jìn)制文件還是文本文件。上課時(shí)候講的文件這一章的題目要做一遍,一定要做,基本上考試的都會(huì)在練習(xí)當(dāng)中。
第十章對(duì)C語(yǔ)言的深入探討
【考點(diǎn)1】編譯預(yù)處理
凡以#開頭的這一行,都是編譯預(yù)處理命令行,編譯預(yù)處理不加分號(hào),不占運(yùn)行時(shí)間。宏替換僅是簡(jiǎn)單的文本替換,如#define f(x) (x)*(x)和#define f(x) x*x替換f(2+2)時(shí)就有區(qū)別,前者展開為(2+2)*(2+2),后者為2+2*2+2。
如果源文件f2.c中有#include”f1.c”可以理解為把源文件f1.c原樣包含到f2.c中,使f1.c和f2.c融合到一起成為一個(gè)C程序編譯。所以一個(gè)C程序必有主函數(shù),但一個(gè)C源文件未必有主函數(shù)。
【考點(diǎn)2】標(biāo)識(shí)符作用域
局部變量是在函數(shù)內(nèi)或復(fù)合語(yǔ)句內(nèi)定義的變量,作用域?yàn)槎x它的函數(shù)內(nèi)。局部變量有三種類型:自動(dòng)auto,寄存器register和靜態(tài)static。
自動(dòng)變量隨著函數(shù)的使用與否創(chuàng)建消失;寄存器變量分配在cpu中,沒(méi)有內(nèi)存地址;靜態(tài)變量占用固定存儲(chǔ)單元,在程序執(zhí)行過(guò)程不釋放,直到程序運(yùn)行結(jié)束。
全局變量是在函數(shù)外定義的變量,作用域從定義它的位置到整個(gè)源文件結(jié)束為止,生存期為整個(gè)程序運(yùn)行期間。全局變量都是靜態(tài)變量。
【考點(diǎn)3】動(dòng)態(tài)存儲(chǔ)分配
malloc(size)用來(lái)創(chuàng)建size個(gè)字節(jié)的連續(xù)存儲(chǔ)空間,返回值類型為void *型。malloc函數(shù)常用于動(dòng)態(tài)創(chuàng)建鏈表結(jié)點(diǎn),如int *p; p=(int *)malloc(sizeof(int));。
calloc(n,size)創(chuàng)建n個(gè)同一類型的連續(xù)存儲(chǔ)空間,可以理解為n個(gè)malloc。
int *p; p=(int *) calloc (10,sizeof(int));。p指向首地址。
free(p)釋放動(dòng)態(tài)分配的存儲(chǔ)單元。
【考點(diǎn)4】main函數(shù)的參數(shù)
還有main(int argc,char **argv) {}
這種含有參數(shù)的題目,是很呆板的題目。第一個(gè)參數(shù)是表示輸入的字符串的數(shù)目,第二個(gè)參數(shù)是指向存放的字符串。
【考點(diǎn)5】函數(shù)指針
函數(shù)指針的用法(*f)()記住一個(gè)例子:
int add(int x, int y)
{....}
main()
{ int (*f)();
f=add;
}
賦值之后:合法的調(diào)用形式為
1、add(2,3);
2、f(2,3);
3、(*f)(2,3)
第十一章結(jié)構(gòu)體和共用體
【考點(diǎn)1】結(jié)構(gòu)體類型的說(shuō)明
結(jié)構(gòu)體是若干個(gè)類型數(shù)據(jù)的集合,
結(jié)構(gòu)體類型說(shuō)明格式:
struct 類型名 {類型1 成員名1;類型2 成員名2;……};,以上整個(gè)部分是一個(gè)數(shù)據(jù)類型,與整型的int是同樣地位?捎胻ypedef把結(jié)構(gòu)體類型替換成一個(gè)只有幾個(gè)字母的簡(jiǎn)短標(biāo)識(shí)符。
【考點(diǎn)2】結(jié)構(gòu)體變量的定義
結(jié)構(gòu)體變量是用說(shuō)明的結(jié)構(gòu)體類型所定義的一個(gè)變量,與結(jié)構(gòu)體類型不是一回事。一個(gè)結(jié)構(gòu)體變量所占字節(jié)數(shù)為其所有成員所占字節(jié)數(shù)之和。如struct stu{char name[10];int age;} a,b;則表明定義了兩個(gè)結(jié)構(gòu)體變量a,b,每個(gè)變量占14個(gè)字節(jié)。a,b與int i,j;中的變量i,j是同樣地位。typedef 考的很多(教材150頁(yè)例6)。
【考點(diǎn)3】結(jié)構(gòu)體成員的引用
引用成員可用以下3種方式:(1)結(jié)構(gòu)體變量名.成員名;(2)指針變量名->成員名:(3)(*指針變量名).成員名。點(diǎn)(.)稱為成員運(yùn)算符,箭頭(->)稱為結(jié)構(gòu)指向運(yùn)算符。
【考點(diǎn)5】共用體
共用體的使用格式與結(jié)構(gòu)體相似,共用體定義的關(guān)鍵字為union,共用體所占字節(jié)數(shù)是所有成員中字節(jié)數(shù)最大的那個(gè)。
union TT
{ int a;
char ch[2];} t1 ;
main()
{t1.a=0x1234;
printf("%x\n",t1.ch[0] );
printf("%x\n",t1.ch[1] );}
考點(diǎn)一: sizeof (struct TT) = 2;
考點(diǎn)二: TT t1 ; t1.a=0x1234;
那么 ch[0]=0x 34; ch[1]=0x12
7)結(jié)構(gòu)體和共用體以及鏈表要掌握最簡(jiǎn)單的。typedef 考的很多,而且一定要知道如何引用
結(jié)構(gòu)體中的各個(gè)變量,鏈表中如何填加和刪除節(jié)點(diǎn),以及何如構(gòu)成一個(gè)簡(jiǎn)單的鏈表,一定記
住鏈表中的節(jié)點(diǎn)是有兩個(gè)域,一個(gè)放數(shù)值,一個(gè)放指針。
【考點(diǎn)4】鏈表
鏈表是由一個(gè)個(gè)結(jié)點(diǎn)構(gòu)成的,一個(gè)結(jié)點(diǎn)就是一個(gè)結(jié)構(gòu)體變量。每個(gè)結(jié)點(diǎn)可以分為數(shù)據(jù)域與指針域兩個(gè)部分,數(shù)據(jù)域用來(lái)存放要存儲(chǔ)的數(shù)據(jù),指針域用來(lái)指向下一個(gè)結(jié)點(diǎn)。鏈表是考試中的難點(diǎn),在C語(yǔ)言和公共基礎(chǔ)部分都會(huì)考到,要掌握,鏈表中如何增加和刪除節(jié)點(diǎn)(每年都考),以及何如構(gòu)成一個(gè)簡(jiǎn)單的鏈表,一定記住鏈表中的節(jié)點(diǎn)是有兩個(gè)域,一個(gè)放數(shù)值,一個(gè)放指針。(教材162頁(yè)例2一定要看懂)
【計(jì)算機(jī)二級(jí)《C語(yǔ)言》章節(jié)重要考點(diǎn)】相關(guān)文章:
計(jì)算機(jī)二級(jí)《C語(yǔ)言》重要考點(diǎn)復(fù)習(xí)05-07
最新計(jì)算機(jī)二級(jí)《C語(yǔ)言》重要考點(diǎn)08-23
2016計(jì)算機(jī)二級(jí)《C語(yǔ)言》重要考點(diǎn)10-28
2017計(jì)算機(jī)二級(jí)《C語(yǔ)言》重要考點(diǎn)復(fù)習(xí)07-30
全國(guó)計(jì)算機(jī)二級(jí)考試《C語(yǔ)言》重要考點(diǎn)09-01
2017計(jì)算機(jī)二級(jí)《C語(yǔ)言》5、6章重要考點(diǎn)10-12
C語(yǔ)言重要考點(diǎn)分析10-23