摘要:《C程序設計語言》是計算機專業的主要課程之一。但由于教學形式單一、內容枯燥,往往導致學生學習興趣缺失、教學效果低下。本文嘗試通過案例呈現,運用比喻法把抽象的道理用生活中具體的事物形象地表達出來,使課堂教學更加生動、實用和有效。
關鍵詞:比喻法程序設計教學多媒體課件
隨著現代化進程的加快,學校的教育設施也得到了飛速的發展,筆記本電腦和多媒體教室被廣泛應用,大多數教師在教學過程中更傾向于利用已經設計好的多媒體課件進行教學,卻忽視了在整個教學過程中運用形象生動的比喻法。
所謂比喻法,是常用的一種修辭方法,就是利用兩種不同類的事物之間的某些相似的地方,以形象的事物作喻體去描述一個抽象的事物,它能化平淡為生動,化深奧為淺顯,化抽象為具體。“精彩的比喻就像童話中的魔棒,碰到哪里,哪里就會發生神奇的變化”。在教學過程中,學生經常會碰到某些課程的理論性強,枯燥、難懂,不容易掌握。如果教師通過比喻教學,把內容和現實中非常接近我們的事情聯系起來,可使學生較好的理解某些比較抽象的知識內容,以便他們能進一步掌握并能應用這些知識、原理來分析、解決某些相關的問題。
筆者就以計算機專業必修課《C程序設計語言》課程為例,結合自己的教學心得,談談如何用比喻法開展教與學的活動。
在一般高校都把《C程序設計語言》課程設置在大學一年級,主要面向新生,新生本身對大學的適應就需要一個過程,再加上C語言牽涉的概念復雜,規則繁多,目前各高校在C語言程序設計課程教學模式上仍采用傳統的教學方法,導致學生剛接觸C語言就覺得抽象、深奧,使用起來不得心應手。如算法概念、順序程序設計、選擇程序設計、循環程序設計,指針等知識更考驗著學生的思維和耐心。
典型案例1:程序的靈魂——算法
[案例呈現]算法的概念是什么?
[分析]在《C程序設計》教學中,最大的困難正是對一些抽象的理論和概念的理解。算法是為解決某一問題而采取的方法和步驟。在教學中,我做了如下的處理,充分應用比喻的魅力,達到較好的教學效果。
打個比方,廚師制作菜肴,需要有菜譜。菜譜上一般包括使用的配料和用這些配料按規定的步驟加工出不同風味菜肴的操作步驟。沒有配料是無法加工成所需菜肴的,面對同一些原料可以加工出不同風味的菜肴。設計一個好的程序,就像是做一道美味的菜肴,既要用到類似于配料的數據結構,又要有類似于做菜步驟的算法。沒有數據結構是無法制作程序的,面對同一些數據可以設計出不同的程序。可見,算法從廣義上來講,就是操作步驟,就是為解決一個問題而采取的方法和步驟。當然我們學習計算機,關心的是計算機能解決的算法。
如著名數學家華羅庚“燒水泡茶”的兩個算法。
算法一:燒水——水燒開后,洗刷茶具——沏茶。
算法二:燒水——燒水過程中,洗刷茶具——水燒開后沏茶。
大家可以看到這兩個算法的區別在什么時間洗刷茶具,因為第二個算法應用了“統籌方法”,節約時間,所以效率更高。可見為了有效地進行解題,不僅要保證算法正確,還要用到科學的方法,考慮算法的質量,選擇合適的算法。
算法的概念及特點如果只憑老師反復講述定義,學生只會聽得昏頭昏腦,索然無味,教學效果很差。而比喻教學法的應用,可以使抽象的知識變得形象化、趣味化,起到“一語道破天機”的作用。
典型案例2:C程序設計的三種基本結構及各自的語句分析
1.順序結構
順序結構是C程序設計中最簡單的一種基本結構。它就像人的一生,從出生、長大、上幼兒園、小學、初中、高中、大學、工作、結婚生子,再到“夕陽無限好,只是近黃昏”。順其自然、順順利利度過一生。
2.選擇結構
它就像在人的一生中會遇到的好多選擇,有人生道路的選擇、世界觀的選擇、事業的選擇、愛情的選擇,等等,但任何的選擇都需要當前實際條件的成立。例如,考大學,假設成績大于500分就考上了,否則未考上。此結構中必包含一個成績大于500的判斷框,根據給定的條件是否成立而選擇執行“考上”或“未考上”。
if(成績>500) printf(“考上”);else printf(“未考上”);
3.循環結構
循環即周而復始,花開花謝,月圓月缺,循環無盡。人生像生老病死就是一個循環不息的過程。我生病了,醫生叮囑我每天吃藥,連續吃7天病就好了。很顯然吃藥是每天必做的事情,也是必循環的事情,7天后就可以不吃藥了(如圖所示)。在不少實際問題中有許多具有規律性的重復操作,因此在程序設計中就需要重復執行某些語句。一組被重復執行的語句稱為循環體,能否繼續重復,決定循環的終止條件。所以循環語句是由循環體及循環的終止條件兩部分組成的。循環語句是最能體現計算機解決問題優越性的語句。
While(天數<7)吃藥;
可見,這種利用一個個發生在身邊的實例做比喻,再加上理論講解相結合的方法,使學生能感性地理解循環。
在《C程序設計語言》課堂教學中,嘗試用比喻的方式來剖析計算機教學中的概念,選用恰當的生活事例,用已知來發掘未知,提高教學效果,增強學生學習的興趣,是一種非常有效的教學方法。但是,運用教學比喻,并不是以粗淺的事例代替科學精準的理論,更不是用隨便的玩笑代替細致準確的講解,而是要求我們緊扣教學目標和要求,把握物理概念的本質和特點。根據具體問題,做到言之有理,言之有物,言之有據。《學論》中說:“君子之教,喻也。”作為教師,在日常教學中,一定要認真鉆研教材,準確把握所教學生的思維水平和特點,從日常生活和學生已掌握的知識中找到恰當的比喻,運用比喻的時機和技巧,使課堂妙喻精彩紛呈。
參考文獻:
[1]顧建東.生活:程序設計教學的本質回歸[J].中國教育信息化.
[2]盛美勤.讓比喻這一古老的修辭煥發新的教學生命力[J].中國論文網.
[3]許文芳.類比法在《C語言程序設計》教學中的運用[J].電腦知識與技術.
[4]沈軍.C程序設計語言課程的教學新思路[J].電氣電子教學學報.