c語言程序設計實例范例6篇

前言:中文期刊網精心挑選了c語言程序設計實例范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。

c語言程序設計實例范文1

關鍵詞:C#語言;課堂教學;示例教學;教學模式;案例討論

中圖分類號:G642.0文獻標識碼:A文章編號:1009-3044(2012)06-1351-03

Case Discussion Method in《C# Language Program Design》Curriculum Practice

LI Hai-bo,MA Ming

(Nanyang Institute of Technolgy, Nanyang 473004, China)

Abstract:According to C # language and the problems in the traditional teaching model, presents a case discussion teaching method. Class? room teaching will be dispersed sample combination, form a case module is introduced to the teaching practice, using case teaching method to arouse the students’ interest in learning, training students thinking of object-oriented programming and the ability to analyze and solve problems, in order to make students to learn in order to practise purpose.

Key words:C# language; classroom teaching; examples of teaching; teaching mode; case discussion

隨著互聯網技術發展越來越快,人們對網絡應用程序的需求也越來越多,而C#(C Sharp)語言自從2000年問世以來,由于其安全、跨平臺、面向對象、開發速度快等特點,很快得到用戶和企業的青睞,成為當今最流行的網絡編程語言[1]。為順應社會需求,各高校計算機相關專業都將C#語言課程納入到教學計劃作為高年級的就業方向課程。但是在教學過程中很多學生反應C#語言涉及的概念比較抽象難懂,規則和類庫繁多;知識點零散,容易出錯;學生在遇到實際編程問題時感覺“無從下手”。作者從實際教學環境入手,對《C#語言程序設計》課程從教學方法、教學手段等方面進行了一些改革,并取得了較好的教學效果。具體改進措施和方法如下。

1案例討論教學法對傳統教學方法的改進

1.1傳統教學方法存在的問題

目前,《C#語言程序設計》課程是我院07級、08級軟件工程專業的就業方向拓展課程。該課程是C++語言的后續編程課程,目的是讓學生在建立面向對象編程的基礎能力上熟練掌握C#基本語法規則,并提高實際編程能力。以往的教學方法都是先從基礎概念入手,再就C#語言所帶的基本控件進行講解,其中著重講解C#如何操作數據庫中的數據。每節課先以理論概念結合一些簡單示例程序講解,最后安排學生上機操作加以深刻理解。

在以往的教學模式中,教師按照教科書編排順序進行教學,講授大量編程知識,但學生遇到實際項目編程應用并不理想。平時的知識點和課堂示例過于分散,學生無法體會到各個知識點之間的聯系;學生在學習過程當中感覺平時的知識點很抽象,課堂上掌握的只是些表面知識,并不能正確的理解和加以應用;即使課堂上聽明白了,時間一長有些知識點又會遺忘。經常在實際的編程項目中感覺“無從下手”。久而久之導致學生逐漸失去了編程的興趣和信心,覺得沒有實際用途,并產生消極情緒[2]。

綜上所述,產生問題的原因在于傳統教學方法只是讓學生掌握了基本編程知識,知識點之間的結合應用不夠靈活,在實際項目應用當中想不到應該使用哪個知識點來解決問題,因此,為了改善這種現狀,有必要對C#課程的教學模式進行改革和探討。1.2案例討論式教學方法

C#語言的課程內容既豐富又零散,要求學生既要理解一些抽象的概念、方法又要具備一定的編程、動手能力。這就要求教師在現有課堂教學時間當中充分調動學生的積極性、主動性和參與性,采用先進的教學模式和手段,師生共同配合較好地完成教學任務。

在傳統教學中,當理論知識講述之后,針對該知識點做出示例,可以使學生加深對該知識點的理解,掌握知識的使用方法。但 是平時的課堂示例只是單獨的幾個知識點,如何把相關的知識點聯系起來完成某個功能模塊,這是我們考慮的問題。

案例討論式教學法是運用實際案例進行交互式教學的方法。在教學過程中,要求以實際的案例模塊作為被解析對象,在教師指導下按照軟件工程的思想將某一工程項目分析解剖,以其中某一模塊為實現目標,學生共同參與案例的分析、討論,尋找實現途徑。通過這種教學活動達到學習知識、分析問題、解決問題的目的。

通常情況一個案例應用到多個知識點。比如一個登陸模塊的實現,它需要熟練掌握C#的基本語法、IF…ElSE語句、數據庫操作等知識點并結合使用。所以在本課程教學中,筆者經常在講授一部分知識點后,把各個知識點串聯起來放在實際的案例模塊當中。先組織學生參與討論,分析出該案例中某個模塊需要哪些知識點來完成。學生通過文字描述整個模塊的實現過程,最后指出知識點在整個案例實現過程中的具體環節,確定軟件處理流程,上機編碼。這種方法可以使學生遇到問題后回顧以前所學知識,并把知識跟實際案例相對應,從而解決實際問題。

經過一段時間的零散知識講解之后,應該把幾個零散的知識點貫穿起來,結合實際的項目需求,組織學生分析討論。這樣不但學到了知識,還可提高對案例的分析、解決問題的能力,能夠達到學習與實踐的統一。因此,案例討論式的教學模式是一種幫助學生快速適應未來職業需求的學習形式。

3 C#課程案例討論式教學實踐與教學質量評價方法

3.1“案例討論”教學模式的實踐

在“案例討論”的C#課程教學過程中,根據該教學程序將整個教學活動分為以下幾個階段:

