在這個案例中,並沒有高深的數學知識,隻有思維的轉變。然而,形成計算思維是一個長期引導、積累、思索、實踐的過程,不能操之過急。
2.4 通過案例建立知識的關聯
求最值(最大值、最小值、次大值、次小值)的算法,從講授選擇結構時就可以開始灌輸和培養。從2個數、3個數求最值,到數組求最值,到選擇排序,都使用了這樣的思想——“將左手中握著的最值與右手中的一個個數進行比較、替換”,可見,知識之間存在強烈的內在聯係。早早地灌輸求最值的思想,為講授後續算法做鋪墊。
2.5 通過案例發現規律拓展應用
在講述循環結構的程序設計時,通過求1+2+3+…+n的值,可以過渡到求1+3+5+…的值,再過渡到求1-3+5-7+…的值,過渡到求1+(1+2)+(1+2+3)+…的值;從求1+1/2+1/3+…的值,過渡到求1+1/2+2/3+3/5+…的值……。通過舉例,讓學生學會觀察和分析,尋找項與項之間的關係和規律,學會觀察、思考、應用,最終達到舉一反三的效果。
2.6 通過精選案例收獲多重效果
精選案例,注重案例的實用性、趣味性、綜合性,能達到立竿見影、事半功倍的教學效果。
譬如:在講述關係運算、邏輯運算時,列舉的例子通常是簡單的關係運算或者關係運算的邏輯組合,雖然容易理解,但缺乏趣味性,難以引人入勝。我們可以引入一些推理題,如“誰做了好人好事”、“誰是罪犯”[5]。通過這樣的例子,既講授了基本的概念和原理,又列舉了知識的應用領域,極具實用性、趣味性、可引起學生的共鳴,自然能收到良好的教學效果。
3 培養能力綜合考核
為了提高學生對程序的編輯能力,必須要求熟練計算機基本操作技術。譬如:在實驗課上、在C語言的集成開發環境中,必須強調對Tab、Insert、Home、End等按鍵的功能和使用,因為它們能加快代碼編輯的速度和質量。
為了提高編程能力,必須增加課外學時,勤學苦練,將其與水滴石穿、冰凍三尺非一日之寒、點石成金進行類比,充分說明隻有經曆大量的程序閱讀,編寫、調試練習,才能成就文如泉湧、火眼金睛。
為了真正檢驗學習效果,必須改變隻憑一次考試決定該課程成績的做法。考試的次數要增加、考試形式要多樣化,可以是機考、筆試、單元測驗、答辯等,便於及時掌握教學效果,檢查、督促和改進。
4 結束語
教學實踐證明,采用案例教學,將抽象的概念、枯燥的語法、繁多的算法,轉化為一個個具體生動的實例,再加上學生多閱讀、多思考、多練習,就能夠很好地解決素質教學中倡導的“3W1H問題(what,where,why,how)”,使C語言程序設計課程達到良好的教學效果,從而使後續的程序設計類課程教學遊刃有餘。
參考文獻:
[1] 熊啟軍,袁磊,穀瓊.基於“四期六段”模式的C語言教學[J].現代計算機,2012.5:40-42
[2] 曹文平,熊啟軍.多元教學模式在C語言教學中的探索與實踐[J].教育理論與教學研究,2012.6:31-32
[3] 丁海燕,袁國武,周小兵,白孟堯.高級語言程序設計案例式教學模式的探討[J].計算機教育,2011.4:65
[4] 袁磊,李勇.程序設計基礎(C語言)[M].科學出版社,2008.
[5] 李文虎,徐明星編著.程序設計基礎(第3版)[M].清華大學出版社,2010.