夏百花,鄭 嵐,徐麗萍
(安徽三聯(lián)學(xué)院,安徽 合肥 230601)
《C語(yǔ)言程序設(shè)計(jì)》教學(xué)方法探討
夏百花,鄭 嵐,徐麗萍
(安徽三聯(lián)學(xué)院,安徽 合肥 230601)
針對(duì)學(xué)生在C語(yǔ)言教學(xué)過(guò)程中存在的重理論、輕實(shí)踐的現(xiàn)象,可以確定讓學(xué)生更好地理解和掌握學(xué)習(xí)方法是教學(xué)中的重中之重.本文主要從改進(jìn)教學(xué)方法、精心設(shè)計(jì)實(shí)驗(yàn)內(nèi)容和加大習(xí)題量三個(gè)方面進(jìn)行分析和總結(jié),以促進(jìn)后續(xù)教學(xué).
C語(yǔ)言;教學(xué)方法;實(shí)踐
《C語(yǔ)言程序設(shè)計(jì)》作為本科理工類(lèi)院校開(kāi)設(shè)的一門(mén)高級(jí)程序設(shè)計(jì)語(yǔ)言,有其自身的特點(diǎn):應(yīng)用廣泛、使用靈活、表達(dá)能力強(qiáng)、可移植性好、目標(biāo)代碼執(zhí)行效率高等.它既具有高級(jí)語(yǔ)言的優(yōu)點(diǎn),同時(shí)又兼有低級(jí)語(yǔ)言的特點(diǎn),因此《C語(yǔ)言程序設(shè)計(jì)》課程在本科教學(xué)中占有舉足輕重的地位.
《C語(yǔ)言程序設(shè)計(jì)》是計(jì)算機(jī)、電子等相關(guān)專(zhuān)業(yè)的一門(mén)專(zhuān)業(yè)基礎(chǔ)核心課程.該課程集應(yīng)用性和實(shí)踐性于一身,其開(kāi)設(shè)目的在于使學(xué)生能夠掌握程序設(shè)計(jì)的基本方法和基本思路.該課程涉及的主要內(nèi)容包括C語(yǔ)言的基本概念、基本語(yǔ)法以及程序設(shè)計(jì)的三種基本方法即順序、選擇和循環(huán)等.本文主要結(jié)合自己的教學(xué)經(jīng)驗(yàn),闡述了在教學(xué)過(guò)程中應(yīng)該注意的幾個(gè)方面.
C語(yǔ)言一般在低年級(jí)開(kāi)設(shè),而學(xué)生對(duì)程序的概念不太理解,加上有些學(xué)生上課精力不夠集中,跟不上教師思路,久而久之學(xué)生就會(huì)失去學(xué)習(xí)的興趣.因此在教學(xué)過(guò)程中,要加強(qiáng)師生交流,充分發(fā)揮教師的主觀能動(dòng)性,調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,使學(xué)生能夠獨(dú)立思考,培養(yǎng)學(xué)生分析問(wèn)題和解決問(wèn)題的能力.
1.1 反復(fù)強(qiáng)調(diào)概念
由于C語(yǔ)言牽扯概念較多,規(guī)則也較多,因此在教學(xué)過(guò)程中,要對(duì)概念反復(fù)強(qiáng)調(diào).比如在講到自增(++)和自減(--)運(yùn)算符時(shí),前置運(yùn)算(x++)和后置運(yùn)算(++x)所得到的結(jié)果完全不同,學(xué)生很容易混淆.
1.2 化抽象為具體
在C語(yǔ)言中,有較多抽象化的問(wèn)題,比如數(shù)組、指針等.對(duì)于這類(lèi)問(wèn)題,學(xué)生理解起來(lái)較為困難,因此,在實(shí)際教學(xué)過(guò)程中,可以將這類(lèi)較為抽象化的問(wèn)題具體化.
舉一個(gè)具體的例子來(lái)說(shuō).
上面程序完成的功能是將一個(gè)整型數(shù)組中的10個(gè)元素逆序輸出.在教學(xué)過(guò)程中,我們可以將程序說(shuō)明語(yǔ)句部分定義中含有10個(gè)元素的整型數(shù)組int a[10]理解為整體,而程序執(zhí)行語(yǔ)句部分中所使用的任意一個(gè)元素a[i]理解成這個(gè)整體中的某個(gè)成員.也就是說(shuō),在程序中,要想使用成員必須首先指定這個(gè)成員屬于哪個(gè)整體.這類(lèi)似于要想找到某個(gè)學(xué)生,必須要先知道要找的這個(gè)學(xué)生屬于哪個(gè)班級(jí)一樣.
1.3 精講三大算法
在程序設(shè)計(jì)的三大基本方法中,循環(huán)無(wú)疑是學(xué)生最難理解和掌握的設(shè)計(jì)方法.歸根結(jié)底其原因在于學(xué)生不會(huì)將遇到的問(wèn)題向循環(huán)語(yǔ)句執(zhí)行過(guò)程靠攏,因此遇到問(wèn)題就會(huì)束手無(wú)策.例如,在C語(yǔ)言中能夠影響循環(huán)執(zhí)行過(guò)程的break和continue語(yǔ)句.
請(qǐng)讀者認(rèn)真分析下面這個(gè)程序:
若將程序的第8行中的break替代為continue,結(jié)果又會(huì)怎樣?
通過(guò)上面這個(gè)程序,可以看出:雖然兩者在程序中所起到的作用完全不同,但它們的共同特點(diǎn)是僅僅影響內(nèi)層循環(huán),而與外層循環(huán)無(wú)關(guān).
1.4 采取多樣化教學(xué)手段
教師上課時(shí)如果僅僅采用傳統(tǒng)的黑板教學(xué),很難讓學(xué)生對(duì)于程序運(yùn)行的過(guò)程、結(jié)果、函數(shù)的調(diào)用、變量值的變化等方面認(rèn)識(shí)清楚.而采用多媒體的教學(xué)方式,教師就能夠在課堂利用Turbo C或者Visual C++等編程軟件進(jìn)行一步步操作演示,這樣學(xué)生一看就清楚明了了.
由于C語(yǔ)言這門(mén)課程的實(shí)踐性和操作性較強(qiáng),因此學(xué)生在學(xué)習(xí)過(guò)程中就需要不斷練習(xí)才能更好地掌握.同時(shí),只有自己動(dòng)手編寫(xiě)程序并且經(jīng)調(diào)試運(yùn)行出結(jié)果時(shí),學(xué)生才會(huì)有成就感.但是,由于教材上面的題目較為簡(jiǎn)單,大部分學(xué)生在利用C語(yǔ)言來(lái)解決實(shí)際問(wèn)題時(shí),仍然會(huì)感覺(jué)到束手無(wú)策.因此,為了培養(yǎng)學(xué)生解決實(shí)際問(wèn)題的能力,教師在安排實(shí)驗(yàn)內(nèi)容時(shí),可以將某個(gè)大題目作為長(zhǎng)期任務(wù),再按照不同的功能模塊將其分解形成一個(gè)個(gè)短期任務(wù).以“信息管理系統(tǒng)”為例,可以把整個(gè)系統(tǒng)作為一個(gè)長(zhǎng)期任務(wù),然后將這個(gè)系統(tǒng)分成若干個(gè)小模塊作為短期任務(wù),比如輸入輸出信息、添加信息、修改信息等模塊.每次實(shí)驗(yàn)課時(shí),可以要求學(xué)生完成一個(gè)或幾個(gè)小模塊.
為了更好地了解學(xué)生的具體的學(xué)習(xí)情況,教師根據(jù)教學(xué)計(jì)劃和要求,在課后可適當(dāng)布置一些作業(yè),在每章結(jié)束時(shí)進(jìn)行集中講解.同時(shí)鼓勵(lì)學(xué)生對(duì)于同一問(wèn)題提出不同解法,以培養(yǎng)學(xué)生的創(chuàng)新能力.
任何一門(mén)課程的教學(xué),都包含了兩個(gè)方面——教與學(xué).我們只有很好的組織好這兩個(gè)方面才能從根本上提升教學(xué)效果,讓學(xué)生學(xué)到更多更好更有用的知識(shí),避免理論和實(shí)踐脫鉤.本文主要結(jié)合本人的教學(xué)實(shí)踐,從教師和學(xué)生的角度探討了一些切實(shí)可行的C語(yǔ)言教學(xué)方法,供讀者參考.
〔1〕周強(qiáng).C語(yǔ)言教學(xué)方法探討[J].滁州學(xué)院學(xué)報(bào),2004,6(4).
〔2〕徐大華.程序設(shè)計(jì)語(yǔ)言教學(xué)方法探討[J].高等理科教育,2007,71(1);36-38.
〔3〕曾正軍.在教學(xué)中對(duì)學(xué)生C語(yǔ)言編程能力的培養(yǎng)[J].南昌高專(zhuān)學(xué)報(bào),2004(1).
TP312;G642
A
1673-260X(2014)02-0258-02
本文基于安徽三聯(lián)學(xué)院校級(jí)項(xiàng)目(2013Z017)
赤峰學(xué)院學(xué)報(bào)·自然科學(xué)版2014年4期