(1)案例需求設計

案例應該是一項具有實際意義的工程任務,也是某一具體項目中的一個模塊,它的選取是學習的關鍵[3]。首先,案例設計要目標明確,既要滿足教學要求,又能有一定應用價值;其次,案例設計要符合學生的特點,案例中應該包含之前所講授的部分知識點,難度要適中,在平時的教學情況下學生可以分組進行討論、明確的目標后安排學生的學習,在這一過程中要對本班學生的具體情況進行分析,定義基本任務,還可以有延伸問題;最后,案例設計要符合面向對象和面向工程的要求,讓學生按照軟件工程的設計要求制定該案例的分析方案。案例整體結束后,師生可以共同評價其工作成果。

教師在設計案例時,設計一個案例,讓每個小組討論同一個案例,這樣可以在后期進行組與組之間的對比,激勵組內成員的團結性。

(2)案例討論前的必要準備

在布置任務之前,學生已經學習了該案例模塊的基本理論知識。但在實際教學過程中,每個知識點有可能都是獨立的,缺乏知識點之間的聯合應用,學生很難對一些理論知識系統理解,一旦馬上進行項目應用往往難以適應,感覺“無法下手”等情況,因此教師在進行布置任務前有針對性的以前知識點進行必要的復習,同時也能對學生的學習情況,相關知識的掌握情況有一個了解。這樣就為教學的開展做了必要的鋪墊。

(3)組織學生討論

案例討論是以學生為主體,但一個案例模塊如果讓一個學生去思考,可能會在思路上受到限制、難度有時過大。如果讓所有人都參與,則合作、分工難度過大,因此,學生的組織應以小組為單位,可自由組合也可由教師編排,每組5人左右,指定其中一人為小組組長,最后討論出整個流程,并對整個流程分析出需要哪些知識來實現。這樣既能鍛煉學生的分析問題、解決問題能力,也能鍛煉學生在項目開發過程中的溝通協調能力。

(4)采用“討論式”教學方法,監控整個討論流程

學生以小組進行討論時,教師可以指定整個討論流程,規定時間限制,一般討論30-40分鐘時間,先讓每個小組針對該模塊確定工作流程思路,寫出文字描述的軟件工作流程,再次針對每個小組自己設計的軟件工作流,指出流程中需要的知識點名稱,最終提交整個流程文檔。由小組成員提出自己的見解和工作計劃并在這一過程中相互啟發、相互學習,經過討論最終確定出較好的解決方案。在這個過程中教師應采用“討論式”的教學方法,組織同學們一起對方案和遇到的問題進行討論,充分發揮學生的主動性和創造性。

(5)教師講評

教師將每個小組的最終文檔匯總,如果思路流程正確優秀的小組可以得到好評及表揚,對思路有問題的小組教師可以適當的指出其問題的所在,加以糾正。最后教師就該案例,說出正確的軟件工作流程,在該流程中所應用到以前學習過的知識點,讓整個學生明確思路和解決方案,布置模塊編碼任務,從而為功能編碼的實現打下基礎。

(6)實際編碼環節,提高上機質量

在傳統的教學模式中,上機實驗由教師根據教材內容進行編排,主要以書上的例題、課后習題為主,學生只是將程序敲入計算機,運行一下即完成了上機任務。雖然程序運行結果正確,但對程序本身的設計理解并不透徹,只是掌握了該知識點的使用方法,無法理解在實際的案例工作中應該如何應用。

在“案例討論”的教學模式驅動下,以案例討論為主線,明確遇到問題首先應該考慮使用以前的哪些知識點解決,待思路和知識點完全確定后,再進行編碼,這樣可以有效的解決學生遇到實際項目時難以下手,也不知從何下手的問題。最終以討論文檔和案例程序為階段考核和評價的依據,充分利用實驗環境和條件,加強上機實驗的應用效果,保證教學質量。

3.2教學質量評價方法

C#語言是一種面向對象的程序設計語言,針對C#語言及“案例討論”中理論學習與實踐并重的特點,在考核過程中采用新的教學質量評價方法,即將考試機制與案例討論實現有效結合,綜合評定教學效果。

以往的考核形式多為期末筆試+平時成績(出勤、作業等),這種評價方式雖然能反映學生的學習態度及對一些基本概念、知識、理論的掌握情況,但無法全面反映出學生對知識點實際的理解和靈活應用,因此將考核形式變為期末筆試+案例討論報告+案例程序,其中期末筆試主要檢驗學生對基本概念、語法、結構的學習和掌握情況,測試的是學生的基礎理論部分,這部分成績可占整個評價結果的50%;而案例討論也作為一項考核內容,重點考核的是學生的分析問題解決問題的能力,最終以平時的討論報告為主要依據,因此其成績將占整個評價結果的25%;最后一個部分為項目源代碼,主要考察學生的實際編碼能力,按小組分工給出具體的分數,占整個評價的25%。

采用案例討論為核心的教學模式,將原有的以“課堂、教師、書本”為中心的架構變為以“課堂示例、案例分析、實際應用”為中心的架構,將所學知識與實際應用緊密結合,學生既學到了知識又得到應用鍛煉;教師既完成了教學又培養了學生的能力,達到了“教書、育人”的雙重目的[4]。

4結束語

