前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇c語言程序設計范文,相信會為您的寫作帶來幫助,發現更多的寫作思路和靈感。
[關鍵詞]C語言程序設計 探究教學 實施目標
中圖分類號:TP312.1-4 文獻標識碼:A 文章編號:1009-914X(2014)17-0126-01
一、 C語言程序設計探究教學實施的目標:情感目標、能力目標和認知目標
1、體驗C語言程序設計的編程思想,激發和保持對C語言程序設計課程的求知欲,形成積極主動地學習和參與C語言程序設計課程探究活動的態度。
2、能辯證地認識C語言程序設計對社會發展、科技進步和日常生活學習的影響。
3、獲得親自參與研究探索的積極體驗、培養嚴謹的科學態度。
4、能從日常生活、學習中發現或歸納可以利用C語言程序設計解決的問題,通過問題分析確定程序功能。
5、能根據任務的要求,確定所需信息的類型和來源,并鑒別信息的真實性、準確性和相關性。
6、掌握計算機程序的基本概念,理解并掌握C語言程序設計語言的基本知識,包括語句、數據類型、變量、常量、表達式、函數等,熟悉語言的語法規則,熟悉計算機程序執行的基本過程。
7、了解C語言程序設計語言,掌握編寫程序、編譯程序、連接程序以及程序開發環境等基本知識,掌握調試、運行程序的基本方法與技巧。
二、C語言程序設計探究教學實施的條件
1、掌握一定的計算機操作基礎
C語言程序設計課程由于其學科自身的特點,需要在計算機上調試程序,所以要求學生具有一定的計算機操作知識,如:開關機、鍵盤和鼠標的使用、文件的建立與查找、常用軟件的使用等。
2、良好的C語言程序設計認知結構
認知結構就是學生頭腦里的知識結構,是學習者觀念的全部內容和組織。奧蘇伯爾的認知結構理論是針對新學習內容的影響(即遷移)提出的,良好的認知結構有利于知識的提取和正向遷移。C語言程序設計探究教學強調在已有知識經驗上的主動建構,面對新的問題和任務,需要學生及時從頭腦中提取信息,建立新舊知識間的聯系,在已有C語言程序設計知識的基礎上思考解決新問題的辦法,并試圖將新知識納入自己的認知結構中。
3、良好的探究環境
良好的探究環境是學生順利進行探究的保證,至少包含兩方面的內容:(1)要有充足的探究時間和靈活的探究條件。探究時間應該根據學習任務進行合理安排,應該考慮到學生假設錯誤時所耽誤的時間以及討論交流所需要的時間。探究教學中可能需要查閱大量的資料,教師還應該準備書籍、網絡等輔助資源。(2)學生在探究學習的時候不能有太多壓力,不同的學生由于其自身的因素不可能以相同的速度學習,所以教師在進行評價的時候也應該因人而異,應該為每個學生提供充分的思考機會和時間,讓每個學生都能以自己的進度進行探索,并在此過程中感受到樂趣。
三、C語言程序設計探究教學情境的創設
心理學研究表明,恰當、適宜的環境能有效激發人的熱烈情緒,提高活動的質量和效果。教學情境是指教師人為創造的“典型場景”,創設目的在于引出教學任務,將學生的注意力吸引到學習任務中來。教師把將要學習的C語言程序設計知識通過一定的情境呈現給學生,使得學生認知結構與周圍環境不平衡,引起他們對學習目標的注意和興趣,并通過探究活動把學生過去的活動和將來的活動聯系在心理學研究表明,恰當、適宜的環境能有效激發人的熱烈情緒,提高活動的質量和效果。教學情境是指教師人為創造的“典型場景”,創設目的在于引出教學任務,將學生的注意力吸引到學習任務中來。教師把將要學習的C語言程序設計知識通過一定的情境呈現給學生,使得學生認知結構與周圍環境不平衡,引起他們對學習目標的注意和興趣,并通過探究活動把學生過去的活動和將來的活動聯系在一體。探究教學情境的創設應做到:(1)創設的情境是為C語言程序設計教學服務的,要以C語言程序設計探究教學目標為依據。(2)探究情境要接近學生的真實生活經驗,能夠吸引學生的注意力,激發他們的認知沖突和求知欲。(3)學生在情境中能夠感覺到問題的存在,自然地將新舊知識聯系起來。(4)情境中必須包含學生未知的新內容,而且是能夠通過探究掌握的。
四、C語言程序設計課程中的探究形式
C語言程序設計課程中開展探究教學主要有4種形式:探究性提問、探究性討論、探究性演示和探究性實驗。這4種形式是相輔相承的,而不是孤立存在的,在C語言程序設計探究教學中,需要用到多種形式來構成一個完整的探究教學過程。C語言程序設計探究教學通常都是由探究性提問開始,然后進行探究性討論、探究性演示或探究性實驗;也可能從探究性演示或探究性實驗開始,在演示或實驗的過程中發現問題,再進行探究性討論。在實際教學過程中,要根據學習內容和課堂情況靈活地選用這些形式。
五、C語言程序設計探究教學評價
教學評價指依據一定的標準,通過各種策略和相關資料的收集,對教學活動及其效果進行客觀衡量和科學判定的系統過程。C語言程序設計探究教學評價是對C語言程序設計探究教學過程及其影響的測量、分析和評定,評價中我們更關注學生學習和成長的過程,尋找適合學生發展的學習方式,滿足學生知識和能力發展的需要。評價對探究教學的積極作用是很明顯的,但是如果評價指標制定不合理,或者評價方法的選用、評價結果的表述不當,不僅不能達到預期效果,還會對學生的C語言程序設計學習產生消極影響。
參考文獻
[1] 《基礎教育課程改革綱要(試行)》教育部文件,教基[2001]17號.
[2] 保羅 朗格朗.終身教育引論瞰[M].北京:中國對外翻譯出版公司,1985,p15~31.
[3] 聯合國教科文組織.學會生存――教育世界的今天和明天[M].上海:上海譯文出.
版社,1979,p2.
[4] 張大均。教育心理學[M].北京:人民教育出版社,2005,p68--71.
[5] 靳玉樂.探究教學論[M].重慶:西南師范大學出版社,200l.
關鍵詞:C語言程序設計;教學方法;教學手段
中圖分類號:TP3-4
C語言是在國際上被廣泛應用的計算機程序設計高級語言,受到很多大學的青睞,有不少學校將其作為第一門程序設計教學語言來進行學習。在我校C語言也是各理工科專業的公共基礎課。但是,由于高職學生的基礎不好,而程序設計課程邏輯性又很強,有不少學生不能很好地理解算法,編寫程序也很困難,在教學過程中,出現了亟待解決的問題,對此,筆者結合自己在教學中遇到的問題,提出了相應的應對方法,以激發學生學習興趣,提高教學質量。
1 教學目標的定位
教學目標作為教學活動中學習者要預期達到的學習效果,對教學活動起著導向、激勵、調節、檢測和評價的作用,有利于教學目的明確化,應用能力培養的具體化,是教學活動的出發點和歸宿。通過對我院C語言程序設計的教學目標的改革,旨在提高學生的實踐能力,培養應對信息化發展變化的良好素養。
2 教學內容的更新
2.1 從實際問題出發開展教學。C語言程序設計是一門邏輯性很強的課程,有的同學課堂上老師講的也能聽的懂,課本上的例題也能看明白,可是等到自己動手編程時,卻不知道從哪里下手。他們所謂的聽的懂看的明白,只是很膚淺的語法知識,而編寫的程序或軟件則是需要根據相關問題的實際需要結合相關的邏輯分析,編寫語句控制程序的流程,如果沒有深刻地理解C語言的語句的執行流程,是沒辦法編寫程序解決相關實際問題的。所以筆者經常提醒同學,當拿到相關問題時,首先結合實際,思考解決問題的方法和步驟,然后再結合C語言語法語句編寫相關程序。
2.2 注重實踐環節教學。C語言是一門實踐性很強的課程,光學不練、“紙上談兵”是學不好C語言的。筆者在進行C語言教學時,講解了相應的C語言語句語法等理論之后,都會根據相應的理論知識布置1-2個相應的同學們比較感興趣的問題,讓同學通過編程并上機運行調試求得問題的結果,來刺激同學們編寫程序調試程序的興趣,以此來提高同學們編寫程序的實際操作能力。另外實驗指導書,也是旨在讓同學們逐步的由閱讀程序、分析程序內容及結果、補充程序、程序改錯慢慢過渡到能夠獨立編寫程序,每一個實驗所安排的內容都比較多,若僅靠課堂上有限的90分鐘來完成所有實驗內容幾乎是不可能的。所以,我在每次實驗之前都要求同學們對相應的實驗內容進行提前預習,實驗前完成對程序內容分析理解、有需要填充程序的提前結合題目要去及上下程序段意義完成填空、有需要改錯的結合實際意義找出程序中的錯誤并在實驗指導書上改正過來、有需要編寫程序的提前在課下編寫好程序等,在上機實驗時,將補充完整的或改寫好的或編寫好的程序輸入C語言編輯器中進行編輯、運行,這樣在上機實驗時只需要調試程序中的錯誤,找出錯誤的原因,然后對程序進行運行查看運行結果,用來檢驗實際運行結果與分析結果是否一致,這樣不僅大大提高了課堂利用率,而且還鍛煉了同學們分析問題、解決實際問題的能力。
2.3 注意提高學生調試程序的能力。在C語言程序設計中,調試程序是一件很重要的事。俗話說,“人無完人”,所以即使是比較優秀的程序員在編寫程序時也難免會出錯,而且還可能是那種最低級的語法錯誤,但他能快速的發現錯誤并改正,這是因為他們一般都具備相應的程序調試能力;而對于大多數C語言初學者在面對錯誤提示時,卻無從下手,不知錯在哪里,如何改正,這就是差別。筆者在C語言的教學中這樣引導同學進行調試:
首先要求同學們按照教材上的程序實例進行原樣輸入,運行一下程序是否正確。如果能正常運行,再要求同學們在該程序的基礎上進行試驗性的修改,然后再運行一下程序對照一下看程序運行結果發了什么變化,并引導同學分析結果發生變化的原因,以加深同學們對所學知識點的理解。
有時還會引導同學們將教材中的正確程序改寫成錯誤的程序,并上機運行,讓同學注意查看出現的錯誤提示信息,并記下該信息,然后再將程序改寫成正確的,并再次運行。不過要求同學每次只改錯一個地方,目的是讓同學能準確找出發生該錯誤的真正原因,避免因為改動過多,搞不清發生錯誤的真正原因;另外,要求同學們上機調試程序時每個人都帶一個小本子和一支筆,當程序出現錯誤時,記下英文錯誤提示信息和解決相應錯誤的方法,用于積累調試程序的經驗,避免以后編程時再犯同樣的錯誤。同學們通過這樣的反復修改、運行,就能夠掌握相應的調試C語言程序的方法,找出C語言程序發生錯誤的原因及相應的修改方法提高修改錯誤的能力。
當同學們有了一定的C語言編程基礎了之后,要求同學在不看教材的情況下,根據給定的實際問題完成程序編寫、上機調試、運行,如果所編寫程序不能正常運行,看自己能否找出錯誤原因并將其改正過來,使其能正確運行。這樣經過多次練習,必然能提高學生的編程和調試程序的能力。
2.4 注意學生綜合能力的提高。筆者經常鼓勵同學可以先編寫一些小程序,然后對多個相關小程序進行連接,形成一些稍大一點的程序,提高自己的綜合解決實際問題的能力。鼓勵同學在上機實踐的同時多動腦、多思考,多了解并借鑒別人優秀的解題思路和方法,多看別人優秀的源程序代碼,嘗試著自己獨立實現編程或者模仿著去實現編程,來提高自己的綜合能力。
3 教學方法與教學手段的研究
3.1 多種教學方法的綜合運用
對于C語言程序設計課程教學來說,相關知識點繁雜,概念多,理論抽象,學生不容易掌握,在授課過程當中,需要根據授課的內容和學生的具體情況,靈活地運用分小組討論、任務驅動、案例式教學、啟發式教學等多種教學方法,并適當的將多種教學方法進行有機結合,同時,也可以借助于多媒體和網絡等現代教學手段使這些方法得以有效實施。
例如課堂上,不再采用教師滿堂灌的陳舊教學方式,在新課教學時,合理采用任務驅動法:先提出待解決的問題,再引導學生分析問題找出解決問題的相應方法和具體步驟,之后再結合C語言語法給出源代碼,并對源代碼進行分析,再將新知識點引出,對知識點進行講解、強調,最后再留給學生一些相應任務,學習小組經過討論、研究,將任務完成,達到鞏固知識點的目的。新的授課方式使同學們更易接受,更為直觀形象,而且同學們可以直接參與問題的分析與討論,同學上課的積極性得到很好的提高,上課質量和課堂效率得到很好的保障。
3.2 采用多媒體教學
現代社會是個多元化的社會,原始的三尺講臺,一面黑板,一支粉筆的教學方式已遠遠不能滿足現在多元化信息社會的需要,現代的課堂教學需要根據學生的理解和接受能力,借助于多媒體課件進行演示、講解,能更加形象更加直觀地對問題進行分析進行講解,同時對同學們的多個器官進行多方面的刺激引起學生更濃厚的興趣,并且還減少了板書時間,使課堂效率得到更有效的提高。
3.3 課堂教學與網絡教學相結合
在90分鐘的課堂教學中,給予我們的時間畢竟是有限的,并且課堂知識點相對來說比較凌亂繁雜,在一堂課中這么繁瑣的內容要求學生僅靠課堂90分鐘就能熟練掌握是不太現實的。因此,我們可以借助于精品課程網站,將電子課件、教學大綱、經典程序、經典算法、練習題和解答等資料上傳至精品課程網站這個平臺,供學生復習、鞏固和自學,這樣就可以使學生利用網絡教學這個公共平臺查找自己所需要的相關信息,并且還可以使學生養成主動學習的好習慣。
參考文獻:
[1]譚浩強.C語言程序設計(第四版)[M].北京:清華大學出版社,2010.
[2]謝延紅.C語言程序設計公共課教學模式改革與實踐[J].計算機時代,2010,12:45-47.
[3]陳國章.TurboC程序設計技巧與應用實例[M].天津:天津科學技術出版社,1995,5.
(一《)C語言程序設計》的教學目標
社會對于人才的需要,并不是要求他們只要學會理論知識就可以,各個單位對人才的要求更看重于他們的實踐能力,要求他們能夠把所學習過的知識轉化為動手能力與實際解決問題的能力。因此,對于學生的《C語言程序設計》課程的教學只是進行理論知識的教育是遠遠不夠的,還有提升學生的綜合能力。學生要達到的認知類目標包括:掌握C語言程序設計課程相關的基本概念;理解解決問題的基本技巧;理解標記控制循環與計數控制循環;把握程序性的知識,并學會如何應用。學生要達到的能力類的目標包括:掌握C語言程序設計的基本技能,進行程序計算;熟練運用與、或、否命題,以此來解決實際中的程序問題;熟練運用一些基本的邏輯運算符;能夠使用break和continue程序控制語句;學會編寫基本字符模式下的簡單程序;另外還有培養學生動手實踐能力和與他人合作的能力。除此之外,還有培養學生學習C語言程序設計的興趣,養成學習工作中嚴謹、務真求實的良好態度,培養解決程序問題的開放性思維。
(二《)C語言程序設計》教學策略設計
對學生進行C語言程序設計的教育,其最終目的就是要讓學生掌握這門課程,并且運用到實際工作中,而教學策略的設計,就是為了在最短的時間內,讓學生掌握更多的知識,并且將其轉化為自身的實踐能力。(1《)C語言程序設計》的教學方法教學方法多種多樣,其中講授法、談話法、演示法、實踐法等最為常見。教師在選擇教學方法的時候,要充分考慮教學大綱的要求和教材中的內容,還要考慮學生的學習情況與學習能力,以及現有的教學條件,從而選擇最適合教學工作的一種方法。同樣的教學方法,對于某一個班級的學生合適,對于另外一個班級也許就不適用,因為每個班的學習氛圍不同,同理,對于某一位學生教學方法很恰當,而對另外一個學生來說,可能就是阻礙學習的因素。因此,教師在教學過程中要對各個方面影響教學效果的因素進行充分的考慮。對學生的教學工作,可以采取分組教學的形式,這種方法不但可以讓教師能夠更大程度上關注到每一位學生的學習情況,還能夠通過小組間學生相互幫助,分享交流學習經驗,從而獲得更多提高成績的機會。另外,學生之間的交流要比學生與教師之間的交流更為順利,學生之間相互學習更容易發現自身的優勢與不足之處,從而把自己的學習經驗分享給其他人,同時向其他同學學習自己沒有掌握的知識。小組教學還能夠增強學生的交流能力,加強學生之間的人際關系,培養學生的團隊合作能力,從而提升學生的綜合素質。(2《)C語言程序設計》的學習組織形式學習組織能力是指學生在學習的過程中,師生的共同活動在程序、人員、時空關系上的組合形式。運用適合學生的學習組織形式,有助于學生提高C語言程序設計學習的效率,同時,還可以將一些高效率的學習方法、學習敬仰在學習組織形式中進行運用,由于《C語言程序設計》教學分為基礎知識與課程設計兩種基本形式,我們把以問題為導向的《C語言程序設計》教學模式下的學習組織形式也分為兩種類型。一種是課堂小組合作學習。在《C語言程序設計》所有課時中,基礎知識的課程占據了絕大多數,教學地點可以選為網絡機房,以問題為導向的《C語言程序設計》有利于學生培養團隊合作精神,提高彼此之間的交流能力,鼓勵學生在學習的過程中勇敢地提出問題回答問題,為學生營造一種良好的學習氛圍。教師充分發揮自身的引導與輔助的作用,幫助學生發現問題,解決問題。另一種類型是課程設計探究學習。課程設計的時間一般比較短,在此期間,教師要通過合理的課程設計來為學生創造一個和諧的學習氛圍,師生之間、學生之間進行交流,分享學習經驗與解決問題的方法,一方面可以增加學生彼此學習的機會,另一方面也可以監督學生完成自己的學習任務。(3)網絡環境下的問題導向教學模式網絡環境下的以問題為導向的《C語言程序設計》課程教學模式,則是利用網絡科技來輔助教師的教學活動,在這個教學過程中,教師是教學活動中的引導者與輔助者,而學生才是學習的主體。教師為學生設計好學習任務,明確每一位學生所要解決的問題,再對學生進行合理的分組,讓學生充分利用網絡資源,收集對自己有利的信息,并且對信息進行有效的篩選與整合。學生在尋求解決問題的過程中,能夠充分利用網絡環境的優勢,推動以問題為導向的教學模式的實施,實現學生的自主學習、互動合作、自覺約束自己的學習活動。這樣,學生在整個學習過程中,不僅解決了教師提出的問題,還掌握了搜集、處理信息的能力,收獲成功之后的成就感,增強與他人之間的交流,提高自身的創造能力,真正做到增強自身的綜合素質。
2以問題為導向的《C語言程序設計》的實踐
在《C語言程序設計》課程教學過程中,教師的教學工作與學生的學習活動總是會暴露一些問題,如教師講解不到位,學生不能理解理論知識,教師講課難以吸引學生的學習興趣,學生學習效率低下等問題。而以問題為導向的《C語言程序設計》教學模式,要如何進行具體的實施,才能夠幫助學生掌握解決問題的技巧,加深對理論知識的理解呢?
(一)以問題為導向的教學模式中的課程設計
在《C語言程序設計》教學過程中,使用以問題為導向的教學模式,要明確本次課程的教學目標是什么,所有的課程設計的大方向要以教學目標為準則,教學中要以人為本,以學生為中心,站在學生的立場上,充分考慮到學生的接受知識的能力與完成任務的可能性。另外還有考慮哪些教學設備可以供學生使用,做到最大程度利用現有的資源,幫助學生掌握更多的知識。同時,對于學生的要求要合理,要求過高,學生難以完成目標,將會打擊學生的參與教學的積極性與信心,要求過低,將會浪費時間,學生的實際能力達不到質的飛躍。因此,課程的設計要實事求是,一切從實際出發。
(二)以問題為導向的教學模式實施的原則
1.遵循現代社會教育事業的發展規律,尊重學生的認知規律,鼓勵學生運用自己的優勢進行創新性的學習。2.堅持以學生為主體、以學生為中心的原則,讓學生出于教學中的主體地位。營造輕松的學習氛圍,讓每一位學生都積極大膽地參與到其中,敢于提出自己的疑問,敢于回答教師與其他學生提出的問題,積極參與具有挑戰性的任務。3.教師發揮自身的引導與輔助的作用,引導學生進行有利于提高自身能力的學習活動,幫助學生解決難度較大的問題,并且監督學生對問題作出總結,從完成任務的過程中學到更多的知識。
(三)以問題為導向的教學模式應當注意的問題
關鍵詞 C語言 實驗教學 任務驅動式
中圖分類號:G424 文獻標識碼:A
C語言是通用的計算機程序設計語言。其數據類型豐富、表達能力強、使用靈活方便、生成目標程序設計代碼質量比較高,對硬件也能直接進行操作,因此C語言將作為大部分高校的普遍程序設計的首選課程,也是其編程的基礎性課程。學習程序設計必須具有語法規則、算法思想、數據結構和程序設計等方面的知識,C語言比較復雜,教學內容理論性較強,較難掌握,學生易產生厭煩情緒。以前C語言運行環境是以Turbo C2.0為主,現在雖然可以在VC++6.0運行環境下進行編程與調試,但是它的程序運行還不能完全可視化。就對我校高職計算機專業學生的具體調查發現:學完C語言后能熟練掌握、靈活運用的學生為10%左右,基本掌握的學生為45%左右,大部分學生還是不能掌握其編程技巧。為了提高和改善學生學習C語言的教學現狀,根據C語言自身特點,探討新的教學模式和教學方法。以促使提高該課程的教學效果。
1 根據人才培養方案,合理調整其教學內容
高職院校教育的目的是培養生產一線應用型和技能性人才,著重培養學生的學習能力、就業能力、工作轉換能力和創業能力。高職學生的學習基礎較差,邏輯思維能力較弱,想象空間較窄,因此,在學習C語言程序設計課程時,必須考慮學生的學習能力和基礎能力,適當降低理論知識的難度和深度,力求教學內容淺顯易懂。在本門課程的教學過程中一般要求學生掌握程序設計的三種程序設計的基本結構、數組、函數、指針等教學內容,對于其中過繁過深的知識,例如指針,結構體等,我們則可以進行取舍,使學生知道它們即可。對于重點、難點的教學內容必須進行詳細講解,使學生不僅掌握它們的理論知識,更能靈活編寫類似程序以求解決生活中的實際問題??傊虒W目的是使學生真正掌握并力求能熟練靈活運用C語言進行編程。
2 重視培養模式,培養學生學習興趣
傳統模式下,C語言程序設計課程的教學內容一般則采用黑板式的教學方式來實現。大部分理論知識都要在教室來進行學習,很少在機房來進行程序的編寫。C語言程序設計運行環境一般以Turbo C2.0為主,但Turbo C2.0的調試環境采用DOS模式,調試不是很直觀,且操作采用命令和鍵盤來實現,界面不可視化操作使學生很不理解,因此會使學生失去學習的動力和學習的積極性。盡管C語言實用價值很高,但理論性很強的教學內容,很難引起學生的學習興趣,如果我們再不講究其教學方法,則難以達到本課程的培養目標。為了改變目前的教學現狀,教師必須利用學院現有的教學資源對教學內容進行重新整合,改進以往單一、枯燥乏味的教學模式和教學方式,讓知識變得有趣而生動化,從面提高學生的學習興趣、學習的積極性、學習的動力和學以致用的能力。
3 合理利用多媒體技術,提高教學效果
傳統的教學模式是利用黑板式教學手段在教室進行講授C語言程序設計課程。特別是在講解如何利用運行環境進行上機步驟、程序調試方法,程序運行過程和程序運行結果的查看等內容時,課堂教學則顯得枯燥無味、不夠清楚,也不直觀,在這種教學方式下,大部分學生則會對C語言這門課程失去學習興趣、學習的積極性、學習的動力和學習信念。高職院校多年來進教學改革和更新教學設施,基本上來講,教學設備都比較齊全。先進的多媒體教學手段出現后,被廣泛使用在許多課程的教學上,多媒體教學具有直觀生動、圖文并茂的優勢,能夠把枯燥無味的理論知識變得生動形象化。但先進的教學手段并不完全代表一定會收到良好的教學效果,教師則必需精心制作出適合自己課程的教學課件,把傳統教學不能很好表達的教學重點和教學難點進行重新設計,并與傳統教學有機結合,從而達到滿意的教學效果。合理利用多媒體技術不僅可以加強學生的學習興趣,也能激發學生的學習動力和求知欲,使學生真正體會到學習的快樂和滿足。
4 加強實踐環節,培養學生的編程能力
C語言程序設計是一門實踐性很強的課程,學生不僅要掌握C語言的概念,語法規則,又要動手編寫程序,并進行上機調試運行得出結果。所以培養學生的實際操作能力則顯得尤為重要。在實踐課的教學過程中教師必須做到:教師必須為每次上機習題做到精心挑選,認真對待,在實驗內容上應做到有較容易的題目,也要有綜合性較強的題目,題目要求不僅要顧全驗證性、綜合性和設計性實驗的比例,也要做到使所學的知識內容進行整合,達到學習的系統化。學生在進行實驗時,根據學生的學習能力和操作能力,將其分組來進行實驗。實驗過程中,要求學生根據實驗內容再進行分解,教師正確引導學生學會運用正確的思維方法,由易到難,自頂向下,逐步求精,找出解題的關健,并且鼓勵他們互相學習、大膽討論,這樣不僅能調動每一位學生的學習動力,也能加強團隊精神的培養。
5 考試考核制度的改革
C語言程序設計課程的培養目標是學生的思維能力和實踐能力,學生最終成績評定也是體現學生在整個學習過程的主要評價,采用單一的試卷考試方式已經不能體現出學生的實際能力水平。我們對學生的要求不僅要考學生的知識水平,更注重考核學生的學習能力、知識應用能力、對問題的分析能力和解決實際問題的操作能力綜合考評。即要更多地通過關注學生的學習過程,用可持續發展的方略去評價每一位學生,更好地體現評價的激勵功能,使其做到促進學生學習的主動性和積極性。建議的考評標準為:理論占40%,實踐技能占60%,或進行全國計算機等級二級C語言考試,凡通過者可獲得一定獎勵。
在目前信息社會中,計算機的應用越來越廣,因此,高職院校的責任重大,學院在進行計算機教育中應依據培養目標提出不同的教學要求。使每一位學生在學習C語言時,都能由淺逐深、循序漸進地進行教學培養,教師在學生學習的過程中必須激發學生的興趣,更新教學理念,充分利用、整合各種教學資源,注重教學模式和教學方法的探索,真正使C語言程序設計這門課程成為學生學習其他計算機編程知識的基石。
參考文獻
[1] 張長海.以程序設計為主線為主線講授“高級語言程序設計”課.計算機教育.2005(5).
[2] 譚浩強.C語言程序設計.清華大學出版社.2002(6).
關鍵詞:C語言程序設計;案例教學;任務驅動
C語言是通用的計算機程序設計語言。許多職業學校,在高職學生和中職學生中都開設了《C語言程序設計》課程。學習程序設計必須具有語言、算法、數據結構和程序設計的方法等方面的知識,而C語言本身又比較復雜,較難掌握,所以《C語言程序設計》的教學內容理論性較強,學生容易產生厭煩情緒。C語言教學一般以Turbo C為主,Turbo C的調試環境不是可視化的過程,這在客觀上造成了學生掌握C語言程序設計知識的難度。在職業學校中,《C語言程序設計》的授課時數一般為76課時左右。通過對我校高職計算機專業學生的觀察和調查,學完C語言后能熟練掌握、靈活運用的學生為5%左右,基本掌握的學生為25%左右,大部分學生只能是應付考試,甚至還有5%的學生采取放棄的態度。為了改善C語言的教學狀況,使學生能真正掌握這門課程的知識,有必要依據學生的層次及所選的專業對《C語言程序設計》的教學內容、教學方法等方面作一些探索。
依據培養學生的目標,合理調整教學內容
中職層次中等職業教育的目的是培養生產一線應用型人才,著重培養學生的學習能力、就業能力、工作轉換能力和創業能力。中職學生的學習基礎差。所以,如果在中職學生中開設《C語言程序設計》的課程,則必須考慮中職學生的學習基礎,并依據中職學生的培養目標,適當降低理論知識的難度和深度,教學內容力求淺顯易懂。以譚浩強主編的《C語言程序設計》一書為例,以76課時為總授課時數,一般要求學生掌握程序設計的三種基本結構、數組、函數等內容即可。對于其中過繁過深的例題、習題可省略,如“用二分法求方程2x3-4x2+3x-6=0在(-10,10)之間的根”之類的題目。對于重點、難點的教學內容必須進行詳細講解,如“選擇結構中的閏年的判斷”、“循環結構中的素數的判斷”等經典例題必須設計易于學生接受的教學方法,使學生消化吸收。強化練習也不能缺少,但也不能搞題海戰,要巧設計(題意新穎有趣,貼近實際)、巧安排(當學生躍躍欲試之時布置題目最有效)。總之,教學目的是使學生真正掌握并力求能熟練靈活運用教師所講授的知識內容。
高職學生高職教育著重培養具有實際工作能力的技術型和應用型人才。高職學生一般比中職學生學習基礎都要高一個層次。所以,高職學生對知識的理解力相對也要強一點。因此,除了每堂課的容量要增加外,教師還需要有意識地留一些知識點給學生自學,以培養他們自主學習的能力。其次,教學內容也應有所增刪,盡量使教學內容多和實際的程序設計相聯系。對于一些經典例題要講清所采取的解決方法,如“小猴吃桃”問題,必須講清“遞歸”方法及“遞歸”問題中“回推”和“遞推”的兩個階段,并且還要講清如何設計結束“遞歸”過程的條件。根據實際教學經驗,同樣以譚浩強主編的《C語言程序設計》一書為例,以76課時為總授課時數,一般高職學生能掌握:程序的三種基本結構、數組、函數、指針、結構體、文件等內容。當然,對于計算機專業的高職學生還必須掌握更深層的知識內容,并且要求學生參加國家二級C語言程序設計等級考試。
以激發學生的學習興趣
為目的,改革教學方法
傳統的《C語言程序設計》課程的教學是以課堂為中心的滿堂灌,其中上機一般占30%左右?!禖語言程序設計》的授課一般以Turbo C為主,Turbo C的調試環境很不直觀,使學生不容易理解。因此,盡管C語言有實用價值,但生澀的教學內容,不易引起學生的學習注意,如果不講究教學方法,則難以達到課程的預期目標。為了改變這一狀況,教師必須利用現有資源重新整合教學內容,改進單一、乏味的教學方法,力求顯現在學生面前的知識有趣而生活化,以提高學生的學習興趣及學以致用的能力。案例教學法、任務驅動式教學法等都是當前比較受推崇的教學方法,代表著先進的教學理念,但并不等于適合任何一門課程的教學,必須加以革新后才能應用到具體的教學過程中去。
采用案例教學法,激發學生的學習興趣所謂案例是指那些在日常生活中較能典型地反映教學內容的事例。一般的課堂舉例并不等同于案例教學。案例教學是指在教學過程中,引導學生對案例進行剖析研究,使學生能由特殊歸納一般,掌握知識內容,從而達到教學目標的教學方法。教師在準備案例的過程中,首先要確定哪些是要學生掌握的知識點,然后再精選能夠說明、反映這些知識點的案例。在案例的設計中要不拘一格,巧妙使用可視化的程序設計語言或Flash動畫設計軟件。不要拘泥于C語言的語句格式,而要注重案例的生動、形象,能否真正激發學生的學習興趣。只有激發了學生的學習興趣,學生才會自覺、主動地記憶C語言的語句格式。如在講授選擇結構中的多路選擇結構時,利用VB程序設計語言設計一個紅綠燈自動變化(紅燈:2秒;綠燈:3秒;黃燈:1秒)的案例,使學生掌握多路選擇結構,更主要的是使學生了解多路選擇結構的用途(如表1所示)。實踐表明,在案例教學的過程中,學生興趣高,教學容量大,知識點的前后聯系緊密,學生對通過案例教學的方式傳授的知識點印象深,能靈活運用。
應用“任務驅動”教學方式,提高學生分析問題和解決問題的能力在《C語言程序設計》的教學中,當傳授完一個知識點或知識結構時,為了使學生能靈活運用,經常會采用再現式教學。如何將再現式教學轉變為以解決問題、完成任務為主的探究式教學呢?答案是采用“任務驅動”式教學方法。所謂“任務驅動”,就是學生通過完成教師布置的任務,建構真正屬于自己的知識與技能。其中的任務既蘊含了學生應該掌握的知識與技能,也蘊含了學生應該獲得的能力訓練。學生完成任務的過程,是一個不斷提出問題、解決問題的過程。如在復習選擇結構時,可以借助Flash動畫制作一個模擬“打火機的點火效果”,其中火苗的出現與否即讓按鈕實現點火的功能,就可以利用Turbo C程序設計中的if條件語句來實現。在教學過程中以問題為導向,并引導學生解決問題(如表2所示)。
在教學過程中還有很多有效的教學方法,如展示型教學、拓展式教學等,教師要結合實際情況靈活運用。
在當今的信息社會中計算機的應用非常廣泛,各行各業需要不同層次的計算機專業人才。所以,學校在進行計算機教育中應依據培養目標提出不同的教學要求。對于每一個學習計算機知識特別是C語言的學生,都有一個由淺入深、逐步提高的過程。教師在這個過程中必須激發學生的興趣,更新教學理念,充分利用、整合各種教學資源,注重教學方法的探索,真正使C語言這門課程成為學生學習其他計算機知識的基石。
參考文獻