顧春華 劉 江 文欣秀
摘要:“C程序設(shè)計(jì)”是高校學(xué)生學(xué)習(xí)計(jì)算機(jī)編程知識最重要的一門課程。本文結(jié)合“C程序設(shè)計(jì)”課程的教學(xué)實(shí)踐和上海市計(jì)算機(jī)等級考試命題的體會,分析了“C程序設(shè)計(jì)”課程學(xué)習(xí)中的問題和譚浩強(qiáng)教授的《C程序設(shè)計(jì)》的特點(diǎn),給出了“C程序設(shè)計(jì)”課程教學(xué)和教材選擇的一些思路。
關(guān)鍵詞:程序設(shè)計(jì)語言;程序調(diào)試;教材;編程能力
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:B
隨著計(jì)算機(jī)應(yīng)用的普及,計(jì)算機(jī)編程能力已經(jīng)不僅僅是計(jì)算機(jī)專業(yè)學(xué)生需要掌握的能力,因而我國高校普遍為大學(xué)生開設(shè)程序設(shè)計(jì)課程。目前主要的程序設(shè)計(jì)課程包括:C/C++程序設(shè)計(jì),VB/VB.NET程序設(shè)計(jì)和Java程序設(shè)計(jì)等。從上海參加計(jì)算機(jī)等級考試的學(xué)生來看,C/C++程序設(shè)計(jì)的學(xué)生占60%,VB/VB.NET程序設(shè)計(jì)占35%,Java程序設(shè)計(jì)占約5%,因此“C程序設(shè)計(jì)”仍然是高校學(xué)生學(xué)習(xí)計(jì)算機(jī)編程知識最重要的一門課程。
盡管C程序設(shè)計(jì)語言問世已經(jīng)三十多年了,但在課程教學(xué)中,很多教師和學(xué)生仍然覺得C程序設(shè)計(jì)語言很難駕馭。那原因是什么呢?作者認(rèn)為這主要是由C程序設(shè)計(jì)語言本身特點(diǎn)決定的。首先,C程序設(shè)計(jì)語言是一種結(jié)構(gòu)化程序設(shè)計(jì)語言,用它進(jìn)行程序設(shè)計(jì)的方法是結(jié)構(gòu)化方法,其思想與我們?nèi)粘I钪刑幚韱栴}的思路有較大的出入;其次,C程序設(shè)計(jì)語言最早是用于開發(fā)系統(tǒng)軟件的,是一種“中級語言”,其語法限制不太嚴(yán)格;第三,C程序設(shè)計(jì)語言中強(qiáng)大的運(yùn)算功能和豐富的數(shù)據(jù)結(jié)構(gòu)(如指針等)對初學(xué)者的邏輯思維能力要求較高,不容易學(xué)懂。針對C程序設(shè)計(jì)語言這樣的特點(diǎn),要學(xué)好這門語言,一本好的教材顯得特別重要。
和學(xué)習(xí)外語一樣,學(xué)習(xí)一門程序設(shè)計(jì)語言的最終目的是能運(yùn)用這種語言來解決實(shí)際問題,因而,程序設(shè)計(jì)課程的教學(xué)和考核也應(yīng)該面向這樣的目標(biāo)。2009年4月,上海市計(jì)算機(jī)等級考試大綱再次進(jìn)行了修訂,對作為二級的主要科目“C程序設(shè)計(jì)”的大綱進(jìn)行了較大的修改:將原來的紙質(zhì)試卷書面考試改為上機(jī)考試,使用“上海市高校計(jì)算機(jī)等級考試通用平臺”進(jìn)行考試,建議使用Microsoft Visual C++ 6.0作為程序開發(fā)環(huán)境;為加強(qiáng)對學(xué)生應(yīng)用C程序設(shè)計(jì)語言解決問題的能力,新增一種題型——程序調(diào)試題。其目的就是引導(dǎo)教師和學(xué)生在提高動手實(shí)踐和實(shí)際應(yīng)用能力的方面下功夫。
對于“C程序設(shè)計(jì)”的推薦參考教材,上海市等級考試二級命題組決定仍舊選擇由譚浩強(qiáng)教授編著、清華大學(xué)出版社出版的《C程序設(shè)計(jì)》。隨著計(jì)算機(jī)技術(shù)的迅猛發(fā)展,上海市等級考試在不斷發(fā)展,譚浩強(qiáng)教授的《C程序設(shè)計(jì)》也從第一版、第二版演變到了第三版,那么,為什么上海市等級考試始終選譚浩強(qiáng)教授的《C程序設(shè)計(jì)》作為“C程序設(shè)計(jì)”科目的參考教材呢?結(jié)合自己的教學(xué)和命題實(shí)踐,我們深刻體會到譚浩強(qiáng)教授編寫的《C程序設(shè)計(jì)》教材有以下三個重要特點(diǎn)。
1由淺入深,通俗易懂
譚浩強(qiáng)教授豐富的教學(xué)經(jīng)驗(yàn)和編寫教材的經(jīng)驗(yàn)在《C程序設(shè)計(jì)》中得到集中體現(xiàn),由淺入深、循序漸進(jìn)的內(nèi)容安排和通俗易懂的寫作風(fēng)格,使《C程序設(shè)計(jì)》非常適合作為程序設(shè)計(jì)的入門級書籍,也推動了中國計(jì)算機(jī)基礎(chǔ)教育的普及和發(fā)展;《C程序設(shè)計(jì)》教材對C語言語法部分、控制結(jié)構(gòu)部分、數(shù)組、指針等的講解都非常流暢,給讀者一氣呵成的信心和欲望。金山公司前總裁兼CEO雷軍曾經(jīng)說過:“是譚浩強(qiáng)讓程序員感到了寫程序就是自己的生命?!?/p>
2概念清晰,融會貫通
《C程序設(shè)計(jì)》針對初學(xué)者的特點(diǎn),精心策劃、準(zhǔn)確定位,使得全書概念清晰、融會貫通;將必要的基礎(chǔ)知識融會貫通到程序設(shè)計(jì)課程中,能給初學(xué)者打下良好的程序基礎(chǔ),對學(xué)生的知識結(jié)構(gòu)建設(shè)以及今后的深造和提高都大有裨益;全書強(qiáng)調(diào)用結(jié)構(gòu)化程序設(shè)計(jì)方法編寫程序,自始至終用完整的程序輸出范例來演示所講的概念,內(nèi)容全面,層次清晰,適用于不同層次的學(xué)習(xí)對象和不同課時的教學(xué)單位,特別是高校計(jì)算機(jī)基礎(chǔ)教學(xué)。
3例題豐富,啟發(fā)思維
《C程序設(shè)計(jì)》全書結(jié)構(gòu)清晰,例題豐富,每章都附有大量習(xí)題,并且有配套的習(xí)題解答,非常有利于學(xué)生復(fù)習(xí)鞏固課上所學(xué)的知識,也便于教師設(shè)計(jì)實(shí)驗(yàn)課的教學(xué)內(nèi)容。譚浩強(qiáng)教授還在書中引導(dǎo)學(xué)生帶著問題學(xué)習(xí)、在啟發(fā)中得到理解、在思維中得到提高、在實(shí)踐中得到認(rèn)知。通
過使用這本教材來學(xué)習(xí)C程序設(shè)計(jì)語言,初學(xué)程序設(shè)計(jì)的學(xué)生可以達(dá)到熟練運(yùn)用C語言進(jìn)行小規(guī)模應(yīng)用開發(fā)的能力。
正是因?yàn)橐陨咸攸c(diǎn),譚浩強(qiáng)教授的《C程序設(shè)計(jì)》把原先很多人認(rèn)為深奧難懂的C語言變?yōu)橹灰邆溆?jì)算機(jī)初級知識的人都能學(xué)會一門程序設(shè)計(jì)語言,能夠使學(xué)生對C語言產(chǎn)生濃厚的學(xué)習(xí)興趣,是學(xué)習(xí)C語言的一本理想教材;也正是這些特點(diǎn),讓我們始終選擇譚浩強(qiáng)教授的《C程序設(shè)計(jì)》作為教材。
參考文獻(xiàn):
[1] 譚浩強(qiáng). C程序設(shè)計(jì)[M]. 3版. 北京:清華大學(xué)出版社,2005.
[2] 龔沛曾,楊志強(qiáng),顧春華,等.大學(xué)計(jì)算機(jī)實(shí)踐能力培養(yǎng)的改革與實(shí)踐[J],中國大學(xué)教育,2008(6).
[3] 奧蘇貝爾. 教育心理學(xué)—認(rèn)知觀點(diǎn)[M]. 北京:人民教育出版社,1994.