案例討論教學對于語言程序設計課程來講是一種比較有效的教學模式,它突破了傳統教學模式,讓學生學習一段基礎理論知識之后,通過對實際案例問題的分析來理解掌握知識點,這樣不僅能快速地掌握所學知識,也為代碼的實現打下了堅實的基礎,而且能夠培養學生的社會責任感和團隊合作能力,提高學生的具體分析能力和解決實際問題的能力,培養出的學生能很快適應市場需求,有助于解決學生的就業問題。因此,案例討論教學方法不僅適合計算機程序設計語言教學的需要,也是應用型軟件開發設計人才培養的一個有效途徑。

參考文獻:

[1]吳曉艷. C#語言程序設計精品課程建設的探索[J].科技信息,2010(25):48-50.

[2]蔣衛祥,朱利華.項目教學法在JavaWeb程序設計教學中的應用[J].科技信息(學術版),2006(9):410.

[3]李桂瓊.程序設計課程的教學改革初探[J].計算機時代,2007(8):73-74.

[4]呂曉華,李素朵,張燕.任務驅動教學模式在java課程教學中探索與實踐[J].北京:硅谷,2008(9):180.

[5]張悅.項目驅動教學法在C語言課程中的應用[J].職業教育研究,2007.

[6]呂曉華,李素朵,張燕.任務驅動教學模式在java課程教學中探索與實踐[J].北京:硅谷,2008(9).

c語言程序設計實例范文2

關鍵詞:獨立學院;C語言程序設計;教學改革;教學

中圖分類號:G642 文獻標識碼:A 文章編號:1003-2851(2011)09-0-01

一、引言

隨著我國的高等教育的普及化,民辦教育已成為我國教育體系的重要組成部分。C語言程序設計課程是我院部分專業學生必修的基礎課程。該課程的教學目的是向學生介紹程序設計的基本知識,培養學生解決和處理實際問題的思維方法與基本能力,使學生具有初步的程序設計和程序調試的能力,為今后使用C語言解決實際問題打下良好的基礎。為此,筆者在從事民辦學院C語言程序設計課程教學的過程中,針對我院學生特點,對教學方法和實踐教學環節的教學改革做了一些探索。

二、課程教學面臨的問題

目前,在C語言教學中存在著以下幾方面的問題:

(一)獨立學院在校學生的基礎比較薄弱。

(二)C語言牽涉到的概念復雜,規則繁多,使用靈活,使學生在學習時感到厭倦。

(三)缺乏較好的教學方法

傳統的教學方法已經不能適應獨立學院教育的特點,采取何種適合獨立學院學生的教學方法,是教學改革的一個重點。

因此,面對新的教學對象,如何豐富教學方法、改革教學模式、加強對教學過程的管理、保障教學任務的順利完成,是我們必需認真思考和解決的問題。

三、課程教學改革的實踐與探索

(一)對比式教學的應用

對同一問題,引導學生從不同的角度去思考,找出多種方法來解決。比如,在解決1+2+3+….+100的和的問題時,可以采用for循環,或while循環,也可以采用do…while循環。這種對同一問題尋找不同解決方法實現的教學方式,有效地開闊了學生的思路,同時通過對不同循環的比較,能夠找到這三者之間的聯系與區別,加深學生對循環的理解和掌握。

(二)溫故而知新

為了使學生能舉一反三、觸類旁通,每次教學結束時及時布置相關的課后練習,使學生在課后進一步復習鞏固,同時在下一次課講課之前,將上節課的重點以習題的形式讓學生當堂完成,并且當堂給予訂正與講解,對完成好的同學給予適當的獎勵,激發學生的興趣。為學習以后的知識奠定堅實的基礎。

(三)注重情感教育

教師無論在課堂上還是在課下都應該關心同學,了解他們的思想動態,及時與他們交流,解決他們各方面的困難。使學生從心理上能夠喜歡老師,達到愛屋及烏的效果。

(四)加強實踐教學環節

1、啟發學生的學習興趣,使學生的學習由被動變為主動。定期組織涉及到大量的典型應用的計算機程序設計競賽,激發學生的學習興趣,鼓勵學生參與項目,使學生學以致用。

2、加大實驗教學力度,真正培養學生解決實際問題的能力。對實驗要有老師演示,學生模仿,到最后的逐漸放手,讓學生自己來實現源程序編寫、調試和運行。以鍛煉學生的動手能力、創新能力和表達能力。

(五)充分應用現代教育技術

教學中采用電子演示文稿、大屏幕多媒體聯機演示、網絡教學等各種先進的教學手段,使課堂教學生動活潑,既提高教學效果,又提高教學效率。

1、充分利用多媒體技術將課程的重點難點以及抽象的內容通過動畫的形式直觀、形象、生動地展示出來,使學生更易于理解和掌握;2、利用網絡將課堂教學延伸到課外,學生根據需要通過網絡學習有關的內容。教師的課件和教學用資料上傳到教學資源下載中心,方便學生課外學習和復習;3、建立QQ群,同學們可以在群里相互解決疑難,也可以通過在線老師解決,這樣可以使遺留問題及時得到解決。

四、結束語

通過C語言程序設計課程存在的問題的思考和分析,針對現狀,結合獨立院校實際,結合教學和個人體會,提出一些改革的措施和想法,探索出一套適合于獨立學院學生的教學方法。

參考文獻:

[1]張天寶,王攀峰.討論新型教與學關系的建構[J].高教研究,2001.

[2]沈軍.C程序設計語言課程的教學新思路[J].電氣電子教學學報,2000,(4):28-29.

[3]張敏霞.程序設計語言課程教學方法改革的探索與實踐[J].中國高教研究,2004,(2):9.

