前言:中文期刊網精心挑選了c程序設計語言范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。
c程序設計語言范文1
關鍵詞:比喻法程序設計教學多媒體課件
隨著現代化進程的加快,學校的教育設施也得到了飛速的發展,筆記本電腦和多媒體教室被廣泛應用,大多數教師在教學過程中更傾向于利用已經設計好的多媒體課件進行教學,卻忽視了在整個教學過程中運用形象生動的比喻法。
所謂比喻法,是常用的一種修辭方法,就是利用兩種不同類的事物之間的某些相似的地方,以形象的事物作喻體去描述一個抽象的事物,它能化平淡為生動,化深奧為淺顯,化抽象為具體?!熬实谋扔骶拖裢捴械哪О?,碰到哪里,哪里就會發生神奇的變化”。在教學過程中,學生經常會碰到某些課程的理論性強,枯燥、難懂,不容易掌握。如果教師通過比喻教學,把內容和現實中非常接近我們的事情聯系起來,可使學生較好的理解某些比較抽象的知識內容,以便他們能進一步掌握并能應用這些知識、原理來分析、解決某些相關的問題。
筆者就以計算機專業必修課《C程序設計語言》課程為例,結合自己的教學心得,談談如何用比喻法開展教與學的活動。
在一般高校都把《C程序設計語言》課程設置在大學一年級,主要面向新生,新生本身對大學的適應就需要一個過程,再加上C語言牽涉的概念復雜,規則繁多,目前各高校在C語言程序設計課程教學模式上仍采用傳統的教學方法,導致學生剛接觸C語言就覺得抽象、深奧,使用起來不得心應手。如算法概念、順序程序設計、選擇程序設計、循環程序設計,指針等知識更考驗著學生的思維和耐心。
典型案例1:程序的靈魂――算法
[案例呈現]算法的概念是什么?
[分析]在《C程序設計》教學中,最大的困難正是對一些抽象的理論和概念的理解。算法是為解決某一問題而采取的方法和步驟。在教學中,我做了如下的處理,充分應用比喻的魅力,達到較好的教學效果。
打個比方,廚師制作菜肴,需要有菜譜。菜譜上一般包括使用的配料和用這些配料按規定的步驟加工出不同風味菜肴的操作步驟。沒有配料是無法加工成所需菜肴的,面對同一些原料可以加工出不同風味的菜肴。設計一個好的程序,就像是做一道美味的菜肴,既要用到類似于配料的數據結構,又要有類似于做菜步驟的算法。沒有數據結構是無法制作程序的,面對同一些數據可以設計出不同的程序。可見,算法從廣義上來講,就是操作步驟,就是為解決一個問題而采取的方法和步驟。當然我們學習計算機,關心的是計算機能解決的算法。
如著名數學家華羅庚“燒水泡茶”的兩個算法。
算法一:燒水――水燒開后,洗刷茶具――沏茶。
算法二:燒水――燒水過程中,洗刷茶具――水燒開后沏茶。
大家可以看到這兩個算法的區別在什么時間洗刷茶具,因為第二個算法應用了“統籌方法”,節約時間,所以效率更高。可見為了有效地進行解題,不僅要保證算法正確,還要用到科學的方法,考慮算法的質量,選擇合適的算法。
算法的概念及特點如果只憑老師反復講述定義,學生只會聽得昏頭昏腦,索然無味,教學效果很差。而比喻教學法的應用,可以使抽象的知識變得形象化、趣味化,起到“一語道破天機”的作用。
典型案例2:C程序設計的三種基本結構及各自的語句分析
1.順序結構
順序結構是C程序設計中最簡單的一種基本結構。它就像人的一生,從出生、長大、上幼兒園、小學、初中、高中、大學、工作、結婚生子,再到“夕陽無限好,只是近黃昏”。順其自然、順順利利度過一生。
2.選擇結構
它就像在人的一生中會遇到的好多選擇,有人生道路的選擇、世界觀的選擇、事業的選擇、愛情的選擇,等等,但任何的選擇都需要當前實際條件的成立。例如,考大學,假設成績大于500分就考上了,否則未考上。此結構中必包含一個成績大于500的判斷框,根據給定的條件是否成立而選擇執行“考上”或“未考上”。
if(成績>500) printf(“考上”);else printf(“未考上”);
3.循環結構
循環即周而復始,花開花謝,月圓月缺,循環無盡。人生像生老病死就是一個循環不息的過程。我生病了,醫生叮囑我每天吃藥,連續吃7天病就好了。很顯然吃藥是每天必做的事情,也是必循環的事情,7天后就可以不吃藥了(如圖所示)。在不少實際問題中有許多具有規律性的重復操作,因此在程序設計中就需要重復執行某些語句。一組被重復執行的語句稱為循環體,能否繼續重復,決定循環的終止條件。所以循環語句是由循環體及循環的終止條件兩部分組成的。循環語句是最能體現計算機解決問題優越性的語句。
While(天數
可見,這種利用一個個發生在身邊的實例做比喻,再加上理論講解相結合的方法,使學生能感性地理解循環。
在《C程序設計語言》課堂教學中,嘗試用比喻的方式來剖析計算機教學中的概念,選用恰當的生活事例,用已知來發掘未知,提高教學效果,增強學生學習的興趣,是一種非常有效的教學方法。但是,運用教學比喻,并不是以粗淺的事例代替科學精準的理論,更不是用隨便的玩笑代替細致準確的講解,而是要求我們緊扣教學目標和要求,把握物理概念的本質和特點。根據具體問題,做到言之有理,言之有物,言之有據?!秾W論》中說:“君子之教,喻也?!弊鳛榻處煟谌粘=虒W中,一定要認真鉆研教材,準確把握所教學生的思維水平和特點,從日常生活和學生已掌握的知識中找到恰當的比喻,運用比喻的時機和技巧,使課堂妙喻精彩紛呈。
參考文獻:
[1]顧建東.生活:程序設計教學的本質回歸[J].中國教育信息化.
[2]盛美勤.讓比喻這一古老的修辭煥發新的教學生命力[J].中國.
[3]許文芳.類比法在《C語言程序設計》教學中的運用[J].電腦知識與技術.
c程序設計語言范文2
關鍵詞: 項目導入 任務驅動 C程序設計語言教學 教學設計和實施
1.傳統教學模式所面臨的問題
學習計算機語言的最終目的是編程序,即以程序方式控制計算機自動、連續、協調運行,幫助用戶快速、精準地完成一些手工操作無法完成或完成效果不好的任務。
目前眾多的程序設計語言當中,C語言以其靈活方便、豐富的運算符及數據結構、強大的硬件操作能力、高質量的生成代碼和高可移植性等優點,得到了廣大編程愛好者的肯定,使之在系統軟件、應用軟件、計算機硬件開發等領域都得到了廣泛應用?;贑語言的眾多優勢,目前為止,大多數高等學校計算機類相關專業都將C語言作為必修課程開設。條件較好的高校,甚至對理工科非計算機專業的學生也開設C語言程序設計課程。在可預見的將來,C語言的地位還無法被其它語言所取代。
計算機編程語言的教學主要達到兩個目的:一是講授語言本身的語法規則;二是教授算法,通過算法的學習加深對計算機語言具體應用的了解。
傳統的語言教學模式一般是將主要課程內容放在語法規則的詳細講授上,大部分教材也都是按這種思路來編寫的,教材內容注重基礎知識和語法細節的介紹。在十多年前甚至更早,計算機還未普及,計算機網絡還沒有達到足夠的覆蓋程度,計算機方面的資料也比較少,人們普遍對計算機知之甚少。在那種情況下,傳統的教學模式比較適合當時的實際需求,也涌現出了以譚浩強等為代表的一大批優秀教師所編輯的優秀教材,為當時中國計算機的發展做出了重大貢獻。
隨著程序設計語言版本的不斷更新,新版本比舊版本在功能、性能等方面都有提高,以更好地滿足程序開發人員的不同需要。但是,為了兼容舊的版本,新版本一般都要把舊版本的大多數內容保留下來。這樣就導致版本越高,語言本身的內容就越多,對于學習者來說,要求掌握的內容就越龐雜。若再按傳統教學方法,以講授語言本身的語法規則為重心,一方面內容太多,講不完;另一方面因為跟實際應用脫節,也不容易激發學生的興趣,而最重要的一個問題是這種教學模式不利于培養學生分析及解決實際問題的能力。即使學生對語言本身的語法規則已經掌握得很好,碰到實際問題時,也很難找到好的解決辦法。就如同學英語,背了好多單詞,學了好多語法,但碰到外國友人時,想表達的意思卻說不出來。
實際教學當中,到底哪些要講?哪些不講?如何講?是經常擺在教師面前的很難確定的選擇題。很明顯,傳統教學模式已經無法滿足新的教學需要了。
程序設計語言的教學到底應該以什么為重心?
隨著PC機及計算機網絡的普及,社會各階層人員的計算機基本素質都比以前有了很大程度的提高。計算機各類資料豐富多彩,獲取計算機相關資料的途徑比比皆是,這給計算機教學帶來了極大方便。在這樣有利的條件下,我們完全可以通過實施全新的教學方法以取得更好的教學效果。
我經過多年的教學實踐,認為在當前大環境已經改變的前提下,教學內容不應該再以講授語言本身為重點,而應該把培養學生分析及解決實際問題的能力作為語言教學的核心,而語言本身的教學工作穿插到實際案例中就可以了。即以“項目導入、任務驅動”教學法來實施具體教學工作。
2.“項目導入、任務驅動”教學方法簡介
“項目導入、任務驅動”提倡“在學中做,在做中學”。用項目和任務的方式引入新知識,讓學生在實踐中鞏固所學理論知識,融會貫通,真正全面提高學生綜合職業素質,為企業培養合格的應用型人才。
“項目導入”是將工程實踐項目貫穿于教學的始終,用項目和任務進行新知識的引入,激發學生學習動力。“任務驅動”是在教學過程中,根據項目總體要求,以完成一個個具體的任務為線索,把教學內容巧妙地隱含在每個任務之中,讓學生自己提出問題,并經過思考和老師的點撥,自己解決問題。
3.項目與任務的設計原則
“項目導入、任務驅動”教學法的基本特征是“以任務為主線、教師為主導、學生為主體”。因此,項目與任務的設計要以激發學生學習興趣為出發點,以滿足學生的探究欲望為主觀愿望,以完成教學任務為最終目標。
3.1項目與任務要能激發學生興趣
項目與任務的設計必須要激發學生的學習興趣,使學生積極主動的參與到學習活動中來。因此,要擺脫課本內容的束縛,大刀闊斧地處理教材。項目與任務的內容要使學生充分感覺到學有所用;不能選用枯燥的任務迫使學生去完成,從而挫傷其學習的積極性與主動性。
3.2項目與任務要多層次、有梯度
在學生群體活動中,學生的學習水平、個性特征、興趣愛好、基本素質都有很大差異,表現出不同的活動狀態。與此相適應,項目與任務的設計應該考慮多層次、有梯度,讓所有學生都能結合自己的實際情況進行取舍。
3.3項目與任務要形成一個系統
項目與任務的設計要注意各個知識點之間的聯系,讓學生的任務和知識形成一個系統。設計任務的時候要處理好局部和整體的關系,形成子任務和母任務的關系,子任務服務于母任務,以保證很好地實現最終教學目標。
3.4項目與任務要真實、合理
在設計項目與任務時不要只考慮到如何提高學生對各知識點的掌握程度,把所有的知識點都強行加入到任務里來,要考慮任務是否符合客觀實際,是否合理。任務設計特別強調具有針對性、可操作性和實用性。
4.“項目導入、任務驅動”教學方法在C程序設計語言教學當中的具體運用
本著以上原則,我經過多年教學實踐,選擇確定了以下幾個任務及項目。
4.1簡單的四則運算計算器。目的是讓學習者掌握數據的輸入、輸出、存儲(常量及變量)、數據加工等程序設計基本知識結點,掌握順序及選擇結構程序的設計與實現,對程序設計有一個初步的了解。
4.2針對具體某個企業的企業人員工資管理系統。掌握數組的定義及使用,循環結構程序設計的實現方法及函數、文件等內容;掌握一些常用算法如排序等。
4.3針對具體某個企業的企業人員基本信息管理系統。掌握結構體、字符串等數據類型的定義及使用;了解完整系統的開發流程及組織方式。
4.4通用的企業人員基本信息管理系統。了解內存管理模式,掌握指針及鏈表的一般操作。
4.5圖形界面的通用企業人員基本信息管理系統。掌握圖形界面軟件的開發要點。
其中后四個任務屬于同一個完整的項目,只是在不同教學階段根據教學需要的不同,側重點不一樣而已。
以上這幾個教學任務及項目,除了包含C語言的所有相關知識結點外,還涉及軟件工程、數據結構、算法、操作系統及計算機硬件相關課程的內容,真正是一種涵蓋面很廣泛的教學活動。有利于對各相關知識點的整合與應用,真正提高學生分析、解決實際問題的綜合能力。
認識的辯證過程是由從感性認識到理性認識,又從理性認識到實踐這樣兩次飛躍構成的。從實踐中來,到實踐中去。以上這種教學任務與項目的安排,都是針對現實中的具體問題而設計的,符合認識的一般規律:理論與實踐密切結合,教學目的明確,老師好教,學生愿學,避免了傳統教學模式糾纏于語言規則細節的缺陷,經過教學實踐的檢驗,收到了明顯的效果。
5.教學方法實施過程中面臨的問題及解決辦法
這種教學模式不同于以課本為主線、教師主動講、學生被動學的傳統的教學模式,必然在具體實施過程中遇到一些問題。歸結起來,主要有以下幾個方面。
5.1認可問題。由于不同于傳統教學方式,剛開始不容易得到認可,學生可能也會不適應,這就要求授課教師提前與相關領導及部門充分交流,取得他們的支持。同時,在開始授課前就教學方法的特色、優勢及采用這種教學模式的原因、目的對學生要加以解釋和說明。
5.2課本問題。按此種教學模式,課本只能充當參考書的角色,此時要求課本的內容要全面,以方便學生查閱相關知識點。同時,教師要打破課本本身章節的限制,不再拘泥于課本的內容體系。
5.3教師問題。這種教學模式涉及的內容比傳統教學模式要多得多,授課過程中可能出現的情況也要相對復雜,教師授課的難度加大。因此,要求教師對所講授內容熟練,了然于心,以應對可能面臨的各種問題。
5.4方式問題。這種教學模式再不能以傳統的黑板講授的方式來實施了,應該以實踐為主,一邊講一邊做,做的過程中對于出現的問題再集體討論,在教師的引導下幫助解決。
5.5考試問題。此種教學模式,傳統的以知識記憶為特色的筆試考試方式不利于評估其教學效果,理想的考試方式是以小組為單位,限定時間,進行小規模的課程設計,完成后公開展示及答辯。這種考試模式一方面體現了公平與公正的原則,另一方面有利于學生相互交流和學習。在實現這種理想的考試方式相對有困難的情況下,我們可采用壓縮筆試成績所占總成績比例,增大項目設計成績在總成績中所點比重的方法進行教學評估。
5.6環境問題。此種教學模式,大量內容需要學生課后完成。因此,要提供課余的上機實踐場所及充足的實踐時間,最好再提供方便的網絡環境,以方便資料的查詢及師生、生生之間的交流與合作。
參考文獻:
[1]嚴蔚敏,吳偉民.數據結構[M].北京:清華大學出版社,1997,10.
[2]傅清祥,王曉東.算法與數據結構[M].北京:電子工業出版社,1998.
c程序設計語言范文3
鐘 實
(江西科技學院)
[摘 要]C語言程序設計課程是計算機專業教育的重要組成部分。將探究教學引入C語言程序設計教學中,不僅可以提高學生學習的興趣,調動教師教學的
熱情,也豐富了探究教學的理論與實踐。具體分析并探討了C語言程序設計探究教學的實施目標、實施條件、教學情境的創設、探究形式、教學評價等問題。
[關鍵詞]C語言程序設計 探究教學 實施目標
一、 C語言程序設計探究教學實施的目標:情感目標、能力目標和認知目
標
1、體驗C語言程序設計的編程思想,激發和保持對C語言程序設計課程的
求知欲,形成積極主動地學習和參與C語言程序設計課程探究活動的態度。
2、能辯證地認識C語言程序設計對社會發展、科技進步和日常生活學習的
影響。
3、獲得親自參與研究探索的積極體驗、培養嚴謹的科學態度。
4、能從日常生活、學習中發現或歸納可以利用C語言程序設計解決的問題,
通過問題分析確定程序功能。
5、能根據任務的要求,確定所需信息的類型和來源,并鑒別信息的真實性、
準確性和相關性。
6、掌握計算機程序的基本概念,理解并掌握C語言程序設計語言的基本知
識,包括語句、數據類型、變量、常量、表達式、函數等,熟悉語言的語法規則,熟
悉計算機程序執行的基本過程。
7、了解C語言程序設計語言,掌握編寫程序、編譯程序、連接程序以及程序
開發環境等基本知識,掌握調試、運行程序的基本方法與技巧。
二、C語言程序設計探究教學實施的條件
1、掌握一定的計算機操作基礎
C語言程序設計課程由于其學科自身的特點,需要在計算機上調試程序,
所以要求學生具有一定的計算機操作知識,如:開關機、鍵盤和鼠標的使用、文
件的建立與查找、常用軟件的使用等。
2、良好的C語言程序設計認知結構
認知結構就是學生頭腦里的知識結構,是學習者觀念的全部內容和組織。
奧蘇伯爾的認知結構理論是針對新學習內容的影響(即遷移)提出的,良好的認
知結構有利于知識的提取和正向遷移。C語言程序設計探究教學強調在已有知
識經驗上的主動建構,面對新的問題和任務,需要學生及時從頭腦中提取信息,
建立新舊知識間的聯系,在已有C語言程序設計知識的基礎上思考解決新問題
的辦法,并試圖將新知識納入自己的認知結構中。
3 、良好的探究環境
良好的探究環境是學生順利進行探究的保證,至少包含兩方面的內容:(1)
要有充足的探究時間和靈活的探究條件。探究時間應該根據學習任務進行合理
安排,應該考慮到學生假設錯誤時所耽誤的時間以及討論交流所需要的時間。
探究教學中可能需要查閱大量的資料,教師還應該準備書籍、網絡等輔助資源。
(2)學生在探究學習的時候不能有太多壓力,不同的學生由于其自身的因素不可
能以相同的速度學習,所以教師在進行評價的時候也應該因人而異,應該為每
個學生提供充分的思考機會和時間,讓每個學生都能以自己的進度進行探索,
并在此過程中感受到樂趣。
三、C語言程序設計探究教學情境的創設
心理學研究表明,恰當、適宜的環境能有效激發人的熱烈情緒,提高活動的
質量和效果。教學情境是指教師人為創造的“典型場景”,創設目的在于引出教
學任務,將學生的注意力吸引到學習任務中來。教師把將要學習的C語言程序
設計知識通過一定的情境呈現給學生,使得學生認知結構與周圍環境不平衡,
引起他們對學習目標的注意和興趣,并通過探究活動把學生過去的活動和將來
的活動聯系在心理學研究表明,恰當、適宜的環境能有效激發人的熱烈情緒,提
高活動的質量和效果。教學情境是指教師人為創造的“典型場景”,創設目的在
于引出教學任務,將學生的注意力吸引到學習任務中來。教師把將要學習的C
語言程序設計知識通過一定的情境呈現給學生,使得學生認知結構與周圍環境
不平衡,引起他們對學習目標的注意和興趣,并通過探究活動把學生過去的活
動和將來的活動聯系在一體。探究教學情境的創設應做到:(1)創設的情境是為
C語言程序設計教學服務的,要以C語言程序設計探究教學目標為依據。(2)探究
情境要接近學生的真實生活經驗,能夠吸引學生的注意力,激發他們的認知沖
突和求知欲。(3)學生在情境中能夠感覺到問題的存在,自然地將新舊知識聯系
起來。(4)情境中必須包含學生未知的新內容,而且是能夠通過探究掌握的。
四、C語言程序設計課程中的探究形式
C語言程序設計課程中開展探究教學主要有4種形式:探究性提問、探究性
討論、探究性演示和探究性實驗。這4種形式是相輔相承的,而不是孤立存在的,
在C語言程序設計探究教學中,需要用到多種形式來構成一個完整的探究教學
過程。C語言程序設計探究教學通常都是由探究性提問開始,然后進行探究性
討論、探究性演示或探究性實驗;也可能從探究性演示或探究性實驗開始,在演
示或實驗的過程中發現問題,再進行探究性討論。在實際教學過程中,要根據學
習內容和課堂情況靈活地選用這些形式。
五、C語言程序設計探究教學評價
教學評價指依據一定的標準,通過各種策略和相關資料的收集,對教學活
動及其效果進行客觀衡量和科學判定的系統過程。C語言程序設計探究教學評
價是對C語言程序設計探究教學過程及其影響的測量、分析和評定,評價中我
們更關注學生學習和成長的過程,尋找適合學生發展的學習方式,滿足學生知
識和能力發展的需要。評價對探究教學的積極作用是很明顯的,但是如果評價
指標制定不合理,或者評價方法的選用、評價結果的表述不當,不僅不能達到預
期效果,還會對學生的C語言程序設計學習產生消極影響。
參考文獻
[1] 《基礎教育課程改革綱要(試行)》教育部文件,教基[2001]17號.
[2] 保羅 朗格朗.終身教育引論瞰[M].北京:中國對外翻譯出版公司,1985,
p15~31.
[3] 聯合國教科文組織.學會生存——教育世界的今天和明天[M].上海:
上海譯文出.
版社,1979,p2.
[4] 張大均。教育心理學[M].北京:人民教育出版社,2005,p68--71.
[5] 靳玉樂.探究教學論[M].重慶:西南師范大學出版社,200l.
作者簡介
鐘實(1986-02)男、民族(漢),籍貫(江西省南昌市),2010畢業于浙江大學
c程序設計語言范文4
關鍵詞:教學方法;教學模式;思維訓練;自學能力
中圖分類號:G642文獻標識碼:A文章編號:1009-3044(2008)21-30486-03
The Research of Teaching Methods in "C Programming Language"
LIU Jian-you
(Zhaoqing Science and Technology Polytechnic,Zhaoqing 526020,China)
Abstract: C is a typical structural programming language, many colleges and universities use it as basic programming language. Students often complain about C language difficult to learn, to use, to build the application software, lack of programming and debugging capabilities. How to better carry out the C language courses teaching?Author on the problems that exist in teaching, with his personal experience in teaching and experience, talk about their own views, to promote the C language teaching.
Key words: teaching methods; teaching mode; thinking training; self-learning ability
1 引言
程序設計語言的種類多得難以計算,為什么要以C語言作為編程入門語言呢?還有人說為什么一定要學習C語言,干嘛不直接從C++學起?而且學C++不一定要有C語言基礎,有了反而會有些內容混淆。還有人說C語言都已經過時了,怎么還要浪費時間去學?C語言在教學過程中,抱怨C語言難學,難懂,難用,在解決實際問題編制應用軟件時往往無以下手,缺乏編程和調試的能力。。久而久之,學生對學習此門課程就會產生厭倦的心理,不但影響本課程的學習,還會影響以后相關課程的學習。本文針對以上問題,指出了如下措施:
2 學習《C語言程序設計》的意義
我認為在學習C語言之前有必要弄清學習的意義所在,這樣才能讓學生對其產生興趣。興趣是人類最好的老師,只有對其產生了興趣,我們才能學好這門語言。
將C語言作為入門語言具有重要的意義。C語言是一門典型的結構化程序設計語言,它具有語言簡潔、嚴謹,用途廣泛等特點,能夠體現結構化程序設計的優良控制結構,非常適合初學者。通過這門課程的學習,能夠使學生掌握一門結構化程序設計語言,更為最重要的是能讓學生樹立用程序解決現實問題的思路和方法。為今后的學習打良好的基礎。再學其他程序設計語言,就能夠在短時間內迅速的掌握。
3 改革課程教學內容,重視算法的編程思想,培養創造性思維
精選課程內容是一項非常重要的工作,它是教學內容的核心部分,《C語言程序設計》的核心內容包括C語言基本語法、程序設計思想和程序調試方法。語法是任何一門語言的基礎,同時,各種程序設計語言在基本知識點上是相同的,學生對基礎知識的正確理解和準確運用,其意義是深遠的。
C語言程序是由函數組成的,無論問題多么復雜,我們都可以將其看成是一個大任務,這個大任務又可化分成若干個小任務,將這些小任務解決了,那么大任務也就完成了。也就是說其任務只有一個,就是編寫函數(一個main()主函數和其他函數)。執行程序時,從mian()的第一個“{”,開始直到最后一個“}”結束,其他函數只有在執行的過程中被調用才執行。
學習C語言程序設計不僅是為了掌握一種開發工具,更重要的是用計算機解決問題。而算法是解題的方法和步驟,算法就是對操作的具體描述,是計算機的解題過程。編制程序,就是根據算法,用具體的語言依據某種規則編寫計算機執行的命令序列。因此學習語言的重點是鍛煉分析、分解,最終歸納整理出算法的能力。在教學過程中,學生能否理解算法,并掌握算法,成為教學的關鍵。
在C語言的教學過程中,改革傳統的語法學習內容,將算法教學融入到語言教學中。由于C語言語法的邏輯性較強、結構性要求較高,初學者剛接觸的時候容易考慮不全。因此算法教學可以通過實例進行, 從最簡單的例子入手,使學生在解決具體問題的過程中學習C語言的基本邏輯結構和語句。生活中到處都存在著算法。而對于同一個問題可以有不同的解題方法和步驟,可以讓學生根據同一個問題提出不同的算法,并比較這些算法之間的優劣,并讓學生根據分析對算法進行優化。通過對算法的優化練習,可以在無形中提高學生寫算法的水平。
4 改革課堂教學模式,培養學生自學能力
在教學中可以使用下面的一些方法,提高教學效果,培養學生的邏輯思維能力和動手能力。
4.1 改變傳統的教學方式
雖然這個話題是老生常談了,但是現在部分老師還沒有認識到這個問題的重要性,仍然是“教師單向灌輸”的教學模式。教師首先要在教學過程中樹立以學生為主體,老師為主導的教學思想,正確處理傳授知識與培養能力、提高素質之間的關系;其次改變教學模式,償試采用以下教學方式。
4.1.1 任務驅動教學方式
在教學過程中避免照本宣科、枯燥乏味,“任務驅動”是建構主義理論中的一種教學模式,是將所要學習的新知識隱含在一個或幾個任務之中,學生通過對所提的任務進行分析、討論,明確它大體涉及哪些知識,在老師的指導、幫助下找出解決問題的方法,最后通過任務的完成對學生知識的傳授。事實上它并不是簡單的給出任務就了事,重要的是要讓學生學會學習,使他們學會從多方位、多層次、多角度去考慮問題。使學生認識到學有所用、學以致用,自然地產生學習的愿望和動力。
可以先給出一個比較典型的C語言編寫的例子。給學生具體的演示,通過這個效果激發學生的積極性。要求學生在期末的時候編寫出相應的程序。有了這個任務,在講課的時候逐步的告訴學生每一章可以具體的實現例子的那個部分,讓學生逐步的去實現相應的功能。他們實現了相應的效果,就會極大地增強學習的興趣和熱情。這樣可以讓學生在愉悅的過程中學好這門課程。
4.1.2 啟發式教學
為培養學生邏輯思維和創新能力,在教學過程中,教師遵循啟發式教學原則,通過各種教學方式和手段激發學生的學習欲望,積極投入到學習活動中,積極思維,發現問題,提出問題,并逐步解決問題。例如,在講解程序設計舉例時,不是簡單地給出程序清單,而是從分析問題入手,繼而找出解決問題的方法,再給出算法,最后編寫出完整的程序,而在這一全過程,最關鍵的是每一步都采用與學生一起探討的方式,讓學生在啟發下思考,在思考中解決問題,從而掌握獨立分析問題、解決問題的方法。
4.1.3 互動式教學
互動式教學是教師駕馭講臺能力的具體體現。一個教師站在講臺上,要不斷地掃視下面的學生,觀察學生的表情,了解學生的接受程度,并能及時地調整教學的進度和步驟,必要時到達到學生與教師在課堂上互相之間的交流。允許學生在不明白的時候隨時提出問題,教師根據實際情況決定是當場解答,還是課后解答。真正實現課堂上的互動,其教學的效果就會顯著地提高。教師在教學過程中,還應當注意設置疑難問題,引導學生思考和探索,讓他們的思想活躍起來。
4.1.4 項目分析式教學
為培養學生綜合應用知識的能力,通過對完整的項目的系統分析,培養學生良好的編程習慣,善于獲取他人經驗的能力以及掌握綜合運用所學知識的能力,從而真正提高編程水平。
4.2 激勵個性化學習
在微觀課堂上采用項目遞進驅動教學法,改變滿堂灌的做法,將學生的眼手腦全部調動起來。精心設計實例,給學生一個比較實際的切入點,通過老師的演示使學生感覺能夠入手,然后再通過將此實例不斷修改、擴充,引導學生參與到程序的編制過程中,在這個過程中,再將學生所作的程序展示,讓學生來評判優劣,吸收優點,修改錯誤,引導學生進行優化。在這樣的實例教學中,因為有提出問題、解決問題、擴展問題、再解決問題、對解決問題的方法評價、優化設計等幾個環節,實際上是一個螺旋式滾動向前的過程,在這個螺旋式不斷向前的過程中,能夠非常自然地調動學生的參與,而且通過問題的不斷擴展,通過一個問題的多種解決方法,有效開闊學生的思維,使得學生在課堂上真正地成為 “ 主體 ” ,教師扮演 “ 主導 ” 角色。 這種通過一個程序的層層推進,引入課程內容,使得學生的每一步學習都有基礎,是循序漸進,螺旋式上升的過程,使學生的學習是在“走臺階”,而不是“三級跳”,效果很好。
4.3 加強對學生程序設計思維訓練
《C語言程序設計》課程不僅僅是一般意義上的知識傳授,要讓學生掌握程序設計的基本方法,對學生進行邏輯思維能力的培養。在實際的教學過程中,我們發現有些學生平時學得很認真,對語法、語句等細節也很熟悉,但碰到稍微復雜一點的編程則無從下手,教師在教學過程中要樹立正確的教學思想,即注重算法設計,加強學生的程序設計思維訓練,幫助學生順利地實現思維方式的轉變,而不能只單純地講授語言的語法、語義、語用,應該將復雜枯燥的語法知識分解到一個個生動實用的程序實例中,也就是在教學過程中以程序設計為主線,有意識淡化計算機語言本身語句的介紹,而重點介紹程序設計,在分析程序和程序設計中熟悉語法、應用語句,掌握程序設計和解決問題的思路(算法),并把軟件工程學的思想貫穿于算法分析和程序設計的過程中。一定要避免陷入這樣的誤區:教師一味地給學生講解語句的功能和語法規則,使學生陷入冗繁的語法規則之中,形成以語言為中心的思維模式。這樣教出來的學生語法背得滾瓜爛熟,只會生搬硬套,缺乏實際編程能力,所以教師應注重培養學生形成以算法為中心的思維模式。對于從未受過算法設計訓練的初學者來說,可能會感到無從下手,對此,教師應該有意識地加強這種思維方式的訓練,通過講授一些常用算法、典型算法,如記數、累加、連乘、兩數交換、求最大(小)值、迭代、排序、分類等為以后編寫程序、軟件設計奠定基礎,同時典型算法熟練的掌握,也可增加學生學習的信心并提高學習的興趣,同時培養學生的思維能力。
5 強化實踐教學,培養學生動手能力
實行實踐教學形式多樣化,上機操作,老師通常讓照著書本的例子進行驗證,這樣無法增加學生的成就感,使學生覺得很無聊,在《C語言程序設計》上機實驗教學中,除傳統的課堂實驗外,還開展課程設計、典型程序分析與設計等實踐環節,還可以教師組織C程序設計興趣小組,組織C程序設計大賽,組織學生參與科研開發等,將每一階段的學習進行小結性的貫穿與能力提高。將 C 的知識點都溶化到一個個實訓項目的程序編寫中。整個過程以學生獨立完成為主,教師只提供必要的輔導。經過實踐訓練,尤其經過綜合訓練中模擬實際軟件開發的演練,使學生得到了鍛煉,進一步激發了學習興趣,培養了問題求解和編程能力,還有利于培養探索和創新能力。
6 改革考核方式,全面實行考教分離
C語言課程所有考試均實行考教分離,這不僅促進了任課教師對教學的精益求精,而且也給了教師充分發揮、施展個人教學才能的空間。在考核方法上,考慮到高職院校是培養應用性的實用人才的這一特點,該課程除采用傳統的筆試外,大膽采用更能反映學生知識應用能力的上機考試,這一考試形式非常受學生的歡迎??梢圆捎枚喾N形式考核學生,重點考核學生的實踐動手能力。
7 結束語
以上是作者近幾年關于C語言教學經驗的總結,在實際的教學過程中取得了良好的教學效果。筆者認為在教學過程中除了要使學生掌握C語言程序設計這門語言外,最重要的是要讓學生樹立用程序解決現實問題的思路和方法(算法)。學生能否理解算法,并掌握算法,成為教學的關鍵,這是也學習C語言程序設計的重中之重。
參考文獻:
[1] 譚浩強.C程序設計[M].2版.北京:清華出版社,2001.
c程序設計語言范文5
【關鍵詞】C語言程序設計;現狀;對策
前言
在國內的高等院校中,C語言這一課程開設的主要對象時大一的學生,大部分學生在此之前并不了解這門課程,所以跟容易產生厭學的心理,故教師要懂得怎樣正確的引導學生學習這門全新的課程。
一、C語言的特質
C語言是國際通用的一種程序設計語言[1]。同事其也是計算機軟件等設計開發領域的主要程序設計語言的重要部分。它不僅具有高級程序設計語言的主要優點,而且還能夠直接的作用于計算機的基礎軟件,幫助系統做到更加深層次的編程。另一方面,C語言算法中的語言精巧簡潔,更有利于對算法的描述,而且其應用范圍也甚是廣泛。故而在軟件開發的領域和各種對于計算機軟件研究的項目上都要應用到C語言程序設計[2]。所以C語言課程教學一直都是各大高校的必修課程。但是從C語言教學課程在各大高校的開展現狀來看,形式并不容樂觀。在課堂教學環節中存在著諸多不利于課程展開的問題,學生的學習成果也并不明顯,故而要盡快對C語言程序射進的教學情況進行大的變革,才能使得C語言教學情況在各大學校中好轉起來。
二、現階段C語言教學現狀
(一)學生自身普遍難以接受C語言課程
C語言課程作為針對所有入學新生開設的一門計算機公共基礎課程,其地位的重要性可想而知?,F階段該課程并不是僅僅針對計算機專業的學生,而是任何專業的學生都需要去掌握的一門技術。但是學生們由于剛步入大學不久,之前的計算機水平與能力也不完全一樣,故而就使得一部分計算機基礎能力較弱的學生無法更好的理解C語言這門課程。最終喪失了學習C語言課程設計的信心與欲望。仍然有非常多的非計算機專業的學生們對于C語言課程的認識存在偏差,認為自己并不學習計算機專業,所以對于這樣的一門課程也沒有必要做到全面的掌握,對課程教學的認識不足。出現了學習態度不端正的錯誤心態。還有一些學生認為C語言已經跟不上時代的潮流,并認為Web前段才是最潮流的電子科技技術,所以就對C語言課程十分的輕視。
(二)親身上機操作并沒有完全普及
對于計算機這門課程,只注重理論知識的講解是完全不夠的,只有在講解理論知識的基礎上融入上機實際操作過程,才能夠做到深化課程內涵,幫助同學更加高效率的理解和吸收課堂所傳授的知識。C語言課程相對于其他傳統課程具有一定的特殊性,所以就要增強自身的課程參與感。由于很大部分的同學們都是剛剛接觸到這門對他們來說很神秘的課程。所以難免會有各種各樣的問題,但是在實際的教學過程中,幾十位同學面臨的只有一位教師,而教師的精力又是有限的所以就不能更好的照顧到每一位同學,故而使得C語言課程在課堂的開展過程也遇到了很大的難題。課堂教學效率難以得到更好的提升,學習耐心也會漸漸的消磨殆盡。
(三)過度重視理論知識考核而忽略實際操作過程
在現階段的考試中,對于C語言課程的教學成果考核,仍然沿用了傳統的考試模式。既是理論基礎知識的筆試考試。在學習C語言的過程中,理論基礎知識固然重要,但是由于計算機學科的特殊性,使得傳統的考核模式對于該學科來說并不適用。
三、改善新階段C語言教學現狀的對策
(一)提升學生的程序設計理念
在學期伊始,教師一般都會抽出課前的十幾分鐘時間,來向同學們闡述,在社會飛速發展的今天,信息化時代要求每一位同學都能夠掌握計算機編程的基礎知識。所以C語言這門課程的開設是十分必要的,即使你并不是計算機專業的學生,也同樣要學習這門課程來提升自身的計算機學習素養與能力。身為學生要明白學習C語言課程的重要性和緊迫性,然后提升自己自主學習的意識。例如,可以向學生們講明現在是信息化的時代,社會的發展離不開信息技術的普及,身為社會中的一份子,更有責任和義務去了解和學習C語言技能。教師要多向學生們反饋社會現狀和需求,進一步的刺激學生們的學習欲望。
(二)加強對學生實際上機操作能力的養成
實際上機操作與理論教學是在計算機教育中兩大必不可缺的教學模塊。二者的結合教學,可以更好地幫助學生解決在實際學習中遇到的問題。例如,在編程的時候,總是需要用到一些英文的詞匯。如果自己事先做不到對于這些英文詞匯的掌握,就不能熟練地在課上進行有效的編程,從而耽誤了對C語言的學習進程,同時也會逐漸失去了學習相關課程的興趣。在這種情況下,就要在進行實際的上機操作之前,就要耐心的主動學習需要用到的英文單詞,這樣才能起到事半功倍的效果。
(三)考核形式多元化鍛煉心理素質
在以往的教育教學經驗中,學生們都非常的害怕考試。但是考試是檢驗學習成果的有效途徑之一[3]。在傳統的考試模式之中,由于學校都過度重視對于理論知識的考核,使得考核還處在筆試的初級階段,而對于重要的編程能力的考核體現不足。故而,也對于考試的內容難以接受,進而產生了恐懼考試的心理,所以就要通過更加多遠化的計算機學習能力的考核模式,來鍛煉自身的應試心理素質。做到無論是面對筆試,還是面對實際的上機操作都不怯場。進而要全面的核查自身對于C語言編程這門計算機科目的掌握程度。例如,自己可以平時多去幾次機房,在機房中做一些關于C語言考試的練習題目。這樣一來當自己再次面對考試的時候,就有了充足的知識儲備,在考試的時候也就不會緊張了。不僅能夠做到提升自身的學習成績,也幫助任課教學的計算機教師節省了教學精力。與此同時,學生自身也要注重每節課程的當堂檢驗。在每節計算機課程下課的前五分鐘,一般情況下教師都會通過提問的方式來對學生知識點的掌握情況做一個統計。針對大多數學生出現的普遍性問題,在下節課的課前進行統一的講解。學生要充分的抓住這個機會,來對自己的信息技術知識的掌握情況,作到一個充分的了解,如果你自己的問題僅僅只是個體問題,可以在課間的時候請求教師對你進行一對一輔導,或者在班級中組建一個程序設計興趣小組,及時向興趣小組的人員進行咨詢,如果興趣小組也解決不了的問題,可以先將它記錄下來,之后反饋給教師再做統一的解答。
四、結論
當前信息技術水平在逐步提升,學生掌握信息技術的能力也成為了當前社會衡量人才的主要標準。所以作為一名合格的現代大學生,要從提升自身的信息技術水平入手,進而逐步完善自己的各項綜合能力。
參考文獻
[1]王福偉.C語言程序設計教學中的問題分析與探索[J].科技資訊,2016(27):78-79.
[2]張麗君.任務驅動型案例教學模式在“C語言程序設計”課程教學中的應用研究[J].中國管理信息化,2016(20):218-219.
c程序設計語言范文6
關鍵詞:C語言程序設計;教學改革;創新教育;自主創新;現代教學
中圖分類號:G642文獻標識碼:A文章編號:1009-3044(2012)26-6310-03
The C Language Program Design Teaching Strategies and Effect
WANG Xiao-xia
Abstract: Using the full text discusses the idea of the innovation education C program design science research and practice teach? ing reform. First of all this teaching reform theoretical basis and purpose. Analysis C language program design characteristics. Based on this the independent innovation of teaching reform mode.
Key words: C program design; education reform; innovation education; independent innovation; the modern teaching
隨著科學技術和社會的發展和進步,教育作為社會文化的重要載體,人們對高質量的現代教育需求尤為突出。我國的傳統的教育模式是已經遠不能滿足當前受教育者的需求,特別是《國家中長期教育改革和發展規劃綱要》中提出了“創新人才培養模式。適應國家和社會發展需要,遵循教育規律和人才成長規律。深化教育教學改革,創新教育教學方法,探索多種培養方式。注重學思結合。倡導啟發式、探究式、討論式、參與式教學,幫助學生學會學習,激發學生的好奇心,培養學生的興趣愛好,營造獨立思考、自由探索、勇于創新的良好環境,適應經濟社會發展和科技進步的要求,推進課程改革。充分發揮現代信息技術作用,促進優質教學資源共享。把改革創新作為教育發展的強大動力。教育要發展,根本靠改革。把提高質量作為教育改革發展的核心任務?!?/p>
《C語言程序設計》課程是計算機專業中重要的專業基礎課,它是計算機專業和相關專業的必修課,是廣泛應用的高級程序設計語言之一。它具有功能齊全強大、結構性能強、內容抽象,概念很復雜、規則比較多,易于出錯,具有豐富的數據類型等?!禖語言程序設計》的重要特點給教學帶來極大難度。
依據《教育規劃綱要》和教學現狀突出問題,在《C語言程序設計》課程教學中進行深化改革更具有重要性和必要性。教學改革的關鍵是自主創新。自主創新是相對于技術引進、模仿而言的一種創造活動,是指通過擁有自主知識產權的獨特的核心技術以及在此基礎上實現新產品的價值的過程。因此,《C語言程序設計》課程教學應著重于創新教學方法,不斷提高自主創新能力,提升教學品質,創新人才培養模式,構建自主創新的現代教學模式。
1現代教學觀
教學是培養學生的創造性活動。現代教學不僅是傳授知識,更重要的是全面提高學生素質,發展學生的智力和潛能。這就要求創新教學方法體系。深化教學改革的目標是全面育人。因此,教學中應具有教育性、創造性、科學性和實踐性,應是教師主導作用與學生主體作用相結合的過程,應是從“以教師為中心”轉向“以學生為中心”和“做中教,做中學”的過程,教學應培養學生自主學習和促進學生的全面發展。
2現代教學手段
科學技術的進步和發展使陳舊的教學行為與現代社會要求不相適應的?,F代教學手段就是將現代的先進科學技術引用到教學活動中,運用多媒體技術進行教學授課、演示操作、測試、制作教學課件和電子教案等。將各種教學手段有機融合在教學活動中,使教學科學化、規范化和現代化,并提高“質重于量”的教學效率,現代教學手段是現代科學技術在教學中的重要應用,是教學技術的重要進步。
3現代教學法
3.1以突破“函數、數組、指針”作為教學切入點
C程序是由函數組成的,函數是C程序中的重要概念和核心部分,也是程序設計中的重要手段,使用函數可以提高程序設計的效率。數組是C語言提供的一種常用的結構型數據類型。指針是C語言具有代表性特征的功能之一,使用指針可以編制出簡潔明快、功能強的程序,指針的概念比較復雜,使用也很靈活。數組和指針在《C語言程序設計》中具有極其重要的作用,是《C語言》程序中重要核心內容,是學習C語言的難點和重點之一,學生很難于理解。因此,突出重點講解和強化突破“函數、數組與指針”概念的理解和運用是學生深刻理解和熟練掌握《C語言程序設計》的關鍵,起到化解難點的作用,使學生學習《C語言》獲得事半功倍和非常輕松的效果。
3.2組合式教學法
組合式教學法就是將啟發式、探究式、討論式、參與式、實例式、課題式和實驗式教學法有機結合并貫穿于全部課程教學中。
3.2.1啟發式教學
教學中引用相關的知識和實例并運用多媒體技術現代教學手段等進行演示講析。
3.2.2探究式教學
教學中提出課題進行探索研究。
3.2.3討論式教學
教學中針對學習課題師生之間進行研究分析和解決。
3.2.4參與式教學
教學中引導學生進行解析學習課題。
3.2.5實驗式教學
教學中引入實驗、課程設計等,對教學課題進行實際操作。
教學中針對教學課題內容適時運用組合式教學法,其重要特點是教學方法靈活、有的放矢,培養學生自主學習和學會學習,培養學生的動手能力和實踐能力,提高學生的分析問題和解決問題能力,做中教和做中學相結合,理論教學和實踐教學有機結合,課堂教學與學生自主學習相結合,調動學生學習的積極性和主動性,增強學生的學習興趣,突破C程序的教學難度,以多媒體技術為主,圖文動態演示,增強學生對C程序設計的感性認識,多種教法有機融合、優勢互補。有效的體現了師生互動、啟發引導、因材施教、精講多練和理論與實踐相結合的教學方式和教學過程。
3.3實例教學法
實例教學法是選擇適合課題的并具有典型性、規律性、代表性和示范性的范例融入到教學中。面向學生,針對學生的好奇心理,利用典型實際案例講析,舉一反三,深入淺出。
實例教學法非常適合《C語言程序設計》課程教學,特別是程序設計核心部分更為明顯。C語言是一種結構化的程序設計語言,它的基本結構是順序結構、選擇結構和循環結構。其中,循環結構是程序基本結構中很重要的核心部分并具有很大的難度,它是C語言程序中的重要內容。教學中重點突破理解循環結構功能和正確靈活運用循環結構進行程序設計是進行高效編寫高質量程序教學的重要關鍵性教學技術。針對此問題引用實例教學法是最佳有效的實現方法。
實例教學法實施過程:
1)講析循環語句格式和功能。
格式和功能;演示課件。
2)引例計算1+2+3+…+100
分別用while語句、d0一while語句、for語句編寫程序。
程序:演示課件
在C環境下運行程序,演示運行結果,學生察看運行結果。
3)導析畫出流程圖,講析語句的執行過程。
演示課件
4)引導學生依據流程圖分析語句的特點和各語句間的不同點
5)導題:如果i初值設為l0l,以上例子運行結果是多少?
在C環境下運行程序,演示運行結果,學生看到運行結果,印象深刻。
6)總結:
①3種循環可以互相代替。
②在while和do—while循環中,循環體應包含使循環趨于結束的語句。
③其它
7)導題:選擇合適的循環語句:
①輸出100~200內能被3整除的數。(使用for語句合適)
②輸出用“$”號組成的圖形,如每行有10個號組成的長方形、等腰三角形狀。(使用for語句合適)
③輸出九九乘法表。(使用for語句合適)
通過運用實例教學法,增強學生的學習積極性和興趣,強化學生主動學習,深刻理解知識點,提高學生分析問題和解決問題的能力,有效突破教學難點,為學生學習其它程序設計打下堅實的基礎。
3.4課題教學法
課題教學法就是將具有多功能和典型范例的研究課題引入到教學實踐活動中。其特點是將學生自主學習融入到教學中,教師對學生學習進行引導和指導,從“教學生學”到“教學生學會學”轉變,貫穿“做中教和做中學”,著重實踐性,使學生深刻理解和掌握《C語言程序設計》功能和特點,突破學習《C語言程序設計》難度,提高學生的程序設計能力和操作技能,培養學生探索創新的能力,以適應現代社會需求。
通過《C語言程序設計》教學改革探究實踐,獲得更高的教學質量。教學改革是新世紀現代社會發展的需要,現代教學模式是切實可行的。自主創新是現代教學實效性的關鍵,基于自主創新的現代教學方法是創造性的教學實踐。教學實踐展現了教學改革的重要意義并凸顯較好的教學效果。面向未來,教學要以科學發展觀的教育思想向高新科學技術不斷挑戰并伴隨可持續性教育發展不斷創新。
參考文獻:
[1]林東,陳琳.編程語言基礎——C語言[M]. 2版.北京:高等教育出版社,2006.