當前位置:文書都 >

實用範文 >論文 >

錯誤案例教學法在C語言教學的應用論文

錯誤案例教學法在C語言教學的應用論文

摘要:C語言程序設計是一門為許多高校包括獨立學院的非計算機專業理工系學生開設的一門公共選修課程,其課程設置目標是培養理工類非計算機專業學生的編程思維和編程能力。筆者基於多年來對“C語言程序設計”課程的實際教學經驗,發現把編程錯誤案例進行蒐集和分析以及討論的教學法融入C語言教學中,能讓學生有更好的分析問題、解決問題的能力,並且可以大大提高編程效率。

錯誤案例教學法在C語言教學的應用論文

關鍵詞:C語言程序;編程思維;錯誤案例教學法

1C語言中錯誤類型和產生的原因

1.1C語言程序中的錯誤分類

在C語言學習編程過程中,一般是三種錯誤,語法錯誤、邏輯錯誤以及運行錯誤。

(1)語法錯誤:沒有按照語言的規範進行編程而產生的錯誤。如缺少標點符號,變量沒有申明,變量類型出錯,函數名稱寫錯等等,這些語法錯誤機器一般會給出提示,比如Error和Warning,在運行的時窗口下會顯示錯誤的個數以及出錯的原因等信息,很容易被發覺,如果沒有修改則會影響整個程序的運行。

(2)邏輯錯誤:程序可以正常運行,但是得不到預期的結果。常見錯誤有複合語言的花括號後加分號,輸入輸出的數據類型與所用格式説明符不一致等等。而這樣的邏輯錯運行時候並沒有提示,比較難發現,對於初學者而言比較困難,只有在編程中進行系統和全面的考慮才能避免邏輯錯誤。

(3)運行錯誤:在既沒有語法編譯錯誤,也無語法邏輯錯誤的情況下程序運行時發生的錯誤或者程序會忽然停止運行,比如類型溢出,數字表達式格式有誤,除零錯誤等等。

1.2程序錯誤解析

(1)為申明變量或使用一些沒有賦值的自動變量:C語言是一門十分嚴謹的程序語言,必須嚴格遵守變量必須先申明後使用的原則,但是很多初學者沒有養成良好的編程習慣就會忘記,直接使用,這樣就會不斷有提示變量未定義的錯誤。

(2)不區分字母的大小寫:在C語言中,大小寫字母是不同的字符,比如A和a表示的是兩個不同的變量。

(3)分號的亂用:由於分號是C語言的重要組成部分,比如簡單語句以分號為結束標誌,複合語句是用一對花括號括起來的一組語句,空語句只有一個分號。學生很容易忘記加分號,或者多加分號。

(4)賦值符號當成“=”使用:在很多人的思維裏面“=”符號是“等於”的關係,如A=36,就認為是左邊的A等於右邊的36,實際上是把右邊的36賦值給左邊的A,如果學生的思維停留在前者“等於”的關係,就會明顯出現編譯的錯誤。

(5)數據類型定義錯誤,造成數據的溢出:C語言中的整數數據類型在-32768到32767之間,由於很多時候編寫程序都是用的是inta,b,一些初學者都會默認用int來定義所有的變量,忽略了數據類型的範圍,一旦結果超出了這個範圍,甚至是小數,就會得到不一樣的結果,而這個結果可能在程序的運行並不報錯,也比較難發現。綜上所述,這些錯誤很多都是學習程序的學生沒有養成良好的編程習慣而造成,這樣的錯誤防不勝防。只有在錯誤中學習,不斷對錯誤進行分析,才能提高自身的編程能力。

2基於錯誤案例培養的C語言程序設計改革的具體措施

2.1對錯誤案例進行蒐集和分類

