摘 要:《C語言程序設計》是高職高專計算機類開設的一門必修課程。本文主要針對在教學中出現(xiàn)的學生聽得懂、編不出的現(xiàn)象,分析其中的問題所在原因,從教學的課程目標定位、教學內(nèi)容和方法改革等方面進行了探討,通過多年的教學經(jīng)驗,對教學方式和方法進行總結,試圖探索出一種符合現(xiàn)代人才培養(yǎng)需求的教學模式,只有教學內(nèi)容和教學方法進行合理的組合,提高學生的學習興趣,才能達到良好的教學效果。
關鍵詞:C語言;項目化教學;教學方法
中圖分類號:TP312.1-4 文獻標識碼:A 文章編號:1674-7712 (2014) 18-0000-01
《C語言程序設計》作為計算機專業(yè)的基礎課,在整個課程體系中占有重要地位。在C語言教學過程中,教師的教學方法和學生的理解接受能力的差異,對教學效果都會產(chǎn)生直接的影響。總結多年來的教學經(jīng)驗和教學體會,結合學生在學習程序設計類課程的思維規(guī)律和模式,把一些經(jīng)驗和方法總結出來,希望能對C語言教學有所幫助。
一、現(xiàn)行教學和學習中存在的問題
現(xiàn)行教學中理論課與實踐課相對分離,不能相互促進。理論課中往往只注重對教材知識的分析和灌輸,而在實踐課程中,老師很難監(jiān)控到每個學生,了解他們是否都在認真編寫、調(diào)試程序。這就造成理論課沒有起到為實踐課打基礎的作用,實踐課也沒有起到鞏固、應用理論課的作用。《C語言程序設計》是一個邏輯性很強的課程。學生在面對具體的程序設計時遇到的問題與教材中的內(nèi)容相距甚遠,這使大多數(shù)同學感到無從下手。這其中的原因可以分成兩類:一方面目前高校使用的大多數(shù)教材中,結構都基本相同。在每一章介紹完了概念之后,提供一些例題解釋相關概念的使用方法,并在章節(jié)結束后針對本章中出現(xiàn)的內(nèi)容提供一些練習題。考試也主要是測試學生對于教材內(nèi)容的掌握程度,而與實際應用相距較大。這種考試實際上主要是測試學生對書本中的基本知識的掌握程度,而忽略了對學生解決實際問題的能力的培養(yǎng)。另一方面為了應付考試,學生更多注意的是教材中的典型例題與老師指定的重點內(nèi)容,對于程序的系統(tǒng)概念沒有真正理解,特別是沒有程序整體設計的概念。這樣做的結果就是學生在學習時一切圍繞老師講課的內(nèi)容,特別是老師講授的例題。學生在學習的過程中,沒有注意如何綜合運用相關內(nèi)容來解決具體問題,導致學生在學完程序設計課程進入應用階段時,面對具體的專業(yè)設計要求無從下手。
二、提高教學效果的方法和途徑
(一)明確課程目標。本課程的目標主要是提高學生解決實際問題的能力,適應社會需求。對C語言程序設計課程的教學而言,強調(diào)實踐性是在教學中特別重要的問題。老師的教學不應僅僅是傳授知識,應該以培養(yǎng)學生的實際應用能力為主。C語言的內(nèi)容繁多,在有限的課時內(nèi)不可能也不必要面面俱到,所以必須突出重點,突出實用性,關鍵在于教會學生正確運用C語言編寫程序,一些細節(jié)、具體規(guī)則和進一步的知識可以讓學生在今后的應用中來不斷學習和掌握。教師應始終堅持以應用為中心,以算法為基礎,以培養(yǎng)學生的實踐能力為核心,突出技術實用性和再學習能力的培養(yǎng)。
(二)進行教學改革。1.教學內(nèi)容改革。高職學校學生的培養(yǎng)就是要直接面對社會需求,招之即能用。因此,程序設計課程要以社會對編程能力的需求和技術發(fā)展為依據(jù),調(diào)整教學大綱和教學內(nèi)容,以適應技術崗位能力要求,設計課程體系。在課程設置與建設中,要充分體現(xiàn)教學內(nèi)容在訓練和提高學生實踐能力方面的要求,強化學生的實際開發(fā)和應用能力。總結本人多年的教學經(jīng)驗,結合其他老師成功的教學方法,采用項目化教學方法可以達到很好的效果。這個項目應具有以下幾個特點:(1)實用性。本項目就是一個具體的實際需求,是解決現(xiàn)實性中一個實際問題而設計,這樣也能提高學生的興趣和熱情;(2)完整性。本項目的程序設計是系統(tǒng)的、完整的,要能全面運用整個課程學習的知識,案例的設計貫穿整個課程的學習,隨著課程的學習不斷完善。
2.改變教學思想和方法。培養(yǎng)學生對C語言的興趣及正確的思維模式。《C語言程序設計》注重由設計算法到書寫程序并進行調(diào)試的整個過程,顯得抽象、復雜,這也是大多數(shù)學生抱怨程序設計太難、太深奧、不好學的主要原因。在教學過程中,先介紹項目的整個程序設計框架,目的是使學生先對程序有個初步的印象,再結合教材,簡單介紹該例子中用到的語句,讓學生對該語言的學習有一個大概的了解,避免學生對學習語言望而生畏。整個教學過程中應該把“解題思路、方法和步驟”當作授課的重點,從而讓學生明白如何分析、解決實際問題,逐漸培養(yǎng)學生進行程序設計的正確思維模式。計算機語言程序設計中算法是其靈魂,是教學重點,也是教學難點,而語言只是表示形式。沒有正確的算法,計算機將解決不了任何問題。對于C語言所涉及到的算法,應進行部分精講多練。通過案例分析,重點講解程序設計的思想和方法,輔以語言知識的介紹,將課程內(nèi)容分為若干個主題,以項目程序設計為貫穿各主題的主線。每個主題的教學過程由“要點講解”、“練習/上機實踐”和“疑難解答”三個階段組成,然后提出項目中的問題,以學生獨立完成為主,教師只提供必要的輔導,培養(yǎng)學生探索問題和解決問題的能力,更有利于創(chuàng)新能力的培養(yǎng)。整個課程教學圍繞一個工程項目進行,通過逐步拓展的實訓項目和設計,將每一階段的學習進行小結性的貫穿與能力提高。將C的知識點都溶化到項目的程序編寫中。
3.改革課程考核方式。(1)平時上機訓練時給學生留一些編程習題,每次根據(jù)學生編寫情況進行測評并占據(jù)期末總成績30%;(2)期末前,要求學生完成本課程項目的整體設計,考核學生綜合解決問題的能力,占據(jù)期末總成績30%;(3)期末進行理論考試,占期末總成績的40%。
(三)展示學生作品,激發(fā)學生的學習欲望。計算機軟件課程具有多樣性、復雜性和求異性特點,我們要針對每個學生任務完成的情況,讓同學們展示自己的學生成果,及時肯定學生的成績,這樣會有利于激發(fā)學生的學習熱情,保持學生的學習興趣,對學生的后續(xù)學習將產(chǎn)生強大的動力和自信心。
(四)培養(yǎng)學生的自學能力和創(chuàng)造性。學生學習計算機語言的最終目的是編寫滿足實際需求的程序,所以在教學中教授的不僅僅是具體語言的語法知識,更重要的是通過這門語言學習,培養(yǎng)學生遇到實際問題自己分析問題、解決問題的能力。我們可以通過給學生布置作業(yè)的形式讓同學們自學,老師既要要求學生獨立思考、自主學習,又要鼓勵學生間進行協(xié)作學習。教師可以分配一些比較復雜的問題,由幾個學生組成一個小組合作解決,這樣同學們可以互相探討學習方法,協(xié)作解決一些遇到的問題。通過解決問題,鍛煉學生綜合應用知識的能力、培養(yǎng)其創(chuàng)造性和合作精神。
參考文獻:
[1]郭芹.對高職高專計算機專業(yè)程序設計教學的思考[J].中國科技信息,2008(01).