張一曼+陳偉
【摘要】C語言是技校計算機專業的學生學習其他計算機課程的先行課,是一門最基礎的計算機編程語言。本文結合筆者自身從事多年的實踐教學體會,對這個問題進行深入探討。
【關鍵詞】C語言 對策 上機實踐
【中圖分類號】TP312.1-4 【文獻標識碼】A 【文章編號】2095-3089(2016)11-0035-01
“C 語言”因為工具性與技能性在計算機教育中占據重要的地位而被列為計算機專業的必修課。由于技校學生大部分是由初中畢業升學而來,自身基礎薄弱加之 C 語言自身的特點,大部分學生反映在上課像在聽“天書”,完全聽不懂,作業做不出,更不要談靈活應用解決相關的實際問題。
一、導致學生在聽“天書”的原因
1.學生自身基礎差
學習C語言需要學生要一定的計算機基礎、數學基礎、英語基礎和邏輯思維能力。其中受環境和條件的限制導致部分學生計算機基礎較差,生源問題導致部分學生數學基礎、英語基礎較差,而邏輯思維能力大大影響學生分析、設計、調試程序的能力。所以以上四個制約因素是在學習C語言中由于自身基礎差而導致聽不懂的重要原因之一。
2.C語言自身的特點
C 語言是計算機語言,是人與計算機交流的語言之一。對于從來沒有接觸機器語言的學生來說,如何實現自然語言到程序自動化語言的轉化,如何將自然語言描述的問題用 C 語言描述并讓計算機解決是學生在學習中的最大障礙。
另外C 語言的一些特點,比如運算符豐富、語法限制不嚴格、用戶能夠自定義數據類型、程序設計自由度大等等既是 C語言的優點,也是初學者學習的難點。例如:算術運算符中除法運算符/和求余運算符(模算符)%,如5/3的值為1,舍去小數部分,但是如果除數或被除數中有一個為負值,則舍入的方向是不固定的,-5/3在有的機器上的結果是-1,有的機器上是-2。而0%5的結果是5,2%5的結果卻是0。大部分學生找不到正確的學習方法,先是硬著頭皮學,結果越學越亂,越亂越聽不懂。
二、針對存在這一問題的對策
要解決C語言的“聽天書”問題,必須分別從師生兩方面下手。
1.教師改進教學方法,提高教學質量
1.1改變傳統的教學方法
C語言的教學內容較多,教師在教學中為了完成教學任務,在有限的課堂時間里講的知識點太多,學生沒有足夠的時間去消化,一堂課下來學生“走馬觀花”,什么都沒聽懂。那么就要改變傳統的教學方法,靈活地安排教學內容和上機時間,在講授基本結構、變量、運算符與表達式等比較簡單的章節時,可以邊講課讓學生邊操作,而對于比較難的章節,如數組、結構體、指針等內容,教師要以學生學習進度出發安排課程,并要注重學生在學習后的反饋。若只采用一種教學方法從一而終是不可取的,因此,需要教師在教學過程中不斷探討、總結經驗,合理運用各種教學方法。如通過案例教學法、問題引入法、任務驅動法等方法來吸引學生學習的興趣。在案例選擇時應該與實際相結合,具有趣味性。
1.2結合實踐,培養邏輯及創造性思維能力
語言學習必須理論與實踐相結合,這就要求教師要精講多練。教師要講到要點上,充分體現典型例題的編程思路、算法,將嚴謹、富有邏輯性的編程規范思想清晰地展現在學生面前。多練是學習編程的關鍵,只有在上機實踐中學生才能真正學會如何編寫和調試程序,才能更好地掌握理論知識及其應用。在C語言實驗教學中安排合理實驗時間,注重理論聯系實際,不僅要注意例題的針對性、典型性和靈活性,還應該提倡一題多解,培養學生從多種角度對問題進行思考的能力,拓寬解題思路,訓練學生發散性思維。上機實踐中也應該與實際相結合,否則多數學生在上機時只是驗證程序,沒有思考,感覺上機很無聊。教師可以采用分組參加項目設計來提高學生的興趣,每一組中必須有動手能力強和動手能力弱的同學同組,通過編寫簡單一些游戲項目如:掃雷、貪吃蛇、五子棋等讓學生體會實際編程中學與用結合的樂趣,從而提高學生實際編程能力。
2.學生樹立正確的學習觀念,學會學習,自主學習
2.1正確認識 C語言,樹立信心
認識C 語言的重要性,樹立“既學之,則學好”的信心。C語言是技校計算機專業的學生學習其他計算機課程的先行課,是一門最基礎的計算機編程語言,應用廣泛,不僅在軟件開發上,而且它幾乎是一切計算機技術的通用工具。C語言學習的好壞,直接關系到計算機編程思維能力能否建立。不論哪種計算機語言,計算機編程思維是相通的,只要學好 C 語言,就可以很好地學習任何一種編程工具。想要學好語言就得樹立信心,克服困難,循序漸進,腳踏實地學習。
2.2夯實基礎,多讀、多寫,“熟讀百遍”
古話說“熟讀唐詩三百首,不會作詩也會吟”,C 語言雖然是機器語言,但它和自然語言的學習方法是一樣的。對C語言的學習也是要求熟讀課本,多讀、多寫,才能打好基礎。只有這些基礎知識掌握夠牢固,才能為自己編程打下良好的基礎。
2.3注重實踐,多學、多練、“其義自現”
C語言的實踐性很強。只有在上機實踐中學生才能真正學會如何編寫和調試程序,才能更好地掌握理論知識及其應用。在實踐學習中,理論聯系實際,把編程思路和程序測試放在首位,才能提高分析和解決問題。C 程序設計語言的學習可以概括為學習語法規定、掌握程序設計方法、提高程序開發能力,這些都必須通過充分的實際上機操作才能完成。如:C 語言的語法規則,學習起來枯燥無味,死記硬背費精力費時間,還可能不會靈活運用。就可以通過上機實踐,在調試程序過程中,加深對它的理解,在理解的基礎上自然而然地掌握 C 語言的語法規定。程序最終也是在計算機上實現的,程序正確與否、存在什么問題上機調試并運行正確后就可以知道,編程能力的提高也正是在不斷發現錯誤、改正錯誤中提高的。
三、總結
教和學是教學過程中的兩個重要方面,一門課程大部分學生反映聽不懂,那么問題一定出在這兩方面。在 C 語言教學中,有教師在教學中的教學方法和教學模式的落后,導致學生學習效果差,也有學生自身的主觀和客觀方面的原因。針對這些問題,對癥下藥,教師通過教學手段引導學生學習,給予他們正確的學習方法;學生樹立正確的學習觀念,自主的用 C 語言來分析問題和解決問題,寓教于學,才能解決問題。
參考文獻:
[1]譚浩強.C 程序設計[M].北京:清華大學出版社,2005
[2]王蘭.學好《C 程序設計》的幾點建議[J].科技信息 ,2007,(9)
[3]呂文潔.C 語言程序設計教學方法的改進[J].咸寧高級技工學校校報,2007,3