徐海燕
德州職業技術學院 山東德州 253034
C語言程序設計教學與探討
徐海燕
德州職業技術學院 山東德州 253034
C語言程序設計作為高職學生入學后的首門計算機語言課程,也是重要的程序設計課程。對于學生來說,程序設計的思維方式和概念都是全新的,學生接受起來很困難,而通過對C語言程序設計教學方法進行探討,能收到較好的教學效果。
C語言;教學方法;驅動式教學
C語言功能強大,使用靈活方便,應用廣泛,可移植性好,既具有高級語言的優點,又具有低級語言的許多特點;既是系統描述語言,又是通用的程序設計語言。因此,很多高職院校都把C語言列為教學語言。但是,由于C語言涉及的概念復雜,靈活性大,初學者較難學習和掌握,許多學生概念不清,畏懼用C語言編寫程序,不能很好地利用這門語言。教師必須根據C語言的特點和教學對象的具體情況,尋找恰當的教學方法,使學生在課程學習時能很好地掌握C語言的基本知識和編程技巧。本文就C語言教學過程中的一些經驗與實踐做一些探討。
C語言同所有程序設計語言一樣由自己特定語句組成,每條語句又有自己的一些特定使用規則。現在有關C語言程序設計的教材版本很多,大多介紹的是C語言的語法規則和定義,這些內容相對來說枯燥且難記,在講授的過程中難以引起學生的興趣。
北京大學出版社出版的《C語言程序設計案例教程》,以知識線索設計案例,分解知識點,有明確的目的和要求,針對性強,選擇有代表性的案例,突出重點知識的掌握和應用。本教材以指導案例教學為目的,圍繞教學內容組織案例,對學生的知識和能力訓練具有很強的針對性,可以提高學生的學習興趣。
興趣是最好的教師。學生在初學C語言時有一種興奮的心情,而隨著課程的深入,大量的新概念、新名詞的介紹,乏味的例題,使學生覺得學習C語言很枯燥。教師在課堂中應不斷給出一些使用C語言解決實際問題的算法,使學生真正體會程序設計的用途和一種全新的解決問題的方法。列出實際生活中的實例,讓學生應用掌握的解決問題的方法去實際解決,并用C語言把它描述出來,使學生在不斷解決問題的過程中增加學習興趣。
為了激發學生對C語言的學習興趣,教師在講授第一節課時,演示一個預先精心設計好的用C語言解決實際問題的程序吸引學生的眼球,引起學生對學完本課程后自己所具有的編程能力的憧憬。還可以介紹一些趣味性的算法案例,如“菲波納契兔子問題”“水仙花數”“競賽記分”等,以培養學生的學習興趣,讓大家積極主動、自覺獨立地獲取知識,打好學習程序設計語言的基礎。整個教學過程中把解題思路、方法和步驟當做授課的重點,從而讓學生明白如何分析并解決實際問題,逐漸培養學生進行程序設計的正確思維模式。
筆者在第一節課給學生演示一個“自動飲料機”的案例,使用C語言來實現,通過運行的效果來激發學生的興趣,使之對C語言有個初步的了解,從而進一步說明學習C語言后可做些什么事情,解決什么樣的問題,使學生不再盲目地被動學習。
理論課中往往只注重對教材知識的分析和灌輸,在廣度上對知識沒有拓展和延伸,必定會影響對知識深度的剖析,也會造成學生理解的困難。而實踐課程通常被放到次要的地位,學生對知識一知半解,往往用上網來對付實踐課,教師也很難監控到每個學生,難以了解他們是否都在認真編寫、調試程序。這就造成理論課沒有起到為實踐課打基礎的作用,實踐課也沒有起到鞏固、應用理論課的作用。
學生對計算機基礎的學習不深入,嚴重影響C語言的學習。因為C語言程序設計課程的延續性和拓展性非常強,包含算法、數據結構、計算機基礎等有關專業課程和基礎課程的知識。
學生在學習中處于被動地接受知識的地位,沒有機會主動參與到學習中來,導致學習興趣不濃,學習停留在表面,對知識學得一知半解。由于接受的多是課本知識,所以動手實踐能力差,導致不能把自己所學的知識應用到實踐中去。這樣培養出來的學生不能滿足社會的需要,也沒有達到教學的目的。
4.1 注意互動式教學
互動式教學就是以教師為主導,學生為主體,學生作為主體參與到課堂上來。互動式教學既可以提高學生的積極性,還可以避免學生上課疲勞,產生注意力不集中的現象。互動式教學在形式上有教師提問、學生上黑板演算、上教師機操作、讓學生討論等,讓學生進行正誤判析,解決普遍性問題,或者請有獨特思路的學生演示自己的方法或程序。實踐證明,這種教學方法效果顯著,氣氛活躍,學生的參與度高。但要把握課堂既要有互動的活躍氛圍,也要有好的課堂秩序,使得課堂互動有序、有效進行。
4.2 培養學生讀程序的能力
程序是C語言的本質,讀程序是學習C語言入門最快也是最好的方法。要培養學生獨立編程的能力,首先應該培養學生讀程序的能力。學生讀的程序越多,見識的編程思想、方法、技巧也就越多,就能更加擴展自己的編程思路,還能在某些時候把別人的東西拿來歸為己用。在培養學生讀程序方面要注意循序漸進,先給學生讀一些簡單的、只有幾行的程序,然后逐漸增大程序的復雜度。
4.3 采用問題驅動法
在C語言程序設計課程中,有一些概念和程序的設計步驟如果只通過教師講述,學生在字面上可以接受,但在理解深度上難以達到令人滿意的效果。如果能設計出一系列問題,讓學生在實踐和解決問題的過程中自己去探究和體驗,可以激發學習興趣,樹立學習的信心。
采用問題驅動法,一切都要求學生自己動手動腦設計,他們在操作過程中探究和解決問題的積極性和主動性得到調動,從而達到教學目標。
程序設計的學習和使用貫穿于整個大學階段,第一門計算機語言課程的教學質量對后續計算機課程的教學起到至關重要的作用。只有針對不同專業,考慮學生的特點、專業的特點,結合實際教學內容,重點介紹程序設計的思路和方法,做到以程序設計為主線,以提高編程能力為目的,重點掌握程序設計的方法和思路,在分析程序和程序設計中讓學生逐步熟悉語法和應用語句,提高學生分析問題、解決問題的能力,才能達到教學的真正目的。
[1]李紅軍,黃少敏.C語言教學改革的探討[J].文化與教育技術,2009(12):225
[2]譚浩強.C語言程序設計[M].北京:清華大學出版社,2005
[3]劉梅彥,徐英慧,李文杰.“C語言程序設計”實踐教學的研究與探索[J].中國電力教育,2009(1):136-137
G712
B
1671-489X(2011)06-0057-02
10.3969 /j.issn.1671-489X.2011.06.057