張敏
(山東管理學院,山東 濟南 250100)
非計算機專業《C程序設計》教學改革初探
張敏
(山東管理學院,山東 濟南 250100)
《C程序設計》符號多,邏輯性和實踐性強。非計算機專業學生在零基礎上學習此課程,學習壓力大,學習積極性低,課堂教學效果差。為了切實提高該課程的教學質量,就要在課堂理論教學方法、上機實踐、課后鞏固、考試考核等方面進行改革,以期能增強學生運用C語言解決實際問題的編程能力。
C程序設計;教學改革;非計算機專業
計算機專業學生面對這種程序代碼很敏感,加上之前有過一定的語言基礎,學習起來自然會相對容易些。但非計算機專業(電子商務專業、通信專業等)的學生在面對這種復雜的語言符號和邏輯運算符時會感到不知所措。本文主要從課堂理論教學、上機實踐、考試考核等方面探討C語言教學中的體會。
現階段的教學課堂,老師大多借助多媒體技術,過多依賴多媒體課件,照本宣科,機械死板,靈活性不夠,缺乏和學生的互動,課堂死氣沉沉,很多學生在課堂上昏昏欲睡,嚴重影響課堂教學質量。
C語言是一門數學符號和運算符號較多的理工科課程,在講解過程中,沒有多姿多彩的案例分析,亦沒有形形色色的故事描繪,更多的是各種冗繁復雜的函數。多媒體課件更是枯燥乏味,授課教師大都采取傳統的教學方式,借助教學課件或PPT進行直接教學,缺乏和學生的課堂交流,教學信息量少,學生的學習積極性普遍欠缺。
針對現階段C語言的教學課堂現狀,為了增強學生的學習積極性,課堂教學方法要靈活多變。
(一)問題探究教學法
C語言教學切忌直接把長篇大論的計算機代碼程序直接呈現給學生,而應該是帶著實際問題一步一步地進行引導,使實踐和理論相結合,便于學生理解。例如在講解程序設計“1*2*3*4*5”時,先不給出程序的設計步驟,而是引導學生思考原始的計算方法,根據原始計算方法寫出算法流程,繼而給出算法流程圖,在此鋪墊之上講解程序的循環(while)結構,最終結合板書給出詳細的程序設計。這種帶著問題引導學生的探究教學法使學生對程序設計的理解更簡單明了,容易取得好的教學效果。
(二)案例分析比較教學法
C語言教學程序設計案例多,且一個案例可以用多種程序結構進行設計。課堂講解時,針對一個案例,可以運用多種程序結構有比較性地進行闡述,這樣可以使學生了解各種程序結構的使用方法和場合。以“輸出50個學生中成績高于80分者的學號和成績”為例,程序設計中兼有選擇結構(while)和循環結構(if)。
牛前胃疾病是牛養殖中的多發病,主要包括前胃弛緩、瘤胃積食、瘤胃鼓氣、瘤胃酸中毒等幾種。在日常養殖中如果飼養管理不當,很容易誘發各種疾病的發生,對牛養殖產業造成的危害很大。通常牛前胃疾病發生具有典型的季節性,牛前胃弛緩多發生在冬春季節,牛瘤胃積食和酸中毒主要發生在谷物成熟季節。日常養殖中,飼料缺乏維生素、礦物質、飼料粗糙、營養價值單一等,都會誘發牛前胃疾病發生。通常牛前胃疾病發病原因較為復雜,不但受到飼養管理和飼料種類的影響,也會受到機體所處生理狀態等諸多因素的影響,機體出現臨床癥狀通常是多種因素共同作用的結果。
當學習C++語言時,同學們容易造成語言混淆。老師可以把一個案例用兩種類似的語言進行講解,這樣更容易區分相似語言間的異同。
如C和C++中的輸出語句Printf(“hello! ”)cout〈〈“hello! ”
運用這種案例分析比較法,使學生能學以致用,增強學生解決實際問題的能力。
(三)創新教學法
C語言不同于其他課程,靈活性是C語言的一大特征。也正是C語言的靈活性導致學生在編程時容易犯錯誤。在進行課程的講解時,老師要引導學生舉一反三、觸類旁通,將實際和理論相結合。以“1+3+5+7+9”為例,當學會奇數相加的算法時,引導學生自己給出“2+4+6+8+10”的算法,同時若將“+”換為“*”,引導學生分析循環變量,寫出循環程序。
創新教學法能培養學生思考問題的能力,鍛煉學生的實際動手能力,提高學生的學習興趣,培養學生的數學思維,提升學生思維的靈敏性。
(四)層次教學法
學生的課堂接受能力不一致,老師要盡量全面照顧所有學生,可以采取分層次教學法。教學目標可以分基本、中層、高層目標。基本目標是在不降低難度、不增加要求的基礎上盡量使各個不同層次的學生基本都能達到這一目標。中層目標和高層目標是在基本目標之上提出的,針對一些學生出色完成基本目標任務,為了拓寬他們的視野,開發他們的潛能,有針對性地提出中高層目標。不管是哪種層次的目標,都要使學生感到學習不難,以增強學生學習積極性為目的,提高教學質量和教學效果。
教學手段的正確使用與教學質量、教學效果緊密相聯。教學手段除了傳統中的粉筆板書,還有現在大多教師使用的多媒體課件。課堂上教師一定要選擇性地使用板書且與多媒體結合。
C語言的教學課堂,教師不能過多地依賴多媒體課件,多媒體課件雖然信息量大,圖文并茂,視覺效果好,但畢竟多媒體課件只是課堂教學內容的一個總結縮影。教師在借助課件講解的同時結合板書,便于學生對講解的內容進行前后對照。
教學手段并不僅僅局限于多媒體課件和粉筆板書,教師可以結合自己所教授的具體課程,有選擇性地借助外界事物,或實訓課等,使學生能真正理解課堂理論部分。如C語言中,教師可以攜帶一個電路板,大體講解電路板的構造后,告訴學生編程完后怎么把程序鑲嵌到板子并使電路板運行等。感興趣的學生利用課余時間可以在實訓室實際操作,這不僅鍛煉了學生動手能力,而且使學生從本質上理解了程序的編寫過程。
教師講解C語言時,若只按照課本上的實例進行講解,枯燥乏味,沒有創新,學生的積極性減小。可以征集學生感興趣的實例,讓學生運用所學的知識參與編程,增強學生的互動性和課堂氛圍,提高C語言的課堂教學效果。如可以現場把學生分組進行游戲比賽,去除最高分和最低分,計算每組的平均得分,將此平均得分列為期末考核的參考依據。這樣既增強了學生學習的積極性,活躍課堂氣氛,更主要的是讓學生從本質上理解了一位數組的概念。
C語言的最好課時搭配便是教學理論和上機實踐操作相結合。這樣便于學生在理解理論之后借助上機實踐徹底將其消化。
上機實踐操作并不是按照傳統的教學模式照本宣科地將書本上的編程直接輸入,查看運行結果。將實踐分為基本實踐、驗證實踐、獨立實踐三部分。基本實踐主要是對課本的理論知識點進行鞏固。在基本實踐基礎之上,學生可自行展開驗證實踐,驗證實踐即把課堂上講解的實例編程輸入運行框中去驗證,從而理解編程的步驟,掌握程序的編程思路。獨立實踐是最高層次的實踐,即學生掌握了一定的編程思路和步驟后,能自己獨立進行編程并運行,查看程序中的錯誤并及時改正。在上機實踐時,要結合學生的實際學習能力,分層次分步驟地進行教學實踐。上機實踐增強了學生的實際操作能力,面對小程序學生能讀懂,且能獨立地進行簡單程序的編輯運行。
現階段對C語言的考試考核大都只考核理論部分,忽略了上機實踐部分。這樣的考核方式容易造成老師和學生對理論的重視,忽略上機實踐的教學。高校可以根據自己學校的實際情況將平時表現、理論考核、上機考核設定一個合適的比例,這樣不但避免了學生學習的片面性,還可以更好地考核學生的整個學習環節,以求提高學生學習的積極性和創造性。
綜上所述,根據現階段C語言的教學現狀,需要從教學方法、教學手段、作業布置、考試考核等方面進行探索和改革,通過提高學生的求知欲和學習興趣,活躍課堂氛圍,達到取得良好教學效果的目的。
[1]譚浩強.C程序設計(第三版)[M].北京:清華大學出版社,2013.
[2]徐大華.程序設計語言教學方法探討[J].高等理科教育,2007,(1).
[3]姜楓.淺析C語言程序設計教學改革與實踐[J].科技信息,2007,(33).
(責任編輯:徐一紅)
TP312.1-4
A
2095—7416(2014)01—0168—02
2013-11-02
張敏(1986-),女,山東濟南人,工科碩士,山東管理學院教務處教師。