唐 艷 趙幫華 劉 熙 湯 東 唐莉蘋
(1.重慶化工職業學院,重慶 401220;2.成都師范學院附屬實驗學校,四川 成都 611130)
C語言程序設計課程作為高校計算機、電子、自動化等眾多專業的專業基礎課程,是學生學習后續課程的重要基礎與鋪墊,能培養學生分析、解決問題的能力[1]。工業網絡技術專業著重培養學生掌握自動化與工業網絡技術專業知識與技能,核心課程有單片機技術、數據采集與信號處理等課程。通過C語言課程理論和實踐課程教學,讓學生掌握結構化程序設計基本原理與規則,增強學生邏輯思維能力。
隨著高職院校辦學規模不斷擴大,以及生源類型的多元化,不同學生的學習情況亦不同。對初學的學生而言,往往會認為C語言語法較多、內容枯燥,無法達到預期教學目標。目前,針對工業網絡技術專業教學C語言,所面臨的主要問題如下:
(一)學生生源類型多元化[2]。一部分學生在高中階段未學習編程語言,缺乏基礎,需要從基礎慢慢累積。一部分同學在高中階段系統學習C語言,已有一定基礎,但對已經學過的知識缺乏積極性與興趣。學生掌握程度參差不齊,課堂上教學反饋與效果不佳。
(二)學生學情特點多樣化。基礎好、主動學習型的同學,課堂上能積極回答問題,并且主動完成相關編程實驗。而基礎差的學生,時常因為某一個或多個難點而產生放棄學習念頭,需要教師多次或單獨講解。此外,被動學習型學生,碰到不理解的地方很難主動克服。在采用混合式教學及翻轉課堂教學模式時,這部分同學學習效果將受影響[3]。
(三)課程銜接度不夠。大部分學生在學習基礎知識點,對已掌握的內容可能并不清楚這在今后的專業課程學習中有何作用。例如,在學習不同類型變量所占內存空間時,無法理解這在單片機設計中,受存儲空間限制,定義何種類型的變量將直接影響程序實現效率。
針對上訴問題,為提高學生學習興趣與積極性,增強C語言課程與后續課程的銜接性,采用以下方法針對課程特定內容進行講授。
(一)調整課程內容,提高課程內容與后續課程的銜接。根據工業網絡技術專業特性,調整C語言講授內容與重點,保證課程結構的均衡性,體現課程內容的綜合性與選擇性,讓本門課程與后續課程能達到恰當、合理銜接。在介紹部分課程內容時,如在選擇結構程序設計環節,重點介紹if和開關語句,通過案例介紹實現菜單選擇操作功能,這在單片機設計或高級程序語言設計中均會使用到。具體程序片段如下圖:

程序片段(switch語句語法)銜接內容switch(ch){case ‘a’:case ‘A’:action1();break; case ‘b’: case ‘B’:action2();break;…}單片機、高級語言程序設計菜單控制操作。
(二)使用項目教學法、任務驅動教學法提高學生學習興趣。在學習指定課程內容時,圍繞教學目標,通過項目導向,任務驅動教學方式讓學生掌握各知識點與技能。在教學內容上,以項目為線索,明確教學目標。在實施手段上,以任務驅動為中心,實現做學一體。項目選擇采用適度原則,選擇經典問題開展課程教學,提高學生學習興趣,如斐波那契數列,漢諾塔問題。注重提煉每一任務步驟的重難點,明確預期效果,積極控制任務實施進度。
(三)結合合作學習,培養學生自學能力與習慣。根據學生所掌握C語言程序設計基礎,將班級學生細分成若干個人數較少的小組,每組4-6人,每個小組設定一個組長。選擇基礎好的學生擔任小組長,讓小組長在小組范圍內幫助指導小組成員。充分利用合作學習優勢,使學生之間互相幫助,形成積極的合作局面,培養學生交流、發現問題、解決問題的綜合能力。
根據工業網絡技術專業學生特點,采取項目教學法、任務驅動教學方法,激發學生學習興趣。讓學生通過學習既學到理論知識,又鍛煉綜合動手能力。同時,也著重培養學生的合作意識、創新意識,以及自主學習的能力。在今后的教學中讓學生積極參與學科競賽,提升計算機編程能力,培養團隊合作意識,激發學生學習積極性,構建積極進取的學習氛圍。通過競賽成果及內容豐富教學內容,提升全體同學學習效果。