李冰
【摘 要】C語言課程教學涉及范圍越來越廣,對于汽車類非計算機專業的C語言課程教學,也是非常重要的一項技術工具課程。下面本文就對非計算機專業下汽車類C語言課程教學現狀及改進方法展開探討。
【關鍵詞】汽車類;C語言;課程教學;教學改革
在應用型本科汽車專業的教學體系中,對編程能力的需求越來越明顯,尤其是隨著新型汽車產業的發展,電動汽車和無人駕駛已經是研究熱門,傳統汽車產業對從業人員的能力需求主要在機械方面,對具有編程能力的人員的需求主要表現在儀表等電子模塊,相對于新型汽車產業,對從業人員的能力要求越來越偏向于電子和編程等?!禖語言程序設計》課程又是一門理論性強、知識點多、理解困難的課程,由于相關專業基礎課程少之又少,學習起來困難重重,對于以上問題,作為汽車專業的任課教師,應該抓住問題,積極尋找教學方法,提升學生的學習熱情,提高教學成果。
一、C語言編程技術的特點
應用C語言進行軟件編輯的過程中,多采取模塊化思想,即先對程序模塊進行分解成為小模塊,待小模塊設計完整后,將這些模塊有機結合成為完善的大模塊;其次,C語言程序函數庫功能十分強大,在完整的函數庫的支撐下,相關函數不需要重新定義便可直接使用,為此極大簡化了編譯程序,出錯率也顯著降低;再次,C語言中指針作為一種賦值操作,可以靈活地實現存儲分配,根據變量地址的描述實施動態的指針選擇;最后,C語言能夠采用多種不同的表達方式,具備廣泛的移植性能,有較大自由度,使用范圍相對廣泛,基本不需要做任何修正,就可以直接進行運算[1]。
二、C語言教學中存在的問題
(一)教學目標沒有體現專業性
非計算機專業的C語言程序設計課程作為通識教育課程開設,課程編碼、開課學期相同,甚至不同專業采用的教學大綱也相同,都以培養學生程序設計思維,編寫簡短程序,解決簡單問題為目的,一定程度上提高了學生應用計算機解決問題的能力,但缺乏與學生所在專業的緊密銜接,沒有考慮專業特點,沒有根據專業特點設定不同教學目標。
(二)學生不能將C語言知識與專業結合的認知
C語言程序設計課程作為通識教育課程開設,使得學生對其重要性認識不夠,很多學生以通過國家等級考試為目的,被動地學習,嚴重影響了學習效果。況且大部分學生轉去參加較易通過的office模塊考試,更加不注重C語言程序設計課程的學習。在對學院電子信息科學與技術專業100名學生隨機調查發現,僅有不到20%的同學認為C語言對所學專業有幫助。
(三)基礎課程少,專業結合類教材亦少。
對于我系汽車專業學生而言,他們的專業基礎課程中與C語言學習相關的課程少之又少,導致他們沒有良好的學習基礎。而在教學過程中,任課教師使用的教材與計算機系的教材一般相同,導致教學過程中C語言的學習與專業脫節,學生學來不知道怎么用,用到哪,而教師在教的過程中布置如何尋找與專業相關的案例,市場上C語言與汽車專業相結合的教材少之又少,這也給教師備課造成了一定困難。
(四)教學進度編排有失專業性
通識教育課程的編排與專業課程的編排是分開進行的,這可能會導致部分專業的專業課程教學進度編排與通識教育課程編排出現矛盾,比如汽車類專業將專業課程數據結構和公共課程C語言程序設計開在同一學期,導致數據結構課程所需的C語言相關知識(結構體、指針等)缺失,影響專業課程教學;又比如電子科學與技術專業的單片機課程與C語言程序設計課程開課學期間隔太長,導致專業課教學時,學生C語言知識已經忘記大半。
三、汽車類專業C語言課程教學方法改革策略
(一)強化指針功能的最佳化利用
在應用C語言編譯的過程中,應該對其實現初始化設置,從而定義指針類型及操作內存。由于指針使用率極高,一旦指針變量初始化延誤勢必會造成死機以及其他嚴重的后果。為此C語言編程要強化指針功能的最佳化利用,做好判斷指針的變量類型,同時注意區別指標變量以及對指針數組的處理[2]。
(二)教學進度編排專業化
專業教學進度與公共課程開課學期要進行充分溝通,合理規劃,保證先基礎,后專業,可以考慮將C語言程序設計課程作為部分非計算機專業的專業基礎課開設(例如汽車維修專業、信息與計算科學專業等),這樣就可以從專業人才培養的整體角度去安排課程,從而保證不會以出現專業課程基礎知識缺失的方式進行專業課程教學,也不會出現課程開設學期間隔過長的情況,進而達到基礎教學服務專業目的。
(三)整合課程資源,內容采用模塊化任務教學法
針對C語言課程內容抽象復雜、知識點凌亂、難以理解等特點,教師在課程內容選取上采用劃分知識模塊的方式,將程序設計思想作為主線貫穿其中。在備課時,先設計若干個與模塊教學內容相一致、難度適中、功能相對完整且不完全獨立的程序設計任務。在劃分知識模塊時要考慮各個模塊之間的聯系,根據主線內容將各個模塊串聯起來,根據內容的難易程度設計相對應的訓練任務,避免任務難度太難或者太容易。這樣才能讓不同層次的學生達到相應的訓練的目的,不會因任務太難導致基礎差的學生失去學習的動力,也不讓優等生失去鍛煉的意義。
(四)課后學習-開放實驗
C語言是一門實踐性很強的課程,僅靠課堂上有限的時間是遠遠不夠的,另外對于相對較大的實踐項目,僅憑實驗上機時間是根本無法完成的。因此將上機實驗課程只進行算法講解和程序問題排除,將編寫代碼的時間主要安排在課后的開放性實驗課程中,在開放實驗時間內,學生編寫代碼并通過網絡資源解決一些常見的錯誤,將自己無法解決的問題進行整理歸納,在同學之間進行討論交流后,在上課時間由教師對學生存在的共性問題和疑難問題進行集中的講解,以提高實驗實踐的效率[3]。
(五)采用新的教學手段,提高學生課堂學習效率
第一,問題啟發,趣聞引導。在教學過程中,教師可以使用問題啟發式教學,在C語言中,雞兔同籠、冒泡排序、百錢白雞、隨機點名等案例,都結合了實際生活,能激發學生的興趣。在第一堂課上,教師可以根據課程安排提出若干問題,在課程講授過程中,教師帶領學生不斷去解決第一堂課提出的問題,教學過程有趣,既能吸引學生深入鉆研,提高學生學習興趣,又能在解決問題的過程中,讓學生充滿成就感。第二,使用雨課堂,提高課堂活躍度。目前市場上有越來越多的課堂教學輔助工具,像水墨云班課、超星平臺、雨課堂等,作者在教學過程中選用的是雨課堂。雨課堂可以將教師的PPT存在平臺上,供學生隨時翻閱,學生可以在PPT上標記自己沒有掌握的內容,教師通過平臺查看后,可以在平臺上講解或者在課堂上重新回顧講解;雨課堂也可以上傳一些課前預習資料、習題、課程輔導資料等,教師可以隨時查看學生進度,掌握學生的學習情況。
四、結語
基于汽車類專業應用的C語言程序設計課程教學改革,意在激發學生學習C語言程序設計課程的興趣,逐步提高學生編寫程序解決專業實際問題的能力。教學各個環節的專業化,可以促使學生學習認知的專業化,可以使得學生學習的目標更加明確,學習動力大幅度提高,確保學生為后續專業課的學習打好堅實的基礎,更好地服務專業教學,全面培養合格的應用技術型人才。
【參考文獻】
[1]楊立.電子科學與技術專業C語言課程教學改革[J].無線互聯科技,2016.7.
[2]郭芳.高校非計算機專業C語言課程教學的改革研究[J].湖南工程學院學報(社會科學版),2018.9.
[3]李冬梅.關于C語言程序設計課程的實驗教改探索[J].福建電腦,2018,34(7):129+187.