李少華
(長(zhǎng)江大學(xué)地球科學(xué)學(xué)院,湖北 荊州 434023)
《C語(yǔ)言程序設(shè)計(jì)》教學(xué)中的幾點(diǎn)體會(huì)
李少華
(長(zhǎng)江大學(xué)地球科學(xué)學(xué)院,湖北 荊州 434023)
在C語(yǔ)言教學(xué)中適當(dāng)補(bǔ)充計(jì)算機(jī)基礎(chǔ)知識(shí),經(jīng)常應(yīng)用歸納小結(jié),注意理論聯(lián)系實(shí)際,加強(qiáng)實(shí)驗(yàn)環(huán)節(jié),注重交互式教學(xué),可以提高教學(xué)效果。
C語(yǔ)言;教學(xué);效果
隨著信息革命的到來(lái),計(jì)算機(jī)技術(shù)已經(jīng)成為現(xiàn)代人必須掌握的基本技能,人們對(duì)計(jì)算機(jī)知識(shí)的需求也越來(lái)越強(qiáng)烈。C語(yǔ)言是當(dāng)今世界上最流行的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言之一。目前,各個(gè)學(xué)校的多數(shù)專(zhuān)業(yè)都不同程度地開(kāi)設(shè)了C語(yǔ)言程序設(shè)計(jì)課程。通過(guò)學(xué)習(xí)C語(yǔ)言,學(xué)生們不僅能夠掌握一種實(shí)用的計(jì)算機(jī)編程語(yǔ)言,鍛煉抽象思維能力,掌握編程的技巧,同時(shí)也為今后學(xué)習(xí)C++打下了良好的基礎(chǔ)。
《C語(yǔ)言程序設(shè)計(jì)》課程為大一的學(xué)生開(kāi)設(shè)。由于我系的新生多數(shù)來(lái)自農(nóng)村,在上大學(xué)前對(duì)計(jì)算機(jī)方面的知識(shí)幾乎一無(wú)所知的大有人在,因此在教學(xué)過(guò)程中會(huì)遇到很多困難。很多學(xué)生對(duì)計(jì)算機(jī)基本的概念都沒(méi)有,比如什么是文件,什么是執(zhí)行文件,文件的類(lèi)型等等。而且C語(yǔ)言的上機(jī)實(shí)習(xí)環(huán)境是TC,是在DOS環(huán)境下運(yùn)行的,而學(xué)生對(duì)于DOS的操作也很不熟悉。因此,為了提高后續(xù)學(xué)習(xí)的效率,保證上機(jī)實(shí)驗(yàn)正常進(jìn)行,針對(duì)我系學(xué)生的具體情況,補(bǔ)充一些計(jì)算機(jī)方面的基礎(chǔ)知識(shí)很有必要。
C語(yǔ)言是目前世界上使用最為廣泛的計(jì)算機(jī)語(yǔ)言之一。它是一種介于匯編語(yǔ)言與高級(jí)語(yǔ)言之間的編程語(yǔ)言,從1970年誕生之日起,一直被用來(lái)開(kāi)發(fā)各種各樣的程序。C++是C語(yǔ)言改進(jìn)后的產(chǎn)物,最初被稱(chēng)作帶類(lèi)的C,已經(jīng)被用于各種軟件的開(kāi)發(fā)C++是一種相對(duì)較新且仍在不斷完善的語(yǔ)言。Java是基于C++發(fā)展來(lái)的一門(mén)較新的語(yǔ)言之一,具有很多獨(dú)特的優(yōu)點(diǎn)。應(yīng)該說(shuō),學(xué)好C程序設(shè)計(jì)這門(mén)課,可為今后更好地學(xué)習(xí)C++、Java等語(yǔ)言打下一個(gè)很好的基礎(chǔ)。我系的學(xué)生今后主要從事GIS方面的開(kāi)發(fā)工作,編程能力是一個(gè)十分重要的指標(biāo),學(xué)生認(rèn)識(shí)到學(xué)習(xí)C的重要性能夠提高學(xué)習(xí)的主動(dòng)性。
教學(xué)的基本任務(wù)是使學(xué)生掌握理論知識(shí),培養(yǎng)編程的基本技能。眾所周知,C語(yǔ)言以簡(jiǎn)潔、靈活高效而著稱(chēng),尤其是它的指針部分特別靈活,是學(xué)習(xí)C語(yǔ)言的重點(diǎn)和難點(diǎn)。在講課中必須牢牢抓住基本概念講深講透,才能使學(xué)生們對(duì)課程的理解一通百通,收到事半功倍的效果。比如在講i++與++i的區(qū)別時(shí),學(xué)生容易產(chǎn)生混淆。我就對(duì)他們講,區(qū)別很好記,誰(shuí)在前面先用誰(shuí),i++就是先用i,然后再讓i增加一個(gè);++i就是先讓i增加一個(gè),然后再用i,這么一講學(xué)生們很快就理解了。
在教學(xué)中應(yīng)經(jīng)常使用歸納小結(jié)。每當(dāng)學(xué)習(xí)完一章或一節(jié),要及時(shí)小結(jié),溫故而知新。C語(yǔ)言是我系學(xué)生學(xué)習(xí)的第一門(mén)程序設(shè)計(jì)語(yǔ)言,剛開(kāi)始接收會(huì)比較慢,經(jīng)常做小結(jié)歸納有利于更好的消化吸收。歸納可以是一條語(yǔ)句多方面(如功能、解決什么問(wèn)題、格式、使用場(chǎng)合、注意事項(xiàng)等)的歸納,也可以是對(duì)一類(lèi)語(yǔ)句的歸納。比如“{ }”出現(xiàn)的場(chǎng)合:函數(shù)體部分有“{ }”,復(fù)合語(yǔ)句有“{ }”,分程序(程序塊)有“{ }”,多分支選擇語(yǔ)句(switch)有“{ }”,結(jié)構(gòu)體和共用體類(lèi)型定義中有“{ }”,數(shù)組在定義的同時(shí)初始化中有“{ }”。這樣歸納以后,同學(xué)們就對(duì)“{ }”的使用有了較清晰的認(rèn)識(shí)。小結(jié)可以是某一章節(jié)的小結(jié),可以是某一部分內(nèi)容的小結(jié),形式多種多樣,重點(diǎn)、難點(diǎn)易混的地方應(yīng)著重強(qiáng)調(diào)。通過(guò)適時(shí)的小結(jié)與歸納,不但能對(duì)學(xué)習(xí)過(guò)的知識(shí)加以鞏固,而且便于迅速地提高知識(shí)水平。
實(shí)踐出真知,從實(shí)踐中學(xué)習(xí)C語(yǔ)言。C語(yǔ)言課程實(shí)踐性很強(qiáng),要學(xué)好這門(mén)課,光靠看書(shū)背語(yǔ)法是不行的,關(guān)鍵是活學(xué)活用,掌握實(shí)際編程的本領(lǐng),這也是學(xué)生學(xué)習(xí)的最終目的。因此,在一開(kāi)始上課的時(shí)候,就給學(xué)生講述一個(gè)大家很熟悉的故事,讓大家都明白,上機(jī)實(shí)踐是十分重要的,它是課堂教學(xué)的延伸和強(qiáng)化。
對(duì)同一道題,學(xué)生們編寫(xiě)的程序往往五花八門(mén)。概念上的模糊、邏輯上的混亂都會(huì)從程序的錯(cuò)誤中反映出來(lái)。從某種意義上說(shuō),指導(dǎo)上機(jī)比上課對(duì)教師的要求更高。指導(dǎo)上機(jī)時(shí)教師要應(yīng)付各種各樣的問(wèn)題,有些是事先無(wú)法準(zhǔn)備的。學(xué)生運(yùn)行不通的程序,也許只有一個(gè)小小的語(yǔ)法錯(cuò)誤,也許整個(gè)思路一團(tuán)糟,也許是某個(gè)字母大小寫(xiě)的問(wèn)題。教師要在學(xué)生急切的目光下,準(zhǔn)確地指出問(wèn)題的癥結(jié),幫助學(xué)生解決燃眉之急,沒(méi)有成竹在胸的把握是很難做到的。這與其說(shuō)依靠對(duì)理論的熟練掌握,倒不如說(shuō)得益于經(jīng)驗(yàn)的積累。通過(guò)課堂講授和上機(jī)實(shí)習(xí)的有機(jī)結(jié)合,學(xué)生們從對(duì)語(yǔ)言一無(wú)所知,到能熟練地編寫(xiě)有一定難度的程序,這種既動(dòng)腦又動(dòng)手的學(xué)習(xí)方法,極大地激發(fā)了學(xué)生們的學(xué)習(xí)興趣,而興趣又反過(guò)來(lái)成為他們最好的老師。一旦看到自己編寫(xiě)的程序運(yùn)行成功,那種喜悅和成功感便會(huì)油然而生。
學(xué)習(xí)的目的在于應(yīng)用,如果所學(xué)的內(nèi)容不能得到應(yīng)用,那么我們努力要學(xué)習(xí)的東西就沒(méi)有多大的意義。計(jì)算機(jī)是一種輔助工具,如果不能用它處理實(shí)際問(wèn)題,所學(xué)的知識(shí)也沒(méi)有意義。因此,在教學(xué)中應(yīng)舉現(xiàn)實(shí)生活中或工作中所碰到的問(wèn)題,這樣不但能提高學(xué)生學(xué)習(xí)的興趣,而且還能培養(yǎng)學(xué)生處理實(shí)際問(wèn)題的能力,鞏固所學(xué)的基礎(chǔ)知識(shí),有利于各學(xué)科之間的橫向聯(lián)系。如在數(shù)組應(yīng)用中編程根據(jù)考生的成績(jī)選擇考生的問(wèn)題,這個(gè)問(wèn)題學(xué)生比較熟悉,但如何錄取考生卻又不太熟悉。通過(guò)例題使學(xué)生掌握數(shù)組的使用方法,弄清楚計(jì)算機(jī)處理問(wèn)題的過(guò)程,從而利用二維數(shù)組處理矩陣之間的運(yùn)算、矩陣求轉(zhuǎn)置、解線性方程組等,在介紹迭代法應(yīng)用時(shí),舉出定積分幾何定義、計(jì)算函數(shù)的積分等,通過(guò)舉例,提高了學(xué)生的學(xué)習(xí)興趣,也充分揭示了計(jì)算機(jī)課程與其它學(xué)科的聯(lián)系。
教師如何使學(xué)生們輕松活潑地學(xué)到知識(shí),不僅是一個(gè)改革教學(xué)方法的問(wèn)題,更是一個(gè)轉(zhuǎn)變教育觀念的問(wèn)題,因?yàn)橹挥挟?dāng)學(xué)習(xí)充滿(mǎn)樂(lè)趣時(shí),才最為有效。在教學(xué)過(guò)程中我發(fā)現(xiàn),在講課中適當(dāng)?shù)夭捎酶?jìng)賽和游戲的方法,常常會(huì)使學(xué)生們興趣大增,收到意想不到的教學(xué)效果。例如,對(duì)于程序改錯(cuò),如果只是教師講,學(xué)生們反應(yīng)比較平淡,若采用交互的方式,情況就大不相同了。將有若干錯(cuò)誤的幾個(gè)程序投到屏幕上,讓各班級(jí)的學(xué)生主動(dòng)上來(lái)改錯(cuò)??吹角懊娴耐瑢W(xué)找不出錯(cuò)誤時(shí),下邊的同學(xué)個(gè)個(gè)摩拳擦掌,躍躍欲試,爭(zhēng)先恐后地舉手要求自己來(lái)改。在這種熱烈的氣氛中,當(dāng)所有的錯(cuò)誤被一一找出并改正后,整個(gè)過(guò)程在學(xué)生們腦海中就留下了深刻的印象。這樣的教學(xué),使學(xué)生不僅僅是在聽(tīng)課,同時(shí)也積極參與,使其能夠保持高度注意力。這樣一來(lái),課堂上講的知識(shí)很容易掌握,課后學(xué)生也有更多的時(shí)間去擴(kuò)充他們的知識(shí)面。
責(zé)任編輯 韓璽吾 E-mail:shekeban@163.com
book=5,ebook=57
G642
A
1673-1395(2010)05-0038-02
2010-07-10
湖北省教育廳青年基金(Z20062025)
李少華(1972—),男,湖北荊州人,副教授,博士,主要從事儲(chǔ)層建模與GIS研究。