李 麗 新
(吉林建筑大學計算機科學與工程學院,長春 130118)
高校非計算機專業(yè)C語言教學改革的探討
李 麗 新
(吉林建筑大學計算機科學與工程學院,長春 130118)
筆者根據(jù)從事多年非計算機專業(yè)C語言教學的經(jīng)驗,針對在教學中發(fā)現(xiàn)的一些問題,例如學生缺乏學習興趣、不夠重視實踐教學及教學方式方法不當?shù)确矫?提出一些改進的建議,以便能更好地提高C語言程序設計課程的教學質(zhì)量和效果.
C語言;非計算機業(yè)專業(yè);實踐環(huán)節(jié)
C語言程序設計課程是大部分非計算機專業(yè)本科生都開設的一門計算機基礎系列課程,屬于公共基礎課.這門課程主要讓學生較全面地理解和掌握高級語言程序設計的基本概念和方法,具備運用C語言進行基本的結構化程序設計的能力.對于初學者來說,C語言不易被掌握,因其功能強大且復雜,結構靈活多變.通過本課程的學習,培養(yǎng)學生利用計算機處理問題的邏輯思維方式,啟發(fā)學生將計算機引入到其他專業(yè)課中,為今后在更廣泛的專業(yè)領域中應用計算機奠定基礎.其次,通過學習這門課程后考取國家計算機二級證書,為將來找工作創(chuàng)造有利條件.
1.1 學生的學習積極性不高
導致學生學習C語言積極性不高的原因有兩個方面:① 學習目的不明確.對于非計算機專業(yè)的學生來說,他們對C語言很陌生,認為這門課程與所學的專業(yè)毫無聯(lián)系,學好專業(yè)課才是最重要的,而C語言學了將來工作中也沒有什么用;有的學生甚至會認為這門課程沒有開設的必要,從而失去了學習的動力和興趣.而對于在中學接觸過編程語言的部分學生也會認為C語言是過時的語言,應該學一些當前主流的面向?qū)ο蟮恼Z言,例如C++,JAVA等;② 教學方法不恰當.C語言是一門知識點比較零散的語言,按照我們通常的教學方法一般先講解一些概念及術語,比如數(shù)據(jù)類型、運算符等等,這些內(nèi)容對于沒有計算機編程基礎知識的初學者來說比較難懂,然后又介紹算法、程序的基本結構、流程圖等一系列比較抽象的概念,最后介紹了函數(shù)、數(shù)組、編譯預處理、指針及位運算等.這是一種很正常的講解順序,從基礎知識到綜合應用,從易到難,整體來看這樣安排是比較合理的,但對于非計算機專業(yè)的學生來講,由于計算機專業(yè)知識比較薄弱,他們一接觸到這些抽象的概念、語法,就會感到難以理解,枯燥乏味,很容易就產(chǎn)生畏難情緒,幾堂課下來就覺得已經(jīng)聽不懂課了,學生學習這門課的積極性也就被影響,直到最后出現(xiàn)對這門課程厭學的情緒[1].
1.2 學生對實踐環(huán)節(jié)重視不夠
C語言程序設計是一門理論加實踐的課程,從學時的分配上我們可以看出,實踐課占總學時的二分之一,顯然實踐環(huán)節(jié)在課程中占的比重很大,但目前實踐課存在很多問題,上課效果不是很理想.例如學生上機前不做任何準備,不知道上機實驗目的和內(nèi)容,導致上機后不知道要干什么,經(jīng)常出現(xiàn)相互抄襲程序的現(xiàn)象,不理解所編寫的程序,不會獨立調(diào)試,遇到問題立即求助老師和同學,不能獨立思考,最終導致有的學生一學期結束后還不會完整地編輯、編譯、執(zhí)行一個程序.
1.3 課程考核體系不足
衡量一個學生的學習效果和質(zhì)量還是通過課程結業(yè)考試來體現(xiàn).因此,考試是教學過程的最后一個重要環(huán)節(jié).在一般高等院校里,C語言的考試總成績評定比例:理論考試占70%,平時成績占30%,缺少一個統(tǒng)一的上機編程考試,通常都是任課老師自行安排一些隨堂小考,然后將成績涵蓋在平時的30%里面.但像C語言這樣的課,理論考試的分數(shù)高低并不能很好地反應學生實際學習水平,有的學生平時用功不夠,單純地一味牢記復習題,根本就不具備動手編程能力,甚至連怎么進入VC++的界面都不了解卻能及格;對于動手能力要求比較高的課程,應考慮采用有針對性的靈活的考核方式.
2.1 培養(yǎng)學生學習興趣
培養(yǎng)學生的學習C語言興趣要從兩方面著手,一是明確學習目的,我們給學生上第一堂課的時候,不要急于講解C語言的具體內(nèi)容.首先要向?qū)W生介紹C語言是做什么的,學習它的目的是什么,并向?qū)W生講解計算機語言的發(fā)展歷史,闡明當今前沿的語言很多是衍生自C語言,如C++,Java,C#等,要想學習這些面向?qū)ο蟮恼Z言,那么,就先要掌握好C語言;其次,讓他們了解C語言也是國家計算機等級考試的一個重要內(nèi)容,學好這門課,努力考取合格證.對于非計算機專業(yè)的學生來說,多一個證件就能為找到一份更好的工作增加一份籌碼,通過對這些內(nèi)容的介紹,學生能夠更加了解C語言,這樣學生才能對這門課程的產(chǎn)生興趣,激發(fā)學習的積極性;二是改進教學方式方法,我們可以在講正課之前通過給學生演示幾個有趣的C程序激發(fā)學生學習的興趣,比如“漢諾塔”,“撲克牌游戲”等,在這些程序中有圖形、動畫及智能效果,這些內(nèi)容能夠大大吸引學生的注意力以激發(fā)其學習欲望.同時,在講授時不要以語法知識為主線,應積極推行以程序設計為主線,重點介紹程序設計的方法和思路,更多地列舉生動、實用的程序設計實例,把枯燥的語法知識分解到程序中去介紹,這樣學生掌握起來就更加容易,也能夠在程序設計中逐步熟悉并掌握各種語法規(guī)定和語句應用.
2.2 加強實踐環(huán)節(jié)
C語言是一門實踐性較強的課程.在學習C語言過程中,僅理解理論課所講解的知識是不夠的,學生只有通過大量上機編程練習才能真正地理解消化.針對非計算機專業(yè)學生上機目的盲目、遇到疑難束手無策的問題提出一些解決途徑:教師準備一本與教材匹配的上機指導書,在每次上機課之前給學生布置上機內(nèi)容,明確上機要求、目的、編程步驟;要求學生在上機之課前把程序的思路構思好,并畫出相應的程序流程圖,最好能在草紙上事先編寫出來,這樣上機時候能夠節(jié)省大量時間,大大提高上機課效率.對于調(diào)試程序的方法和技巧,教師首先要有針對性的講解,并且培養(yǎng)學生自己查看錯誤提示的能力,培養(yǎng)學生獨立編程的能力,教師為了能夠保護好學生上機興趣,對學生遇到的常見問題及時進行講解和總結,讓學生體會編程的成就感.上機練習編程的重要性在于加強學生對C語言的基本概念、語法的理解、鞏固和提升,將學習到的理論知識學以致用,這才是我們學習的真正目的.
2.3 采用靈活的考核體系
對于像C語言這樣的對實踐能力要求比較高的課程,我們應該采取更為靈活恰當?shù)目己朔绞?理論考試固然很重要,但上機考核的重要性也不容忽視.學校應該有統(tǒng)一的上機編程考試安排,統(tǒng)一出題、閉卷考試.根據(jù)在國家計算機等級考試中理論分數(shù)占60%,上機考核占40%的情況,我們也可以將期末考試的成績比例改為理論考試占50%,上機考試占40%,平時占10%,總成績中加強了實踐環(huán)節(jié)所占的比例,從而可以引起學生和老師對實踐環(huán)節(jié)的重視度[2].上機考試檢查學生的編程能力,試卷則考察學生語法基礎知識,兩者互為補充,相輔相成.如不注重上機編程,即使試卷考滿分也不能及格.通過這種考核方式的變化從而改變學生學習C語言的方式和態(tài)度.
C語言是一門比較復雜的高級語言,包含復雜的知識點.因此,對于非計算機專業(yè)的學生來說,學習C語言有一定難度.要想讓這些非計算機專業(yè)的學生能夠更好地掌握這門課程,我們就必須不斷總結教學中出現(xiàn)的問題,嘗試各種新的教學方法,使學生學習起來感到輕松易懂,并且能夠加強學生分析問題和解決問題的邏輯思維能力,以達到真正的教學目的.
[1] 譚浩強.C程序設計[M].北京:清華大學出版社,2006:103.
[2] 熊方敏,許爍娜.C語言課程教學探討[J].計算機教育,2010(13):105-106.
Discussion on C Language Education for Non-computer Science Major in Higher Education
LI Li-xin
(School of Computer Science and Engineering,Jilin Jianzhu University,Changchun,China 130118)
According to the author years of experience in C language teaching for non-computer science major students, for some of the problems found in teaching, such as lack of interest in learning, not enough emphasis on practical teaching, inappropriate teaching methods, etc., to make some suggestions for improvement, in order to improve teaching quality and effectiveness of C language programming courses.
C language programming;none-computer science major;practice
2014-07-15.
李麗新(1973~),女,吉林省長春市人,副教授,碩士.
TP 309.7
A
2095-8919(2015)01-0111-03