熊 穎
摘要:本文通過多年的教學實踐,闡述選用《C程序設計》教材在教學中的兩點體會,即程序設計課程應以培養能力作為課程設計目標;一本好的教材如何彌補課堂教學的不足。
關鍵詞:C程序設計;程序設計教學;課程設計目標
中圖分類號:G642文獻標識碼:B
程序設計教學普遍存在兩個問題,一是教學以語言知識為主,培養學生的編程能力不足;二是教學學時少,內容多的矛盾。教材是教學指導思想、培養目標、教學要求、教學內容的具體體現,選好一本教材對提高教學質量至關重要。事實證明,譚浩強老師的《C程序設計》是一本教師好講,學生好學的難得的好書。我校自開設“C程序設計課程”以來,譚浩強老師的《C程序設計》一書已作為第一門程序設計課程的首選教材。目前,每一屆約有6000左右的學生采用該教材。通過多年的教學實踐,以下就兩個方面談談對《C程序設計》教材在教學中的一點體會。
1以培養能力作為課程設計目標
如何處理語言知識與編程能力的關系,這是《C程序設計》課程首先需要明確的問題。對于非計算機專業的學生,程序設計課程應以培養能力為教學目標。這種能力主要體現在兩個方面,一是從分析問題入手,培養學生編寫程序的能力;二是培養學生閱讀程序的能力。
《C程序設計》一書的前言中明確地指出,在學校中,學習程序設計課程的目的是掌握設計程序的思路,學會用計算機語言編寫程序。要正確處理算法與語法的關系,算法是程序的核心、是靈魂,語法是外殼、是工具。《C程序設計》以“程序=算法+數據結構”為主線,算法貫穿于書的始終,循序漸進地介紹了十幾種常規算法。為了適合從未學過程序設計語言的讀者,第2章單獨講述算法的概念與結構化程序設計方法等內容,第7章之前介紹基于基本數據類型的算法。通過前6章的學習,初步培養了學生從分析問題入手,到算法設計的基本能力。第7、10、11章隨著不同數據結構的出現,進一步介紹具有實際應用的常規算法。全書的組織結構,非常清晰地表述了算法在程序設計中的重要性。在大量的C語法中仍能突出主線,這一獨具匠心的結構設計,是《C程序設計》一書在組織結構上的最大亮點。
《C程序設計》一書將程序語言的語法講解與算法的分析有機地結合起來,使刻板的形式化的語法融入實用的解題過程。既有結合語法規則的基本例題,又能擴展到較復雜的算法,并通過配套教材題解與上機指導的使用,使學生既得到必要的編程練習,又學到更多的算法與編程技巧。程序設計是一門實踐性很強的課程,衡量學習的掌握程度,不是看“知不知道”,而是看“會不會干”。因此,大量的例題和習題為提高學生的編程能力打下了堅實的基礎。
從閱讀清晰易懂的流程圖入手,培養學生閱讀程序的能力。養成按結構塊閱讀分析程序的習慣,這為閱讀和理解較大規模的程序段奠定了基礎。
2好的教材能彌補課堂教學的不足
目前,教學學時每年有遞減的趨勢,學時少、內容多、難度大的矛盾尤為突出。好的教材不但能全面、準確地體現教學要求,同時,對于課堂教學中的某些不足,通過學生自學教材很容易得到彌補。由于譚浩強老師編著的《C程序設計》一書的出發點定位在“使初學者易于接受,即使是從未學過其他計算機語言的讀者,也能看懂本書,并掌握其中的內容”。這一點,無論對學生,還是對教師都受益匪淺。《C程序設計》教材通俗易懂,便于學生自學,符合學生學習計算機盡快進入角色的規律。 利用這一特點,對于語法較多的第3、4章,采用精講多練的教學手段,通過一個“累加”算法的程序,讓學生通過上機實習,學習這兩章中繁瑣的語法部分。這樣,不僅能達到事半功倍的效果,還能有效地緩解了課時不足的矛盾。
《C程序設計》例子選擇十分恰當,且富有哲理性和趣味性,內容前后安排合理,層次分明,由淺人深。先由例子引出,在解決問題過程中,自然得出了結論,學生便于接受,如百雞問題、猴子選王問題等。本書使用了大量的形象比喻,加上嚴格概念,真正使科學通俗化。例如,第10章二維數組和指針的關系,是許多書都沒有講清楚的問題,往往一帶而過,而譚浩強老師用一個恰當通俗的比喻,即班長、排長點名的方式,形象地說明了行指針與列指針的區別。又如第11章用幼兒園孩子手拉手散步為例,形象比喻指針處理鏈表的問題,對于鏈表的刪除操作和插入操作也就不難理解了。在《C程序設計》這本書中有不少獨到之處,這是智慧與勞動的結晶。書中的所舉的每個例子,他都親自上機調試,選擇讀者最易理解的方式。
從《C程序設計》可以看到譚浩強老師治學的嚴謹作風、處處為讀者著想的負責態度,正如他說:“有時為了找到一個好的例子或一個通俗的比喻,要苦苦思索好幾天,每一句話都要反復斟酌推敲”。這種全心全意地為讀者服務的心,必然換來如今超過1000萬冊的發行量。我想,這正是我們選擇此書作為學生的教科書原因所在吧。
參考文獻:
[1] 譚浩強. C程序設計[M]. 北京:清華大學出版社,1991.
[2] 譚浩強. C程序設計[M].2版. 北京:清華大學出版社,1999.
[3] 譚浩強. C程序設計[M].3版. 北京:清華大學出版社,2005.