c語言程序設計實例范文3

Abstract As a fundamental and central course of computer profession, the C programming language directly affect training goal of computer profession. Therefore, Adapting to the development of Computer profession in new situation, the traditional C language programming teaching method and implementation strategy need to reform. In this paper, the author summarize some views on the teaching reform from the teaching experience of C programming language course.

Key words C programming Language; teaching organization; teaching method

“C語言程序設計”課程是計算機專業學生的一門程序設計入門課,是培養學生程序設計思想和能力的技術基礎課,同時也為后續的專業課程奠定了堅實的基礎。其中專業核心課程“數據結構”一般以“C語言程序設計”為輔助教學工具,學生在具備了“C語言程序設計”的基本程序設計思想和方法以及數據結構的基礎知識后,才能進一步學習Visual Basic、Java等高級語言程序設計。因此,必須將“C語言程序設計”課程的教學作為計算機專業培養的核心任務。

1 “C語言程序設計”教學現狀分析

目前,計算機專業“C語言程序設計”課程的教學大多還停留在傳統的教學模式上,主要以教師的“教”為主,教師根據教學內容的組織講授基本的概念、講解例題、布置作業給學生進行上機練習,學生在教師的指導下完成編程練習。在教學的過程中,學生完全處于被動接受的狀態,無法發揮學習的積極性和主動性,以至于大部分學生普遍反映“C語言程序設計”枯燥、難學,缺乏學習興趣,學生普遍的編程能力較差。

由于新生入校后已有的計算機專業基礎知識薄弱,學習方法欠佳,以至于學生在初次接觸“C語言程序設計”這樣抽象難學的程序設計課程時,都會難于正確把握課程的學習方法。因此,任課教師應該準確地分析學生的學習現狀,深究原因,找到解決方法,能夠最大限度地激發學生的學習興趣,引導學生合理有效地學習,并且培養學生分析和解決問題的能力。

2 “C語言程序設計”教學改革

依據培養目標的定位,教師應以培養學生基礎能力和提高學習興趣為原則,合理地開展“C語言程序設計”課程的教學改革。為此,筆者結合“C語言程序設計”的教學體會,提出如下的觀點。

2.1修訂“C語言程序設計”的教學大綱,編寫和選用適合計算機專業的教材

首先,教師應準確定位課程的教學目標和任務,“C語言程序設計”課程的教學目標主要體現在知識、技能和素質三個方面。其知識目標要求學生較好地掌握“C語言程序設計”的基本語法、語句、控制結構以及結構化程序設計的基本思想,這是學習本門課程的核心要求。課程的技能目標體現在使學生認識到算法、良好的程序設計方法及上機實踐的重要性,并且掌握算法設計和結構化程序設計的方法。另外,在素質目標方面要求培養學生利用“C語言程序設計”分析和解決實際問題的能力。其次,教師應結合教學目標和任務合理組織教學大綱。鑒于“C語言程序設計”課程實踐性較強的特點,教師還應根據教學大綱的要求,制定合理有效的實踐教學大綱,制定實踐教學內容和實施方案。實踐教學內容應緊密聯系實際應用,并強調充分調動學生的積極性、主動性和一定的團隊協作能力,另外還應注重培養學生分析和解決實際問題的能力。

依據教學大綱中教學內容的組織和實踐教學的設計,教師應合理地編寫和選用課程的教材。目前,“C語言程序設計”方面的教材甚多,以清華大學譚浩強教授編寫的《C語言程序設計程序設計》一書為代表的一系列優秀教材為課程的教學提供了較好的導向作用。但根據計算機專業的培養目標和課程的定位,教師應對教材的內容進行適當的調整。

另外,在教學過程中教師應嚴格按照程序設計的規范和方法分析和解決應用問題,應培養學生規范的程序設計方法和嚴謹的編程習慣。例如要求學生在日常程序設計練習中按照“問題定義―問題分析―算法設計―編寫程序―上機調試運行”的流程實施,并且在算法設計環節使用規范的程序流程圖描述算法。這樣一系列的措施有助于培養學生良好的編程風格和習慣,為后續其它的程序設計語言的學習夯實基礎。

2.2改革教學組織和實施策略,優化教學結構

由于“C語言程序設計”課程的實踐操作性較強,學生在上機實踐的過程中,不僅可以消化和鞏固課堂所學知識,還可激發和提高學習興趣、鍛煉邏輯思維能力。教師應注重將課本上的理論知識和實際應用問題進行有機結合,提高學生的程序設計能力,進一步培養學生分析問題和解決問題的能力。因此,課程的教學組織主要分為理論教學、上機實踐教學和課程設計教學三個環節。

其中,理論教學主要遵照教學內容的要求, 采用多媒體教學與傳統板書教學有機結合的方式,實施理論與實踐一體化的多媒體教學環境,實現交互式教學。其次,教學中應重視“興趣引導”,激發學生學習熱情,引導學生主動學習。另外,應注重以模擬實踐教學為主線,提高課堂教學的教學效果。

上機實踐教學以課堂理論教學為前導,內容設計應以鞏固和綜合運用主要知識點為主線,內容具備實用性,以循序漸進的任務驅動方式指導學生從簡單的程序設計開始逐漸擴展到完成綜合的程序設計,以由淺入深、由單一到綜合的過程展開,符合學生的認知習慣和知識的拓展,使學生利用所學知識解決實際的問題,培養程序設計的能力。