蒐集錯誤案例是一項艱苦的勞動,需要花費一定的時間和精力。首先教師需要明確C語言課程的所有教學內容,對錯誤案例的蒐集也要有針對性,對於教師的要求就是需要研讀教材,根據教學的對象和教學內容知識點分佈,蒐集實踐教學中記錄的錯誤日誌文件,進行錯誤案例設計,並對錯誤案例進行評估,記錄學生在分析錯誤案例中遇到的問題和反應,從而擬定相應的教學方案。其次可以讓學生組織興趣小組,大約5-6人一組,這樣可以減輕教師的工作,可以由組長協助教師和組員對於提交的錯誤進行分類和整理,甚至可以按章節按知識點進行分類,因為學生編程過程中肯定有很多重複的錯誤,如果一一進行上報和記錄會非常繁瑣,組長只需對錯誤的類別和錯誤的頻率進行記錄,就會很有利的協助教師進行錯誤案例的設計。最後即學生自己的工作,因為真正需要學習實踐的是學生本人,雖然每個組有組長,但是組長同樣也是學生,他(她)的工作是既要保證自己的學習,也要彙總其他組員的學習情況,工作比較繁重,所以最好要求每一個學生自己也準備錯誤日誌筆記本,對自己在實踐練習中出現的問題,涉及到的知識點,疑問,錯誤的原因進行整理和記錄,當然如果學生覺得時間有限,也可以用手機進行拍照,如果能通過翻閲圖書,搜索網絡的方式改正錯誤更好,實在沒有能力改正可以去請教其他組員和教師,這樣更能加深對錯誤的記錄,尤其需要關注編程過程中經常出現的典型問題,這類問題可能經過多次調試也沒有結果,需要加強對待,如果經過大家的幫忙或老師的指導後有瞭解決方案也需要記錄下來,以備下次練習出現相關性問題可以自行解決。

2.2對錯誤案例進行分析和討論

通過上面的途徑,教師彙總了課堂教學中的錯誤案例後,就可以進行典型錯誤案例設計,可以在課堂正常教學中穿插講解,比如可以先對學生提出錯誤案例問題,引導學生探索錯誤案例涉及的知識點,疑問,最終的解決方案等等。比如講解選擇結構的.錯誤案例代碼,可以先詢問學生這段錯誤的案例代碼主要是什麼結構?如果是選擇結構,再從頭到尾分析代碼的步驟,根據所學流程圖的知識,讓學生根據此段代碼畫出該程序的簡單流程圖。再通過對流程圖的講解很自然引出選擇結構的語法知識點,並找出該代碼真正錯誤的原因,最後讓學生列舉出日常生活中涉及到選擇結構即條件判斷的例子。教師還可以根據錯誤的類型在實踐環節中給出相應的錯誤代碼,讓學生檢驗課堂學習的效果,避免編程過程中犯同類錯誤,在更正錯誤的過程中發現積極性,培養良好的編程習慣。

2.3教學效果及評價

通過在C語言程序課教學中引入錯誤案例學習,既能提高學生自主學習的效率、在實踐中取得了更好的教學效果,也能大大提高學生的編程能力,例如,學生在定義數組的時候容易忽視數組的個數,可能會錯誤地使用下標的數字,只要教師在錯誤案例中重複申明該類錯誤,學生才會加深記憶,經過強調學生則會避免此類錯誤。通過對上課學生進行匿名問卷調查發現,100%的學生認為採用錯誤案例分析和討論的學習模式比傳統教師課堂填鴨式講授語法知識點的模式更能提高自己的學習能力和學習效率。

3結論

想要提高C語言的編程能力,以及提高教學效果,可以從錯誤案例的蒐集與分類開始,再引導學生通過錯誤案例分析與討論解決實際問題,理清課程知識體系。錯誤案例教學法的運用有利於學生程序思維的建立,有利於學生程序設計能力的提高,同時對促進教學改革和加強素質教育有着積極的意義。在實際編程過程中還有其他的可能性,這需要教師在以後的教學過程中更要留心,更要注意錯誤經驗的積累,所以研究此問題不僅僅可以提高學生的編程能力,而且對於教師自身教學技能理論加強也有着重要的實際意義。

參考文獻:

[1]餘麗紅,龍諾春,林春景.C語言實踐中易出現的編程錯誤及解答[J].數字技術與應用,2014(8):220-221.

[2]楊冬雲.C語言學習中幾個常見典型錯誤分析[J].電腦知識與技術,2017,13(13):65-66.

[3]薛非.品悟C:拋棄C程序設計中的謬誤與惡習[M].北京:清華大學出版社,2012.

[4]於啟紅.案例教學法在程式語言課程中的作用探討[J].計算機時代,2014(11):62-64.

  • 文章版權屬於文章作者所有,轉載請註明 https://wenshudu.com/shiyongfanwen/lunwen/4jomlq.html
專題