劉晉英
摘 要: 要讓學生學好C語言,應該從思想上讓學生有正確認識,進而打好基礎,掌握必要的算法,勤于上機實踐,從計算機的處理方式角度出發(fā)寫程序,這樣循序漸進,注意方法,終會收獲成功。
關鍵詞: C語言 保留字 語法 算法 上機實踐
《C語言程序設計》作為一門專業(yè)基礎課,在大中專及職業(yè)教育中廣泛開展。一些同學一拿到書后看到的不是長篇大論的講解,就是英文和數(shù)字寫成的代碼,頓時覺得C語言很難學。那么,究竟如何才能夠把C語言教好,而且讓學生學懂、學好呢?
一、對C語言有正確的認識
有些同學認為程序設計語言要用到很多英語,而自己英語本來就不好,學不好語言課。其實,C語言以接近英語國家的自然語言和數(shù)學語言作為語言的表達形式,英語學得好的人自然更容易入門,但是,C語言中用到的保留字(關鍵字)其實只有32個,對于初學者而言常用的只有10個左右,且大都很簡單,如int,if,for等,容易記憶和書寫,基本不用顧慮英語不好而造成的學習困難。
二、C語言學習要注重“語法”
即:C語言所寫成的程序是如何構成的。其中包含標識符、常量、變量、運算符、表達式、函數(shù)定義、語句構成、預處理命令等。這些知識點零散而繁多,除了反復強調(diào)它們的重要性外,更重要的是要設置合理的上機實驗,把這些知識點融入到上機過程中,讓學生不僅是理解、記住這些知識點,更知道如何運用,把它們跟自己寫的程序結合起來。
三、正確理解和掌握合適的算法
上述都是C語言的基礎,有了這些知識能否寫出好的程序呢?答案是否定的,就如同給你足夠的鋼筋水泥,不見得就能蓋起高樓大廈一樣的道理。著名的計算機科學家沃思提出一個公式:算法+數(shù)據(jù)結構=程序。這里的算法廣義來說就是解決一個問題的方法和步驟。這個方法和步驟需要用能夠讓計算機理解的格式書寫,這就是計算機語言,如C語言。也就是說在教C語言的同時,還要讓它能夠解決實際問題,也就是讓學生了解一些簡單的算法,這無疑增加了學習困難。在教學中一定要把握好算法的難易程度,以學生的實際水平為出發(fā)點,切實選擇一些學生易懂、會用的算法,讓學生把更多的精力放在對C語言本身的學習上。在涉及的算法中,要盡量把算法本身要做什么描述清楚,而不是用專業(yè)的數(shù)學名稱描述。如:“輸出所有的水仙花數(shù)”,一些學生可能根本不知道什么是水仙花數(shù),如果直接把這個問題描述為“求所有的三位數(shù)中各位數(shù)字的立方和等于該數(shù)本身的那些數(shù)”,學生覺得更直接和形象,就避免了學習C語言時難上加難。
四、分析程序與上機實踐的密切聯(lián)系
為了幫助學生更快更好地掌握C語言中的知識點,選擇合適的程序作為上機實驗的案例顯得尤為重要。首先是每個案例不宜過長,太多的語句會讓初學者畏懼,并容易忽略部分語句。其次是案例要與每個知識點密切結合,且在一個案例中不要包含太多知識點。案例的選擇盡量有一定的延續(xù)性,這樣會讓學生覺得學的知識是連貫、系統(tǒng)的。教學過程嚴格按照從簡到難、循序漸進的步驟,以免因一時拋出太難問題而挫傷學生的學習積極性。剛開始寫程序時,應該給出足夠多的參考,也就是我們熟知的,模仿是最好的學習。
五、摸透計算機的本性
要想盡快掌握C語言就必須掌握計算機的特點。計算機在問題的處理方式上要求全面,把所有的可能性都告訴它。人可以根據(jù)習慣忽略一些東西,但計算機不行。如求解一元二次方程,通常我們都默認a不等于0,甚至把b2-4ac也默認為大于或者等于0。這是我們思維的習慣,認為方程既然有解,就是實數(shù)解,寫程序時忽略了必要條件。但是計算機不行,它不會思考,只會嚴格按照人的意志執(zhí)行,如果忽略了條件就會造成計算機無所適從,甚至崩潰、報錯,造成程序不成功,影響學習C語言的決心。
總之,C語言的學習不是一蹴而就的,但不是高不可攀、遙不可及,只要堅定信念,采用正確的學習方法,就一定可以學有所獲,學有所成。