也談二級(jí)C語言筆試應(yīng)試技巧

字號(hào):

二級(jí)C語言筆試只有選擇題和填空題兩種題型。這兩種題型的解題方法有所不同,考生在備考時(shí)要深化對(duì)基本概念和知識(shí)點(diǎn)的理解,并注重實(shí)踐,同時(shí)要作一些針對(duì)性的練習(xí),特別是歷年真題,從中找出規(guī)律性的東西以及解題技巧。
    一、選擇題   這種類型的題,要求考生從四個(gè)待選答案中選擇一個(gè)正確答案??忌删C合運(yùn)用直選法,排除法等多種方法。但是這類題目考的知識(shí)點(diǎn)往往都比較多且細(xì),容易出錯(cuò),考生在做這類題時(shí),切忌不加分析,一看就選,從而漏掉正確的答案。如2003年9月筆試第49題:   有以下程序   mai( )   { int a[3][3],?p,i;    p=&&a[0][0];    for (i=0;i<9;i++) p[i]=i+1;    printf("%d ",a[1][2]);   }   程序運(yùn)行后的輸出結(jié)果是   (A)3 (B)6 (C)9 (D)2   此題主要考的知識(shí)點(diǎn)有:(1)數(shù)組與指針的關(guān)系;(2)數(shù)組的初始化和數(shù)組元素的引用。在C語言中,數(shù)組與指針有著非常密切的聯(lián)系。任何能用數(shù)組下標(biāo)完成的操作也都可以用指針來實(shí)現(xiàn)。語句“p=&&a[0][0];”使p指向數(shù)組中的第0號(hào)元素,即a[0][0],指針變量p中存放了數(shù)組元素a[0][0]的地址,由于數(shù)組元素在內(nèi)存中是連續(xù)存儲(chǔ)的,因此,我們就可以通過指針變量p訪問數(shù)組中的任何一個(gè)元素。本題中通過“for (i=0;i<9;i++) p[i]=i+1;”語句使a[3][3]={1,2,3,4,5,6,7,8,9},所以a[1][2]=6。這里要特別注意C語言中數(shù)組的下標(biāo)從0開始,不要錯(cuò)選a[1][2]=3。
    二、填空題   填空題主要考查考生對(duì)基礎(chǔ)知識(shí)的準(zhǔn)確理解。對(duì)于這類型的題,考生應(yīng)深刻理解題意,明確題目要求,運(yùn)用相關(guān)知識(shí)做出正確回答。在歷年考試中,考生這部分試題的得分直接決定考試成績(jī)。由于這部分共20個(gè)空,計(jì)40分,有的考生能得35~40分,而有的考生卻得不到10分,直接拉開了最后成績(jī)。在判卷過程中發(fā)現(xiàn)考生常犯的錯(cuò)誤有以下幾個(gè)方面:   1.基礎(chǔ)知識(shí)掌握不扎實(shí),概念理解不準(zhǔn)確。   如2003年9月填空第8題:   main( )   {int a=1,b=3,c=5;    if (c=a+b) printf ("yes ");    else printf("no");   }   題目問程序運(yùn)行后的輸出結(jié)果,答案應(yīng)是yes。因?yàn)椤癷f (c=a+b) printf ("yes ");”中的條件“c=a+b”是一個(gè)賦值語句,c的值為a+b=1+3=4,所以條件為真。而許多考生卻把賦值語句“c=a+b”理解為關(guān)系表達(dá)式“c==a+b”即5=1+3為邏輯假,故答no。   2.答案表述不準(zhǔn)確,會(huì)做的題卻不得分或少得分。   如第12題:   main( )   {int i,n[ ]={0,0,0,0,0};   for(i=1;i<=4;i++)    {n[i]=n[i-1]?2+1;    printf("%d ",n[i]);    }   }問程序運(yùn)行后的輸出結(jié)果是____。答案是“1 3 7 15”許多考生雖然寫對(duì)了但卻在每個(gè)數(shù)字后加了標(biāo)點(diǎn)而不得分如“1,3,7,15”或“1. 3. 7. 15”。   又如第19題:   以下程序的功能是將字符串s中的數(shù)字字符放入d數(shù)組中,最后輸出d中的字符串;例如,輸入字符串:abc123edf456gh,執(zhí)行后輸出:123456。請(qǐng)?zhí)羁眨?  #include   #include   main( )   {char s[80], d[80]; int i, j;   gets(s);&nbs p;  for(i=j=0;s[i]!=’’ ;i++)    if( ) {d[j]=s[i];j++}   d[j]=’’ ;   puts(d);   }   答案應(yīng)是s[i]<=’9’&&&&s[i]>=’0’或s[i]<=48&&&&s[i]>=57而許多考生卻把“>=”,“<=”寫成“≥”,“≤”導(dǎo)致不能得分。   3.注意答題卡的號(hào)碼并不是試題卷上的題號(hào),而是填空的順序號(hào)。許多考生答題時(shí)將答案張冠李戴,位置寫錯(cuò),白白丟了分。
    總之,只要考生能準(zhǔn)確理解基本知識(shí)點(diǎn),善于動(dòng)手動(dòng)腦多練習(xí),舉一反三,觸類旁通,就能從中找出規(guī)律性的東西,輕松通過筆試。