閆秋玲
摘 要:目前,對于非計算機專業學生而言,C語言程序設計課程在實施過程中面臨一些問題,如偏重語法的學習,抽象能力、調試能力得不到有效培養和提高。針對這些問題,提出了若干建議措施,如初學階段使用可視化編程工具,借助嚴肅游戲理解抽象難懂的概念、內容,貫徹案例教學法等,并就考核方式提出了相關建議。
關鍵詞:C語言;可視化編程;教學改革
在很多高等院校,C語言是非計算機專業學生(尤其是理工科)所要學習的第一個編程語言。課程目的是培養學生通過編程分析、解決實際問題的能力。在實際教學中發現,側重計算思維的培養是學生學會C語言的關鍵。如果不主動引導學生積極適應計算思維,很多學生難以理解編程思路和程序實現過程。
一、現存主要問題
(1)初學者易陷入語法學習,而忽視計算意義。實際上,解決問題更依賴于邏輯流程,而非正確語法。目前我們所使用的大部分教材,都是按照語法編排的。面對這種教材,如果教師缺少全局觀,難免會陷入語法教學的陷阱,而學生學到的也是一堆零碎的語法知識。
(2)不重視抽象能力的培養。在實際教學時,往往忽視對學生抽象能力的培養,容易停留在引導學生“知其然”的階段,而沒有進一步引導學生“知其所以然”。
(3)不重視調試能力的培養。在實際編程時,很多學生往往認為程序順利運行則萬事大吉,只看結果不管過程,這樣難免影響學生對所學知識的真正理解。
(4)不重視實踐。在C語言程序設計教學過程中,很多時間都放在課堂理論學習上,實踐時間嚴重不足。
二、措施
在解決上述問題時,要充分考慮非計算機專業學生的基礎,循序漸進地引導。具體可從如下幾個方面著手。
1.初學階段借助可視化編程工具
可視化編程工具如Raptor、Scratch等,可使用戶不考慮語法要求,而側重于程序邏輯和流程。在初學階段,學生可通過使用可視化編程工具,熟悉算法設計和程序構建過程,在后續學習中再展開語法細節的了解,繼而過渡到C語言編程環境。
2.嚴肅游戲
嚴肅游戲(Serious game)是指,將教育內容通過游戲的方式進行布置與實施。嚴肅游戲具備兩個特點:①具有娛樂的一面,可以使人保持興趣并持續進行;②具有教育的一面,游戲環節貫穿了一定的知識,包含特定的教育目的?,F有的嚴肅游戲如Perobo、Code Hunt等。
3.重視調試環節
對于編程而言,會調試就是一件利器,學生需要盡早掌握這件利器。在初學階段,就應強調調試的重要性,并引導學生習慣調試模式。這就要求教師在設計題目時多動腦筋。如下面這段程序,只有使用單步調試才能讓學生理解程序運行時變量的值,
int main( ) {
int a = rand( );
int b = rand( );
printf("a -b = %d\n",a -b);
return 0;
}
4.重視案例教學
在教學過程中,可以讓學生直接接觸實際問題,在解決問題的過程中掌握相關概念、語法、結構等。在使用案例教學法時,有以下幾點需要注意:
(1)教師要精心設計案例。設計案例時,既要結合實際問題,又要融合教學內容,要循序漸進。
(2)教師要避開計算機工具論的狹隘認識要求,教師要從宏觀和微觀層面掌握教學過程,引導學生培養認知領域的新感覺、新認識、發現新工具、新方法、新策略,進而最終用于指導其他學科和日常生活。
三、考核方式
傳統的考核方式側重于對知識點、理論的考核,而非實際的編程能力。我們需要采用重視實踐的考核方式,突出算法設計和函數調用方面的考察,突出對函數接口設計和算法流程設計的考核。
面對C語言程序設計教學中的一些問題,進行分析和探討,并嘗試給出一些解決方案,如借助可視化編程工具、采用嚴肅游戲、開展案例教學法、重視程序的調試等。由于目前流行的教材都是按照知識點進行組織的,使得合理的教學改革措施難以有效落實,后續我們將探討教材結構和內容的組織問題。
參考文獻:
[1]徐 明,馬 黎.非計算機專業C語言課程實驗教學改革研究與探索[J].遼寧省交通高等??茖W校學報,2012(6).
[2]包貴鑫,向洪波.C語言教學研究與實踐[J].大眾科技,2006(6).