摘要:C語言由于具有其它程序設計語言無法比擬的優點,因此成為當今世界上應用廣泛、最具影響的程序設計語言之一。目前國內很多高校的工科專業都將C語言作為一門重要的基礎課程納入教學大綱中。該文針對C語言的功能和特點進行分析,提出從多個方面采用恰當的教學方法,幫助學生解決編程難的問題。
關鍵詞:C語言;教學方法;編程
中圖分類號:G424 文獻標識碼:A文章編號:1009-3044(2008)35-2383-01
An Analysis of the Engineering students' C Language Programming
LI Chun-ling
(Department of Computer Science and Technology,Shanxi University of Technology,Hanzhong 723000,China)
Abstract: Because C language has the merits that other programming language can not compare with,it becomes one of the most widely used and the most influential programming language in the world today.So in colleges of engineering,C language has become the important basic course in the teaching program.This paper analyses the functions and characteristics of C language and proposes adopting appropriate teaching methods in many ways to help students solve difficult problems in programming.
Key words: C language;teaching methods;programming
對于高等學校各工科專業的學生來說,由于C語言概念簡潔,數據類型和運算符豐富,表達能力強,用法靈活,程序結構性和可讀性好,易于體現結構化程序設計思想,同時它既具有高級語言程序設計的特點,又具有匯編語言的功能;既能有效的進行算法描述,又能對硬件直接進行操作;既適合編寫應用程序,又適合開發系統軟件。因此,C語言作為程序設計的入門語言課,被廣泛的應用于教學中。但也正是由于這些特點,增加了初學者掌握C語言的難度,使這門課程顯得太抽象,難以把握。如何使C語言教學能夠取得良好的教學效果,為工科專業的學生在后續課程的學習中打下良好的基礎,是高校計算機課程教學中一個突出問題。本文從C語言的特點出發,對工科專業C語言的教學方法進行探析。
1 培養學生良好的編程風格
所謂編程風格是指編程者在程序設計過程中通常共同遵守的一些約定規則。有的人編寫的程序代碼讓人一看就很舒服,而有的則讓人一看就頭疼,這主要是由編程風格造成的,高質量的程序離不開流暢、清晰的編程風格。因此,培養學生良好的編程風格是C語言教學中非常重要的任務。
編程風格沒有十分明確的規則可以遵循,但是絕大多數軟件公司和眾多的優秀程序員們還是總結了一些比較好的編程規則。在這里給出幾點建議:
1) 縮進格式。縮進的大小是為了清楚的定義一個塊的開始和結束。首先這比起代碼一律左對齊而言,更容易看清程序的邏輯結構。其次,就是它能在你將程序變得嵌套層數太多的時候給你警告,適當的對程序進行修改。
2) 標識符的命名。通常符號常量采用大寫字母表示,而變量則采用小寫字母表示。
3) 注釋。好的程序應該含有恰當的注釋,方便別人用最短的時間讀懂自己所寫的代碼,這對團隊合作開發也是很有幫助的,同時也為今后對代碼的修改提供方便。
編程風格還包括空格、空行、出錯信息的處理、goto語句的使用等,在此就不逐一說明。總之,良好的編程風格需要逐漸養成,所以除課堂教學時要灌輸編程風格的思想外,還要將其融入實踐環節,讓學生切實感受良好編程風格的重要性。
2 從多方面加強對學生編程能力的培養
C語言程序設計教學的目的是培養學生的程序設計能力,因此,在教學的過程中,應該注重學生的算法實現和程序設計能力的培養,而不應該只局限于C語言程序設計基礎知識的講授中。為了在講授知識的同時,最大化的提升學生的編程能力,可以利用以下方法實現:
1) 要加強學生閱讀程序能力的培養。讓學生閱讀典型例題的經典程序,通過“讀”程序,使學生更好的理解C語言的程序設計方法,并掌握常見的編程方法和技巧。
2) 在閱讀程序的基礎上,對一些經典算法要加以總結和歸納。例如累加問題,累乘問題,排序問題等。在學生充分理解和掌握的基礎上來動手模仿編寫功能類似的程序,通過模仿逐步培養能力。
3) 在教學過程中,要做到層層鋪墊,循序漸進。例如對于求解最大數這一問題,如果求解是兩個數中的最大數,三個數中的最大數,四個數或是更多數中的最大數,這一問題的算法在連續的幾個章節中都會逐步的給出答案,通過這樣循序漸進的講授,調動起學生的學習興趣,從而逐步提高學生解決問題的能力。
4) 建立合理的編程順序。通過學習我們知道,對于一個函數體而言,通常包含四個部分:變量類型的說明,提供數據部分,運算部分以及輸出部分。在編寫程序時,一般也都是按照這樣的順序進行實現的。在這介紹一種更方便的編程順序。第一步,找出解決問題的關鍵步驟,先實現運算部分的語句編寫。第二步,觀察運算語句中所涉及到的變量,對需要提供數據的變量進行賦值。第三步,根據變量的使用情況進行合理的類型說明。最后,完成結果的輸出。
3 加強上機實踐提高編程能力
在上機實踐的過程中,既要有基本的較為簡單的驗證性題目,又要包含具有一定難度的設計性題目,由易到難,從而調動起學生的學習興趣。最后當學生具有一定的自主編程能力之后,可以通過一個綜合性的設計實驗,將其所學的知識相互關聯起來,當然可以采用多人協作的方式,將復雜問題分模塊逐一實現,這樣還能有效的提高學生的協作能力。最后將各個模塊連接起來,通過上機測試,從而達到提高學生編程能力的目的。
4 結束語
C語言是高校工科專業的一門基礎課程,我們通過對教學方法和教學模式的不斷探索,激發起學生的學習興趣,使學生不但能夠熟練掌握程序設計中的基本知識,編程技術和常用算法,更重要的是要培養學生利用C語言解決實際問題的的能力。
參考文獻:
[1] 譚浩強.C程序設計[M].2版.北京:清華大學出版社,1999.
[2] 楊路明.C語言程序設計[M].北京:北京郵電大學出版社,2005.
[3] 黃維通,馬力妮.C語言程序設計[M].北京:清華大學出版社,2003.