結合課程的特點,課程設計環節應利用“C語言程序設計”的基礎理論和上機實踐課中學到的編程知識和編程技巧,通過布置具有一定難度、一定編程量的課程設計任務,使學生通過課程設計掌握高級編程語言的知識和編程技術,具備分析問題和解決問題的能力。

2.3秉承合理有效的教學理念,改革傳統的教學方法

傳統的“C語言程序設計”教學方法一般采用灌輸式的單向教學法,學生被動地接收知識,并且教學知識點零散,建構系統的知識體系,另外理論教學和實踐脫節,學生只會紙上談兵,動手實作能力較差,不能利用所學的知識解決實際問題。因此,在教學過程中應重視教學方法的改革?!癈語言程序設計”教學主要采用“任務驅動”、“案例教學”、“講練結合”的教學方法,三種方法有機結合,合理地組織課程的教學。

“任務驅動”教學法要求按照教學目標的要求,圍繞教學內容,合理地安排一個任務。其主要分為三個基本環節,首先提出任務,例如設計判定學生成績等級的程序;進一步分析任務,提出問題的解決方法,主要設計程序的算法;最后解決任務,講授解決任務運用的知識點,例中主要的知識點為選擇控制結構的語法及應用。

“案例教學法”以綜合的“C語言程序設計”程序案例為主線,貫穿所有章節的知識,課程教學具有系統性和連貫性。例如,提出“學生成績管理系統”案例,實現成績的錄入、添加、修改、刪除、查詢、統計和排序等功能。通過分析案例,明確系統的基礎知識和各個功能模塊的相關知識點,如表1所示。

另外,“講練結合”的教學方法主要應用于上機實踐教學環境中,采取邊講邊練的教學互動形式,完成程序設計實例。教師先講解和演示與本次實踐任務相關的應用問題和注意事項,學生按照要求動手完成實踐任務,教師及時了解學生在實踐中出現的問題,加以正確的啟發和指導。最后教師對本次實踐任務的完成情況進行總結,集中反饋出現的問題并提出解決方法。

2.4完善課程的考核方案,合理評價學生的學習成果

鑒于“C語言程序設計”課程理論和實踐并重的特點,課程考核應主要分為理論考核和實踐考核兩大方面。其中理論考核以筆試為主,考試內容應遵照教學大綱和考試的要求,突出課程的主要知識點;實踐考核主要以上機實踐教學環節制定的任務和課程設計為考查對象,客觀地反映學生掌握知識和運用知識的能力。

“C語言程序設計”的課程設計考核應采用學生答辯的形式,從學生運用知識的能力、分析和解決問題的能力、創新能力等方面進行綜合考核。

c語言程序設計實例范文4

關鍵詞:C語言教學;課程導入;項目驅動式;軟件工程

中圖分類號:G712 文獻標識碼:A 文章編號:1672-5727(2012)04-0095-02

C語言程序設計是一門過程性程序設計語言,它的發展貫穿了計算機發展的歷程,它蘊含了程序設計的基本思想,囊括了程序設計的基本概念,所以它是理工科高等院校的一門基礎課程。另外,在計算機教育方面,C語言是為數不多的與國外保持內容同步的課程之一,因此,它在相關專業教學中的地位和重要性不言而喻。

C語言教學的現狀

傳統的C語言程序設計的教學,從教學形式上看,通常是多媒體教室講課+學生上機訓練。從教學內容上來看一般都是“說明書”式的教學,即教師進行教學時往往是逐一地講解相應的知識點,然后加以舉例說明,最后學生進行針對性練習。這種以概念、舉例、練習三部曲的方式來按部就班地組織教學,由于受到教學課時等因素的影響,在講授程序設計思想、方法等重要概念和應用時,已沒有足夠的教學時間讓學生去做一些具體的綜合性練習。這種教學方式的缺點是:一般都脫離了實際應用,純粹的過程性程序設計使學生在學習和上機時,將學習重點放在C語言的語法上,不知道所學習的東西有什么用,不能很好地把握知識的重點,也不能很好地訓練在實際工作中所需要的技能。由于不能很好地調動學生的積極性,因此普遍存在著“教師難教,學生難學”的狀況。

C語言教學改革

針對以上問題,我們認識到在C語言課程的學習上,首先要轉變一種觀念,使學生學習C語言的主要目的不再局限于單純地了解和掌握基本語法規范,而是把學習的重心轉移到培養學生運用C語言解決實際問題的編程能力,把C語言作為一種實踐工具,介紹程序設計的基本思想和方法,培養學生無論以后在學習、工作中使用什么語言編程,都能靈活應用這些思想和方法的能力。

在實際教學中,將課程導入設計和項目驅動教學引入C語言教學中,取得了一定的效果。

(一)課程導入在C語言教學中的應用

課程導入的設計 課堂導入是課堂教學中的第一個環節,是指課堂教學伊始的3~5分鐘內教師和學生所有教學活動的統稱。這一環節時間很短,但作用重大,如果設計得當,可以快速集中學生的注意力,激起學生的求知欲,為后續教學的順利開展帶來極大的便利。所以,課堂導入是課堂教學中一個不可忽視的重要環節。下面通過對課堂導入環節的分析,結合教學實例,提出這一環節的一些設計原則。

課程導入的教學示范 課程導入需要良好的教學案例。下面以C語言中的循環結構程序設計部分的課程導入為例加以介紹。

