等級考試(筆試)雖然知識面比較廣,但不是很深,基礎(chǔ)部分考的是你日常操作的能力,程序設(shè)計多數(shù)是考你的細心。辛辛苦苦準備了大半年,又經(jīng)過2個小時的考場之戰(zhàn),交卷之后還很“自美”,成績單上的“不及格”讓你一時不敢相信自己的眼睛。當對著答案細細“品味”時,你會N次的感嘆……原來“罪魁禍首”是“不細心”。
綜觀這四年來的考題,對容易出錯的典型題例作了匯總和分析,也好給以后參加二級C考試的朋友增加點免疫力吧。本文將分三次刊登。
第一類,審題不清
1.審題時的一字之差。
一定要搞清題意,題目讓我們選擇的是“正確”還是“不正確”的;“能”還是“不能”的;本來要求選出一個錯誤的答案,但題目中沒有“錯誤”字樣,而是說 “……請選出不正確的一項”,一不小心你就可能會把選項中最前面一個“正確”的選為答案,因“正確”的有三個選項,當然覺得很容易,就這樣,“錯誤”輕易地從你的筆尖溜走了。
2.不注意文字部分的要求和說明。
很多時候,為了省時間,上來就去看程序,這樣不僅不能省時間,還會走彎路、出錯誤?纯聪旅娴膬蓚例子吧!
題例1:以下程序中函數(shù)f的功能是將n個字符串,按由大到小的順序進行排序。
#include
void f(char p[][10],int n)
{略}
main()
{char p[][10]={"abc","aabdfg","abbd","dcdbe","cd"};int i;
f(p,5); printf("%d\n",strlen(p[0])); }
程序運行后的輸出結(jié)果是
。ˋ)6 (B)4 (C)5 (D)3
(為了節(jié)省版面,把函數(shù)f的內(nèi)容略去了。)看過文字說明,接著看主函數(shù),就可以鎖定這個字符串是“dcdbe”,而不用花時間去分析函數(shù)f。要注意的是:別把最長的一串當成最大的字符串噢,看上“aabdfg”可就錯了,答案應(yīng)為C。
題例2: 以下程序中給指針p分配三個double型動態(tài)內(nèi)存單元,請?zhí)羁铡?/P>
# include
main ( )
{ double p;
p=(double ) malloc(【 】);
p[0]=1.5;p[1]=2.5;p[2]=3.5;
printf("%f%f%f\n",p[0],p[1],p[2]);}
如果上來就看程序,就會忽略“給指針p分配三個double型動態(tài)內(nèi)存單元”,這里要求“三個”,如果大筆一揮寫出了sizeof(double)可就太冤枉了,其實應(yīng)該是3sizeof(double)。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |