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