2.2 充分利用軟件功能
1)Watch窗口的使用。它可要將觀察的變量、表達式等加到Watch窗口中,在程序運行的過程中動態地顯示出變量或表達式的值,對於分析程序的執行過程和程序結果都非常有用。
2)斷點管理。在程序中設置斷點是調試程序的很好手段,在懷疑有問題的地方設置斷點,可使程序一運行到斷點處就停下來,再用其他調試手段觀察變量、內存等的變化,可以做到快速錯誤定位。
3)單步執行功能。學生在學習C語言的過程中,往往不能正確判斷程序的執行過程,尤其是對多分枝程序和循環程序的執行過程非常模糊,這一功能將程序的執行過程直觀地顯示出來,讓學生一目了然地觀察其執行順序,對學生理清思路非常有用。
3 知識遷移法,擴展思維
C語言之所以難學,在於它的學科綜合性強。在教學過程中,應該積極去引導學生將所學到的經驗遷移,做到觸類旁通,實現遷移式學習。
3.1 C語言與其他高級語言的共性
C語言作為一門結構化程序設計語言,與其他高級語言比較在數據類型的定義、程序流程控製、函數、(過程)定義等方麵有許多相似的地方。在C語言學習中,可以借鑒其他程序設計語言的知識來理解,便於學生掌握C語言要點。
1)結構化程序設計。C語言充分體現了結構化程序設計的特點,在程序流程語句(順序、循環、分支)的功能方麵與其他語言是一致的。
2)數據類型的定義與應用。C語言中數據類型(如整形、實型、字符、數組、指針、文件等)及其相應的標準函數,與其他高級語言比較,在一定程度上是類似的。C語言中提供的結構體數據類型,與數據庫中的記錄具有類似的特點。
3)函數。在函數的定義與調用、參數的傳遞,變量的作用域等方麵,有許多相似之處。
3.2 C語言與其他學科之間的聯係
數學對學習C語言的幫助體現在數據的運用和程序設計上。
1)語言的相似性,如運算符都具有優先性,表達式求值規則,函數的作用,解決問題時都需要數據和運算等方麵,有很多相似之處。
2)思維的相似性。學生現在接觸的程序設計體,多數是解決數學問題,對很多問題而言,隻要找出數學上的解決思路,把它用C語言中的語句表示出來,再加上程序流程控製,就可以正確地編寫程序。
英語對學習C語言的幫助則體現在語言的學習和程序的調試上。
1)有助於記憶。如C語言中的關鍵字、函數名等都是由相應的英文單詞表示,英語知識紮實的學生學得快,記得快,編程時語法錯誤少,閱讀程序能力高。
2)有助於編寫具有良好風格的程序。如程序中變量的定義要盡量做到見名知義,如成績可定義為score,價格可定義為price……這樣編寫的好處是閱讀程序時很容易理解變量的作用,對提高程序的可讀性非常重要。
3)有助於提高實習效率。編譯、調試程序時,係統得出錯信息,幫助信息大都以英文形式顯示,英語好的學生能較好地分析並應用這些信息,準確而快速地完成程序的調試。
各學科知識融會貫通的遷移應用,能使學生較快地理解C語言的各個知識點,應用時更加得心應手。
最後還有一點要提醒大家,就是培養良好的編程格式的習慣,如縮進格式、命名原則、大括號的位置及注釋等,這也是學好C語言的基本因素。可讀性在C語言編程中也占有很重要的地位,好的編程風格可以讓人一目了然,在短的時間內看清程序的結構和設計的思路。這樣可以大提高代碼的可讀性、程序的可移植性和可維護性。
4 結語
總之,在C語言的教學過程中,要重視對學生進行學習方法的指導,既要發揮教師的主導作用,又要全麵提高學生的積極性和學習興趣,最終提高學生的編程能力及創新能力。