高專通信專業C語言教學
時間:2022-08-16 09:09:39
導語:高專通信專業C語言教學一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。
C語言是一門實踐性和應用性較強的課程,在計算機軟件設計和通信電子類產品開發中應用廣泛。但C語言課程教與學“難”的現象普遍存在,學生往往在學習C語言時會產生畏難情緒,加上傳統的C語言教學方法較注重分立知識點的學習,缺乏對完整程序的分析和編制能力,往往會導致學生在上課時對教師所講的語法規則等都能聽懂,但上機實驗自己編程時腦子卻是一片空白,面對一個程序題目,不知道從何下手。而且通信專業學生由于缺乏計算機學科的專業認知,后續也沒有程序設計類的課程深入學習,所以普遍認為C語言的學習對就業幫助不大,進而影響其學習積極性。針對目前存在的這些問題,需要對C語言課程教學目標和教學方法上進行相應的調整。
1正確設立C語言教學目標
要讓通信專業的學生正確認識學習C語言的重要性,上好第一節課很重要,精心設計第一節課的內容,讓學生了解C語言在整個專業課程設置中所起到的作用及學習C語言對后續課程的學習、工作有哪些幫助,引導學生共同思考下面的問題:1)C語言學什么?2)學習C語言有什么用?3)怎樣學好C語言?對通信專業的學生來說,在課程定位時,只要求掌握C語言基本語法和常用算法,具備基本的編程素養和解決本專業的應用問題,以“必要、夠用”為度,致力于培養學生運用C語言解決實際問題的編程能力,避免在學習程序設計過程中陷入學習程序設計語言繁雜的語法和格式上,而是將主要精力集中在所要解決的實際問題上,從具體問題出發,重點闡述如何利用程序設計解決這些問題。所以課程教學目標定位為:以應用為背景、以程序設計方法為主線、以語法和結構為基礎、以培養能力和提高學習興趣為目的、變應試為應用,讓學生從多角度、多方位了解和掌握C語言以及程序設計的精髓。盡管通信專業不同于計算機專業,很少有同學進入到軟件開發行業,但隨著計算機技術的快速發展,計算機學科不是一門獨立的學科,已逐步滲透到其它各學科中,形成交叉學科,通信技術與計算機技術結合尤其緊密,學習C語言對本專業其他課程的學習也有很大幫助。首先,學習C語言需要能靜下心來由耐心地設計、編寫、調試程序,這對學習通信專業其他課程來說很重要,讓剛進入大學的學生逐步適應大學的學習方式,有利于后續課程的學習;其次,C語言是面向結構的程序設計語言,強調設計的流程和結構,在講解C語言的過程中,要側重于學生對流程和結構的學習,讓學生養成良好的邏輯思維習慣,培養學生算法流程構建的能力和分析問題解決問題的能力。在C語言教學過程中,可以通過IT業里程序員或軟件工程師入門或逐步攀登軟件開發高峰的一些例子,介紹一些好的C學習的方法和經驗,讓學生在明確了課程的性質、目標等情況后對學習C語言有一個初步認識,再演示一些比較有趣的實例程序,如游戲程序、音樂程序、畫圖程序等,充分調動學生的學習C的興趣和積極性。接下來就是在具體知識點講解過程中利用各種方法讓學生一步一步地踏入到C語言的世界中。
2綜合運用多種教學方法,提高教學質量和教學效果
2.1運用通俗形象的例子由于高職院校的C語言課程一般都開設在第一學期,而學生在高中階段很少接觸到計算機系統的知識,尤其是計算機硬件,這大大增加了學習C語言的難度。C語言的指針部分涉及到大量的內存操作,比如指針所指向的內存區或地址、指針本身占據的內存區、指針的算術運算和邏輯運算、指針與數組的關系等,要是沒有先期課程的鋪墊,這些內容無疑是很難理解的。在講授過程中,不妨拿實際生活中經常接觸到的東西來舉例,這樣能較快地讓學生接受原本很抽象的概念,比如在講內存區和內存地址的時候,把一棟教學樓比作整個內存,教室比作一塊塊地內存,教室號比作內存的地址,教室里的人比作內存里存放的內容。這樣在講到用函數實現兩個數的交換這一案例的時候,因為實參不能隨著形參的變化而變化,所以要想用函數實現兩個數的交換,就必須用變量的地址做實參,傳遞給形參一個地址,程序如下:voidswap(int*x,int*y){intz;z=*x;*x=*y;*y=z;printf("*x=%d,*y=%d",*x,*y);}main(){inta=10,b=20;swap(&a,&b);printf("a=%d,b=%d\n",a,b);}剛開始學生無法理解,采用上面的比喻后,就假設兩個變量所在的內存為兩個教室,變量的值就好比是教室里的人,這樣實參就是教室號,在函數里對兩個教室里的人進行交換,所以在調用函數后變量的值就已經完成了交換處理。學生通過這樣的通俗比喻能對內存、地址等內容掌握得比較深刻。
2.2運用案例一題多解由于C語言的靈活性,盡量讓學生用不同的方法來解決同一個問題,克服思維定勢,探求解題新思路,促進學生深刻理解并牢固掌握和靈活運用所學知識,同時挖掘學生的內在潛力,培養學生思維的靈活性、變通性,使學生從不同角度、不同方面用多種方法思考問題,從而使學生的發散思維得到進一步的培養。比如在講到字符數組時,一個案例要求對數組賦值A~Z并輸出結果,課堂上通過四種方法實現了同樣的效果,分為整體賦值、輸出和逐個元素賦值、輸出兩類,每一類中得賦值又可以分為采用scanf()函數從鍵盤輸入和使用賦值表達式賦值兩種方法,這樣不僅僅練習了數組部分的知識點,又對標準輸入函數進行了復習,讓學生加深了兩種賦值方法的理解。
2.3改變教學地點,強化實驗環節、淡化課堂教學C語言是一門實驗性很強的語言,一味的課堂教學,即使教學方法再巧妙,如果沒有具體的實踐,學生仍然無法體會和掌握其中的奧妙。所以將C語言所有學時的教學全部安排在機房,保證每節課不低于一半的上機操作時間。在涉及到新語法知識時,并非直接講授語法規則,而是先用案例引入新的知識點,引導學生涉及程序的結構流程,新語法部分用注釋代替,讓學生帶著問題進入到新知識的學習過程中,等了解了語法規則,再將之前的功能注釋部分用C語言代碼實現出來,轉換成程序語言后再上機驗證,加深對理論知識的理解,時時刻刻鍛煉學生的動手能力。老師在講解環節,也可以一邊演示編程、編譯和運行過程一邊解釋語法知識。C語言的功能非常強大,教材上所舉得例子很有限,平時多引導學生把自己比較熟悉的物理、數學等方面的題目用C語言編程來實現,其他學科里難以計算的問題交給計算機來解決,既練習了C語言的語法知識又提高了學生學習C語言的興趣,變被動學習為主動實踐,同時最大限度地利用機房上課的機會練習C語言編程的方法,讓學生逐步養成良好的程序性思維。
2.4重視程序調試過程通信專業不要求C語言編程能力達到專業程序員的水平,只要求掌握C語言基本語法和常用算法,具備基本的編程素養和解決本專業的應用問題,因此在教學過程中要注重培養學生分析問題、解決問題的能力。而在學習C語言階段離不開程序調試,很多人只看重程序編寫和運行結果,恰恰忽略了最重要的調試過程。調試過程比較枯燥,往往一個不起眼的小錯誤使運行結果南轅北轍,這就要求編程人員具備耐心,能夠靜下心來仔細檢查每一句代碼,通過重復性的練習鍛煉學生的耐心。另外,一旦程序運行結果不對,如何通過編譯器提供的少量提示信息找到具體的問題所在?學生在上機練習過程中,出現的語法錯誤千奇百怪,C語言學習初始階段,學生一遇到錯誤就手足無措,這時候不能直接告訴學生怎么改正,而是逐步教會學生學會看錯誤提示信息,找到錯誤的代碼段后跟語法概念相比較,盡量引導學生自己進行修改,這樣多做練習之后,有助于學生養成遇到問題自己嘗試分析解決的習慣。實踐證明,學生對調試程序很感興趣,程序出現問題后也都樂于一步一步地進行調試。
3結束語
以上只是筆者的一點經驗體會,在教學實際過程中應注意的問題還有很多。高等職業教育是針對一線生產崗位培養應用性技能型人才,在進行課程教學時應緊密結合崗位,準確定位課程教學目標,進行教學改革,注重學生實踐能力的培養。
- 上一篇:依法治區和法制工作匯報
- 下一篇:職校通信專業DSP課程教學方式