C語言是目前最常用的軟件開發(fā)語言之一,其功能強(qiáng)大,具有悠久的歷史,從C、C++發(fā)展到現(xiàn)在的C#,不斷地得以更新繁衍。在全國計算機(jī)等級考試中有,五個類別使用C語言作為上機(jī)考試內(nèi)容,為各編程語言中應(yīng)用最多的。
理論先行
[被屏蔽廣告]
雖是上機(jī)考試,仍需以理論知識為基礎(chǔ),所以必須將C語言教材從頭到尾學(xué)習(xí)一遍(應(yīng)選擇權(quán)威教材),對C語言的基本概況做到心中有數(shù)。
學(xué)完教材后,選取一些有代表性的編程范例,將其語句逐條理解透徹。同時還須注意一點,看的懂未必等于自己就會編寫,應(yīng)當(dāng)自己嘗試默寫,從而找出知識薄弱點、思維盲點。
要養(yǎng)成一些良好習(xí)慣,比如,代碼書寫格式使用規(guī)范的鋸齒形,盡量使用完整表達(dá)。如果采用簡化方式,雖然不一定影響運(yùn)算結(jié)果,但有的考試評分標(biāo)準(zhǔn)是按答題要點給分,所以還是不省為妙。
以下是學(xué)習(xí)C語言過程中容易出現(xiàn)的問題:
1.函數(shù)、變量使用前未定義。
2.混淆“=”和“= =”。
3.語句后或預(yù)定義的函數(shù)名后漏掉分號。
4.將else拼寫成esle、continue拼寫成contiune。
5.括號搭配錯誤。
6.首地址理解為1。
7. p++與++p區(qū)別不清。
8. break、continue運(yùn)用不當(dāng)。
9.誤將單引號用于字符串常量,將雙引號用于字符常量。
10. else分句中嵌套條件語句時,漏掉了“if”。
上機(jī)實踐
雖然考點、培訓(xùn)點一般都提供模擬上機(jī),但畢竟時間、地點受到限制,不能保證充分的練習(xí)時間,因此很多考生都希望能在自家電腦上進(jìn)行操作實踐,下面具體談?wù)勅绾螌崿F(xiàn)在個人電腦上進(jìn)行練習(xí)的方法。
一、簡易環(huán)境練習(xí)
系統(tǒng)要求:Windows系統(tǒng)
需用軟件:Turbo C 2.0
TC軟件雖然不是標(biāo)準(zhǔn)的Windows程序,但在Windows環(huán)境下依然可以使用。為使軟件處于理想運(yùn)行狀態(tài),運(yùn)行tc.exe后需要做一些設(shè)置:
1.按“漢”按鈕,否則會出現(xiàn)部分亂碼。
2.點擊屬性按鈕,在程序選項卡的“工作目錄”欄中根據(jù)上一命令行填入程序所在目錄,“運(yùn)行”欄選擇最大化,選擇“退出時關(guān)閉”。
設(shè)置好后即可依照練習(xí)冊輸入習(xí)題,進(jìn)行編譯調(diào)試。編程中用到的處理數(shù)據(jù)一般需自建。為了提高效率,可從網(wǎng)上下載習(xí)題。這里應(yīng)留意一些下載習(xí)題中的問題,比如遺漏字符、錄入錯誤等,還有一些不易發(fā)現(xiàn)的情況,像雙引號的字體不標(biāo)準(zhǔn)、文件擴(kuò)展名前的句號成了逗號、甚至一些看似無內(nèi)容的空行中包含著某些ASCII碼,都會影響編程結(jié)果。
二、全真環(huán)境練習(xí)
系統(tǒng)要求:DOS系統(tǒng)
需用軟件:Turbo C 2.0、UCDOS、上機(jī)模擬軟件
經(jīng)過基礎(chǔ)階段學(xué)習(xí)后,再來進(jìn)行針對等級考試的練習(xí),這就需要用到模擬軟件了。市面上模擬軟件很容易買到,其操作界面與正式考試完全一樣,還往往匯集了豐富的題庫和答案、源程序、輸入數(shù)據(jù),并可進(jìn)行自我評分。有的還提供筆試題知識點查詢,介紹考試技巧等。
使用模擬軟件前,應(yīng)先安裝UCDOS(這與真實考試要求一樣,須選5.0以上版本,而且最好采用正式版,否則可能影響軟件使用)。通常情況下在Windows環(huán)境下是無法使用模擬軟件的,經(jīng)過一些專業(yè)設(shè)置后雖可實現(xiàn),但僅限于Windows 9X操作系統(tǒng),而且設(shè)置不當(dāng)易使系統(tǒng)崩潰,所以筆者建議還是在純DOS環(huán)境下使用為妥。
實戰(zhàn)心得
筆者參加的今年上半年考試題目大意如下:要求將一篇英文文章中每個字符的ASCII值按公式f(p)=p 17%256計算,如f(p)的ASCII值小于32或為奇數(shù),則原字符不變,否則予以替代。這道題目需要編寫的程序代碼沒幾行,我寫好后調(diào)試運(yùn)行,一切正常,復(fù)查幾遍也看不出有哪兒不妥。正打算離開考場時,忽然覺得運(yùn)算結(jié)果值得懷疑,根據(jù)題意,經(jīng)過ASCII值計算后的結(jié)果不大可能仍都是常規(guī)字符,因此回過頭來再逐字審查題目,反復(fù)對照編好的程序,焦點集中在了存放f(p)值的變量定義上,難道應(yīng)將“char”改為“unsigned char”?一試,結(jié)果果然不同。
事后查知,char變量值的范圍為-128至+127,unsigned char變量值的范圍為0至255。比如字符“x”的ASCII值為120,按上述公式運(yùn)算后值為248,字符應(yīng)予以替代;如果存放f(p)值的變量定義為char型,值則轉(zhuǎn)換為-8,字符因而不被替代,難怪剛才運(yùn)算結(jié)果顯出全篇常規(guī)字符了。所以說,仔細(xì)嚴(yán)謹(jǐn)?shù)膽?yīng)考作風(fēng)能彌補(bǔ)一些技術(shù)上的不足,有助于臨場發(fā)揮。
友情提示
1.由于使用UCDOS,當(dāng)屏幕下方顯示其狀態(tài)條時,Turbo C中的快捷鍵Alt+F9(調(diào)試編譯)、Alt+F5(查看運(yùn)行結(jié)果)等提示會被屏蔽掉,解決的辦法為按一下右Shift鍵,隱藏UCDOS狀態(tài)條后即可正常使用。值得一提的是,Alt+F9雖然是Turbo C菜單中的Run/Run命令的快捷鍵,但兩者不完全相同:菜單命令包括自動編譯、連接和運(yùn)行程序;而快捷鍵方式卻不包括運(yùn)行程序,自然也就無運(yùn)算結(jié)果,所以即使程序代碼編寫正確,考試成績?nèi)杂锌赡転榱惴帧?/p>
2.雖然一些模擬軟件的習(xí)題也是從國家考試中心發(fā)行的《全國計算機(jī)等級考試上機(jī)考試習(xí)題集》中選取,但正式考試時如遇到練習(xí)過的題目,仍應(yīng)看仔細(xì),其中可能會有“小于”與“大于”之類的一字之別。