1.強化理解概念。循環的相關概念如循環控制條件、循環變量、循環體等是設計循環結構程序的關鍵因素,在本部分教學之初,必須透徹理解。因此,設計了“植樹”案例。具體描述為:學校要求每人種植50棵樹,種樹的具體過程描述如圖1所示。通過圖1,可以對循環基本概念進行如下定義:(1)循環體:重復執行的動作,如圖1中的“挖坑、澆水”;(2)循環控制條件:重復執行循環體的條件,如圖1中的“總棵數

2.歸納、總結,強調功能。現實中許多問題的求解都可以歸納為計算機能重復執行的操作。例如,數值計算中的數列問題,數值計算中的對象遍歷(查找、排序)等問題。重復工作是計算機特別擅長的工作之一,也是計算機解決問題時遇到最多的一類問題。這部分主要強調循環結構在程序設計中的重要作用。

3.循循善誘,引出新課環節。介紹C語言提供的三種循環控制語句:(1)while語句;(2)do-while語句;(3)for語句。這部分主要使學生認識到編制循環結構的程序所需要掌握的工具。

4.分析簡單的數列求和實例,練習編制循環程序引入程序設計實例求“1+2+3+…+100累加和”。通過提問、啟發等多種方式共同設計算法,如下所示:

算法1:直接寫出算式(用變量sum存放和)

sum=1+2+3+4+5+…+100

算法2:

步驟1:考慮1+2+3+…+100可以改寫為:(((1+2)+3)+…+100),

sum=0;

sum=sum+1;

sum=sum+2;

sum=sum+100;

步驟2:根據規律上述式子可以改成:

sum=sum+i,i=i+1

步驟3:完整算法:sum=0,i=1;

判斷如果i小于或等于100,執行步驟3,否則算法結束;

sum=sum+i; i=i+1;返回步驟2

(二)在C語言教學中實施項目驅動教學法

提高教學質量和教學效果,不但要通過良好課程導入的設計使學生很容易地融入新的教學內容中,還要在具體知識的學習上吸引學生,提高學生的學習興趣?!绊椖框寗印苯虒W法以提高學生的學習興趣,重點培養學生分析問題、解決問題的能力為目的,是培養學生自主學習能力的一種新的教學法。

所謂項目驅動教學法,是師生通過共同實施一個完整的“項目”工作而進行的教學活動,它既是一種課程模式,又是一種教學方法??梢钥闯?,項目教學都是實踐導向的和任務驅動式的教學。

C語言程序設計作為計算機類專業的基礎課程,若擺脫傳統的“說明書”式的教學模式,采用“項目驅動”教學模式,將學生的關注點由繁復的C語言語法轉移到實踐性較強的項目的設計與開發上來,將會極大地提高教學效果。

幫助學生樹立軟件工程的基本思想 在計算機行業中,軟件是通過人們的智力活動把知識與技術轉化成信息的一種產品。軟件的設計已經用工程的觀念來進行管理,軟件設計工作被當作一項系統工程來對待。C語言作為大多數工科院校學生接觸的第一門程序設計語言,在學習之初,首先應該讓學生簡單了解什么是軟件工程思想。同時,當前的程序設計教學也必須以切合將來軟件工程開發的實際需要為第一目標,使學生在學習程序設計的初級階段就樹立正確的軟件工程觀點。這樣做,不僅可以為學生將來從事計算機應用設計打下良好的基礎,而且有利于培養學生分析問題的完備性以及統籌全局、協調關系等基本素質。

軟件工程思想 經典的軟件工程思想將軟件開發分為3個階段:軟件定義、 軟件開發和軟件維護。軟件定義可進一步劃分為問題定義、 可行性分析和需求分析。在這一階段,通過對應用問題及其環境的理解與分析,建立系統模型,將用戶的需求精確化、 完全化。軟件開發階段可進而劃分為總體設計、詳細設計、編碼和測試??傮w設計階段的主要任務是如何得到一個能夠實現用戶需求的理想的系統結構,詳細設計的任務是進行系統所需要的數據結構設計或者數據庫的物理設計以及模塊邏輯開發。編碼即軟件系統的實現階段,在現代軟件工程中,編碼階段所占的比重正在逐漸地縮小。軟件測試是軟件工程過程的一個重要階段,其主要任務是對軟件分析、設計和編碼各階段的產品進行檢查,保證軟件開發產品的正確性、完全性和一致性,檢測并修正軟件中出現的錯誤。軟件維護是在軟件產品交付給用戶之后進行的修改工作,維護工作的好壞直接影響到用戶的滿意程度,關系到開發者的信譽。

以軟件工程思想指導一個完整的軟件開發項目 在C語言教學實施過程中,配合“項目拓展驅動教學法”,整個課程教學圍繞一個“工程項目”進行,以項目的構建過程為線索安排教學步驟,教學過程由項目任務來驅動;同時,以軟件工程思想指導整個軟件項目的建設。下面以“通訊錄管理系統”的設計與實現為例,簡單加以介紹。首先,將整個課程學習分為兩個階段。第一階段為單項的編程練習階段。該階段重點是掌握C語言的基本語句、數據類型與程序結構等;第二階段是實訓項目編程實踐階段。主要進行數組、函數、結構、指針和文件內容教學,同時,逐步組建“通訊錄管理系統”,并且添加文本菜單,整合擴展記錄添加、排序、查詢、統計和記錄瀏覽等功能并編寫程序文檔,形成完完整整的應用軟件。具體設計參見表1。

