摘 要:《C語言程序設(shè)計》是計算機(jī)專業(yè)的基礎(chǔ)課,為后繼課程《數(shù)據(jù)結(jié)構(gòu)》等的前導(dǎo)課程,也是其他專業(yè)的必修課程,同時是國家計算機(jī)考試中的重點內(nèi)容。針對普遍認(rèn)為該課程教師難教、學(xué)生難學(xué)的問題,本文從教學(xué)內(nèi)容、教學(xué)手段、教學(xué)方法等方面介紹了對此課程進(jìn)行的一系列改革。經(jīng)過實踐證明,在教學(xué)改革實施后,不僅有利于培養(yǎng)學(xué)生對該門課程的學(xué)習(xí)興趣,而且對學(xué)生分析問題與解決問題的能力也有了顯著提高,取得了良好的教學(xué)效果。
關(guān)鍵詞:C語言程序設(shè)計;教學(xué)內(nèi)容;教學(xué)手段;教學(xué)方法
作者簡介:李力東,女,(1974—),碩士,現(xiàn)在吉林省長春市吉林建筑工程學(xué)院從事計算機(jī)教學(xué)工作,講師,研究方向計算機(jī)軟件。
1、《C語言程序設(shè)計》課程介紹
C 語言是計算機(jī)程序設(shè)計領(lǐng)域的主流語言,它既具有高級語言的優(yōu)點,又具有低級語言的特點,是一門承上啟下的課程。通過學(xué)習(xí),使學(xué)生能夠比較熟練地掌握C語言的語法規(guī)則及程序設(shè)計的基本方法與編程技巧,了解進(jìn)行科學(xué)計算的一般思路,培養(yǎng)學(xué)生獨立思考、分析、處理C語言程序設(shè)計問題,能在計算機(jī)上調(diào)試、運行程序,具有一定的查錯、改錯能力,做到理論和實踐緊密結(jié)合,并初步積累編程經(jīng)驗,自己解決一些程序設(shè)計問題,為進(jìn)一步學(xué)習(xí)和應(yīng)用計算機(jī)打下基礎(chǔ)。C 語言是面向?qū)ο蟪绦蛟O(shè)計C++ 的先修課程,也是一些應(yīng)用 C語言環(huán)境的相關(guān)課程如《數(shù)據(jù)結(jié)構(gòu)》的先修課程,因此 C 語言在計算機(jī)專業(yè)人才的培養(yǎng)過程中占有重要地位。
2、教學(xué)中的問題
在《C語言程序設(shè)計》課程教學(xué)中,許多教師和學(xué)生都認(rèn)為C語言涉及的概念比較復(fù)雜,規(guī)則繁多,使用靈活,極易出錯,教師授課和學(xué)生學(xué)習(xí)的過程中不同程度產(chǎn)生畏難心理[1]?,F(xiàn)在大多數(shù)高校將該課程設(shè)置為計算機(jī)專業(yè)的學(xué)生入校后最先學(xué)習(xí)的專業(yè)基礎(chǔ)課,對于沒有任何準(zhǔn)備的學(xué)生來說,學(xué)習(xí)起來十分困難。C語言的重點內(nèi)容包括:選擇和循環(huán)語句、數(shù)組應(yīng)用、函數(shù)的應(yīng)用、指針的應(yīng)用等。這些內(nèi)容逐層深入,聯(lián)系緊密,前面有一個地方概念不清都會導(dǎo)致其后續(xù)內(nèi)容無法正確理解。
3、教學(xué)的改革
① 教學(xué)內(nèi)容的改革
大多數(shù)的C語言教材,其教學(xué)內(nèi)容都包括C語言基礎(chǔ)知識(數(shù)據(jù)類型、運算符和表達(dá)式)、三種程序控制結(jié)構(gòu)、數(shù)組、函數(shù)、指針、文件及其應(yīng)用等。教材在內(nèi)容上,按照邏輯方式進(jìn)行歸類,但是難點仍然比較集中,各章節(jié)跨度較大。在各章節(jié)中有的例子不典型,甚至涉及到后續(xù)內(nèi)容,學(xué)生理解起來難度較大,適用性不強(qiáng)。
本著“深入淺出,突出實用”的教學(xué)思想,合理的對教學(xué)內(nèi)容重新進(jìn)行歸納,將難點分割,達(dá)到逐級遞增的目的。例如C語言數(shù)據(jù)類型、運算符、表達(dá)式種類繁多,以往放在一起利用幾學(xué)時統(tǒng)一講授時,學(xué)生理解起來難度較大,可以采用將算術(shù)型的數(shù)據(jù)類型、運算符以及相關(guān)的表達(dá)式先介紹,即將相關(guān)內(nèi)容聯(lián)系在一起講解,使知識不分散,利于掌握。然后再采用這種方式介紹其他數(shù)據(jù)類型。接下來教學(xué)生編寫簡單、實用的C程序,由此引入基本輸入、輸出函數(shù)循序漸進(jìn)。這樣難度減小了,學(xué)習(xí)積極性也提高了。此外,語言的敘述也對問題的理解很重要,比如,學(xué)習(xí)指針概念時,可以將A房間的鑰匙放在B房間里,若要取A房間里的物品,就需要先打開B房間,取出A鑰匙,再打開A房間,取出A房間的物品,這種方式講述“間接存取”的概念。學(xué)生理解起來簡單,記憶深刻。
② 教學(xué)手段的改革
在教學(xué)過程中,適當(dāng)運用多媒體技術(shù)輔助教學(xué),有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,能發(fā)展學(xué)生的主體能力;同時由于多媒體信息量大,也能夠優(yōu)化教學(xué)過程[2]。對于C語言的數(shù)據(jù)類型、變量類型、運算符、程序結(jié)構(gòu)等,其定義較多,沒有多少邏輯推理,采用多媒體教學(xué),避免使用傳統(tǒng)板書形式。對于有些程序,如冒泡法排序,可以借助多媒體的優(yōu)勢,制作動態(tài)效果,將問題層層剖析、深入,利于學(xué)生理解掌握,摒棄了板書的枯燥性。
③ 教學(xué)方法的改革
歸納教學(xué)法:C語言有很多的定義、語法規(guī)則,使用靈活、難以記憶。同時這些定義和語法規(guī)則又有許多相似之處,如printf()與scanf()函數(shù),有很多語法規(guī)則是一樣的,歸納之后,只要記住其中一個,另一個也迎刃而解了。
討論教學(xué)法:教學(xué)過程中,充分發(fā)揮學(xué)生的積極性與主動性是非常重要的。在課前給學(xué)生布置題目,讓學(xué)生利用課余時間去思考、收集資料,然后在課堂上暢所欲言的討論。學(xué)生獲得課外知識的同時,也促進(jìn)教學(xué)內(nèi)容的改革。
實踐教學(xué)法:學(xué)習(xí)程序設(shè)計課程的目的是掌握設(shè)計思路,最終編寫程序。因此解題思路的培養(yǎng)很重要。讓學(xué)生從簡單的程序編寫開始,然后逐步深入。鼓勵學(xué)生使用不同的方法解題,拓寬思路。
綜合考核法:考核的方式除了傳統(tǒng)的筆試外,還要進(jìn)行編寫程序和調(diào)試程序。兩者結(jié)合給出綜合評定,在客觀反映學(xué)生學(xué)習(xí)情況的同時,也能促進(jìn)學(xué)生學(xué)習(xí)達(dá)到良好的教學(xué)效果。
4、結(jié)論
無論是針對哪個學(xué)科,哪門課程的教學(xué)改革都是一個復(fù)雜的系統(tǒng)工程,涉及到諸多方面,在以學(xué)生為主體的教學(xué)模式下,采用多種教學(xué)方法的教學(xué)實踐表明,將有助于學(xué)生培養(yǎng)良好學(xué)習(xí)習(xí)慣,激發(fā)學(xué)習(xí)興趣,提高學(xué)習(xí)效率和成績。本文針對本課程的介紹,教學(xué)中出現(xiàn)的問題入手,從教學(xué)內(nèi)容、教學(xué)手段、教學(xué)方法幾方面進(jìn)行了教學(xué)改革,在《C語言程序設(shè)計》課程教學(xué)實踐中進(jìn)行了運用,取得了良好的教學(xué)效果。
參考文獻(xiàn):
[1] 譚浩強(qiáng):C程序設(shè)計(第三版)[M],北京:清華大學(xué)出版社,2005
[2] 陳東:談計算機(jī)多媒體教學(xué)改革的一些嘗試 [J],福建師范大學(xué)學(xué)報(自然版)2004年20(3)