通過這種逐步拓展的實訓項目和設計,不但可以將C語言的知識點都融化到一個個實訓項目的程序編寫中,而且可以熟悉一個軟件項目的簡單設計過程。在學習過程中,學生參與整個完整項目的分析、設計、實現全過程,在課堂教學中將理論與實踐教學有機地結合起來。這種開放性、創新性的教育思想和模式可使學生從被動接受者變成主動參與者,促進學生應用能力的提高。

良好的課程導入設計可以充分調動學生的求知欲,為后續教學環節的順利開展帶來極大的便利;而將軟件工程思想結合項目驅動教學法引入C語言的教學中,從學生接觸編程語言開始,就培養軟件工程思想,有助于學生從整體上體會軟件開發的全過程,充分調動學生的學習興趣。

參考文獻:

[1]肖榮,黃宏新,車云霞.論課堂導入及其設計[J].天津市教科院學報,2001,(4):38-41.

[2]楊玫,劉瑜,孔波.引入軟件工程思想的C語言案例教學法[J].科技信息,2010,(20).

[3]李愛軍.“項目驅動”教學法在C語言教學中的應用[J].辦公自動化雜志,2010,(18).

c語言程序設計實例范文5

【關鍵詞】監測臺;機房設備;電路

1.單片機客戶端系統

單片機客戶端有以下部分主成:串口通信、PS2鍵盤控制、紅外遙控控制、光電傳感、熱釋電、溫度傳感、12864液晶模塊顯示、蜂鳴器報警、8路開關控制。PC主機端自身擁有人機交流模塊,用戶也可在PC端通過鍵盤和鼠標實現8路開關的控制;同時PC主機端負責接收并處理來自單片機客戶端的控制數據和防區數據,通過一定的算法實現單片機客戶端與PC主機端的數據同步;PC主機端還負責同步系統時鐘和顯示溫度數據的功能;PC端在處理防區數據時有辨別防區和記錄最新防區報警時間的功能;其中實現實時同步的關鍵是數據交流和中斷處理,以下在我們的系統總方框圖中將給出我們的處理算法。單片機客戶端系統總方框圖如圖1所示。

圖1 單片機客戶端系統總方框圖

2.單元電路設計

2.1 控制部分電路(如圖2所示)

圖2 控制部分連接圖

2.2 PS2部分電路(如圖3所示)

圖3 PS2接口硬件連接圖

2.3 液晶顯示部分電路圖

顯示部分電路如圖4所示:

圖4 12864串行通信電路圖

2.4 溫度傳感器部分

溫度傳感器我們使用的是DS1820 單線數字溫度計,DS1820數字溫度計以9位數字量的形式反映器件的溫度值。

DS1820通過一個單線接口發送或接收信息,因此在中央微處理器和DS1820之間僅需一條連接線(加上地線)。用于讀寫和溫度轉換的電源可以從數據線本身獲得,無需外部電源。 因為每個DS1820都有一個獨特的片序列號,所以多只DS1820可以同時連在一根單線總線上,這樣就可以把溫度傳感器放在許多不同的地方。這一特性在HVAC環境控制、探測建筑物、儀器或機器的溫度以及過程監測和控制等方面非常有用。

DS1820依靠一個單線端口通訊。在單線端口條件下,必須先建立 ROM操作協議,才能進行存儲器和控制操作。因此,控制器必須首先提供下面5個ROM操作命令之一:1)讀ROM,2)匹配ROM,3)搜索ROM,4)跳過ROM,5)報警搜索。這些命令對每個器件的激光ROM部分進行操作,在單線總線上掛有多個器件時,可以區分出單個器件,同時可以向總線控制器指明有多少器件或是什么型號的器件。成功執行完一條ROM操作序列后,即可進行存儲器和控制操作,控制器可以提供6條存儲器和控制操作指令中的任一條。

一條控制操作命令指示DS1820完成一次溫度測量。測量結果放在DS1820的暫存器里,用一條讀暫存器內容的存儲器操作命令可以把暫存器中數據讀出。溫度報警觸發器TH和TL各由一個EEPROM字節構成。如果沒有對DS1820使用報警搜索命令,這些寄存器可以做為一般用途的用戶存儲器使用。可以用一條存儲器操作命令對TH和TL進行寫入,對這些寄存器的讀出需要通過暫存器。所有數據都是以最低有效位在前的方式進行讀寫。如圖5所示為溫度傳感器控制電路。

圖5 溫度傳感器控制電路

2.5 紅外遙控器整體電路圖

矩陣鍵盤又稱為行列式鍵盤,它是用4條I/O線作為行線,4條I/O線作為列線組成的鍵盤。在行線和列線的每一個交叉點上,設置一個按鍵。這樣鍵盤中按鍵的個數是4×4個。這種行列式鍵盤結構能夠有效地提高單片機系統中I/O口的利用率。

先從P1口的高四位輸出低電平,低四位輸出高電平,從P1口的低四位讀取鍵盤狀態。再從P1口的低四位輸出低電平,高四位輸出高電平,從P1口的高四位讀取鍵盤狀態。將兩次讀取結果組合起來就可以得到當前按鍵的特征編碼。使用上述方法我們得到16個鍵的特征編碼。紅外遙控器整體電路圖如圖6所示:

圖6 紅外遙控器整體電路圖

2.6 串口部分電路

串調調試原理圖如圖7所示:

圖7 串口調試原理圖

2.7 設備控制電路

設備控制電路如圖8所示:

圖8 設備控制電路圖

參考文獻

[1]田立,田清,代方震.51單片機C語言程序設計快速入門[M].北京:人民郵電出版社,2007.

[2]樓然苗,光飛.51系列單片機設計實例[M].北京:北京航空航天大學出版社,2003.

[3]涂時亮,友德.單片微機控制技術[M].上海:復旦大學出版社,1994.

[4]戴佳,戴衛恒.51單片機C語言應用程序設計實例精講[M].電子工業出版社,2006.

[5]吳炳勝,王桂梅.80C51單片機原理與應用[M].冶金工業出版社,2001.

作者簡介:

c語言程序設計實例范文6

教師在教學活動實踐中突出難點的同時應學會分散難點,從而降低學生學習中的困難,為學生們主動學習奠定基礎,具體可以從以下三個方面入手:(1)從實際問題的重復性出發.教師精心設計實例,從日常生活中容易看到和理解的問題入手,提出較為實際的切入點,然后在教師的引導下,讓學生自己動腦歸納重復行為,以達到理解和掌握循環結構的主要特點.在整個課堂上教師應明確學生才是學習的主體,而教師只是扮演主導角色.在循環結構設計時應牢牢把握程序設計的主要思想即從上到下,逐步求精,突出學習的重點并將其分散,達到讓學習容易理解和接受的目的.(2)教師在教授難點知識時應安排好過渡環節,在講授C語言基礎內容時可以適當的安排循環程序,不過先不要將其功能,為講解現在的內容做好鋪墊,這樣能夠使學生掌握基礎知識的同時,對學習本節內容有心理準備,這種循序漸進式的教學方法,可以達到提高教學質量的目的.(3)在循環程序設計應用時,教師應在學生對基本知識了解的基礎上再進行更為復雜程序的擴展,逐層深入,使學生對C語言程序設計有更全面的認識.講解重點知識時教師應在黑板上板書清楚,同時可以進行適當的提問,一方面讓學生參與到教學活動中去,能夠達到活躍教學氣氛的目的.另一方面通過提問教師了解學生們對C語言循環結構掌握和理解情況.當寫出程序后教師讓學生放到實際環境中運行,并針對出現的問題讓學生們自己分析,并進行調試,直到程序運行穩定.這個環節非常重要,在查錯糾錯的過程中學生對循環結構的理解會得到顯著的提高.

2認真設計和組織教學過程

2.1提出問題

C語言循環結構的學習主要包括兩方面內容:循環結構程序設計的算法表示和用C語言將循環結構表示出來.由于該內容是C語言學習的重、難點內容,因此教師應準確把握循環學習的引入問題.比如教師可以在課堂上提出計算10的階乘這個簡單的問題.這時學生們會利用之前學習的知識能夠輕而易舉的解決,但是如果計算n的階乘用之前學習的順序和選擇結構就很難解決,以此引入循環結構學習的必要性,這樣就能輕松的引入循環結構的學習,引入時教師應結合多種教學手法,調動學生們學習的積極性和熱情.

2.2解決問題和講解新知識

當教師通過提出問題引入循環后,應首先分析使用循環結構計算n階乘的自然語言和流程圖.其次,解決這類問題時C語言提供了較為常用的三種結構,教師可以根據需要選擇不同的循環控制語句進行演示.最后,講解不同循環控制語句的作用,讓學生自己體會不同語句的區別.為了進一步提高教學效率,教師除了運用傳統的教學手法外還可以選擇以下方法,以達到讓學生盡快掌握循環結構的目的.(1)教師在課堂上應充分發揮自己的主導作用,注重從不同角度去啟發學生,調動學生們主動學習的熱情,從而能夠主動的去分析問題和解決問題.(2)靈活運用各種驅動式教學方式,按照提出問題、分析問題、解決問題的思路,讓學生緊跟教師教學步伐,逐步實現教學目標.(3)加強學習和研究國外教學方法,教學活動實踐中注重國際上常用的解析教學方法.(4)培養學生實際解決問題的能力,讓學生將編寫的程序在實際的環境中運行,并善于分析運行中出現的錯誤,從而主動的尋找解決問題的方法,這樣不但能夠鞏固好之前所需知識,還能進一步加深學生對循環結構的理解.(5)注重利用現代科技手段,增強學生對循環結構重難點知識的理解,提高教學效率.注重板書和投影儀結合教學方式的運用,尤其是分析過程,應進行詳細的板書讓學生能夠充分的了解和學習循環結構的思維過程.

3注重循環結構數組中的教學

執行循環結構的本質是對數據的判斷和操作,利用循環結構操作數組是現實中遇到的常見問題,因此,教師在學生充分理解循環結構的基礎上,應適當擴展循環結構操作數組知識的講解,從而使學生形成一個完整的C語言知識系統框架.數組和基本數字之間的區別是操作數組應控制好其下標,對于初學者來講運用循環結構編寫的語句運行時經常出現下標越界的情況,出現這種情況的原因是學生沒有很好的將循環結構和數組知識聯系起來.因此教師在教學過程中應注意利用循環結構操作單一數據到數組的過度,讓學生自己比較兩者的區別.教師在教學過程中應讓學生觀察這些語句的區別,不難發現這些語句的不同之處在于數據下標,這個時候教師可以引導學生去思考,能否使用for循環語句中的變量i來代替下標的變化呢?

4總結

亚洲精品一二三区-久久