在线观看av毛片亚洲_伊人久久大香线蕉成人综合网_一级片黄色视频播放_日韩免费86av网址_亚洲av理论在线电影网_一区二区国产免费高清在线观看视频_亚洲国产精品久久99人人更爽_精品少妇人妻久久免费

首頁 > 文章中心 > c程序設計語言

c程序設計語言

前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇c程序設計語言范文,相信會為您的寫作帶來幫助,發(fā)現(xiàn)更多的寫作思路和靈感。

c程序設計語言范文第1篇

關鍵詞: 《C程序設計語言》 誤區(qū) 感悟

《C程序設計語言》課程是電子信息工程專業(yè)開設的第一門程序設計類課程。該課程在本專業(yè)的課程體系中處于承上啟下的地位,對于學習后續(xù)高級編程語言具有很好的導引作用。筆者經過一個學期的系統(tǒng)學習后感覺受益匪淺,不僅學到了基礎的編程語言知識,更重要是的掌握了邏輯性較強的編程思想。為了讓更多學生很好地學習這門課程,筆者借此文總結出《C程序設計語言》課程學習時常見的誤區(qū),并給出解決上述誤區(qū)的方法和途徑,供廣大同仁借鑒。

一、學習《C程序設計語言》課程時常見的誤區(qū)

1.只注重寫程序,而忽視讀程序。

很多學生在剛學習這門課程時就希望自己能夠獨立編寫出一些程序,但實際情況大相徑庭,此時挫敗感油然而生,甚至一些學生因為這種挫敗感產生對這門課程的厭學情緒。其實就筆者的學習經歷而言認為剛開始學習時,不要急于自己編程,因為此時你還沒掌握好基礎知識,不可能獨立完成程序的編寫,認真研讀別人的優(yōu)秀程序才是學習該課程入門最快,也是最好的方法,在讀別人程序的過程中慢慢領悟別人的編程方法和思想。

2.沒能將理論學習和上機實踐進行有效銜接。

《C程序設計語言》課程的教學分為理論講授和上機實踐兩個環(huán)節(jié),因為學校主客觀原因的限制二者之間存在一定的時間間隔,但二者在內容上又是相互連貫的。時間上的不連貫和內容上的連貫性會使得一些學習不主動的學生不能將理論課上老師所講的知識和技能在上機實踐中得到有效的驗證和消化。因此,一些學生在上機實驗時面對老師布置的作業(yè)會覺得無從下手,學習興趣就會大大降低。而C課程的知識是承前啟后的,前一部分知識沒有掌握好,后面章節(jié)內容的學習也會大受影響,這樣就進入了一個惡性循環(huán)。最大的問題是這部分學生不僅自身學不好內容,而且會影響其他學生,這樣班級的整體學習效果就會大打折扣。

3.缺乏一定的邏輯思維能力。

很多學生錯誤地認為C程序設計語言就是變量、控制結構、函數(shù)、過程、數(shù)組的簡單結合,認為只要掌握這些就可以編寫出良好的程序了。其實不然,真正優(yōu)良的程序是需要靠自己的邏輯思維對變量、控制結構、函數(shù)、過程、數(shù)組這些要素進行創(chuàng)造性的整合。所以C程序設計語言是一門鍛煉學生邏輯思維能力的課程。當你具有抽象邏輯思維能力和弄清楚了變量、控制結構、函數(shù)、過程、數(shù)組相關知識后,編寫C程序就是易事。

二、走出上述誤區(qū)的方法

1.端正學習態(tài)度,充分認識到本門課程的重要性,并保持良好的學習心態(tài)和學習習慣。

《C程序設計語言》是很多高校學生接觸的第一門編程語言,該課程對于培養(yǎng)學生較強的邏輯思維能力具有非常重要的導引作用,而邏輯思維對于處于信息社會的大學生而言是必不可少的,但是邏輯思維能力的培養(yǎng)又不是一朝一夕的,需要持之以恒地努力。對于學生而言,只有從內心認識到這一點才可以使自身在遇到學習困難時迎難而上。對于一些偏文專業(yè)的學生而言,在學習初期肯定會覺得一些概念晦澀難懂,與自己的思維方式存在差異,此時千萬不能有畏難情緒,一定要相信自己,在自身努力、同學幫助和教師引導的三方努力下共同渡過難關,而自身的認真努力是首要的。課前一定要認真預習,對自己通過預習不能理解和解決的知識點和概念進行標記,上課時當老師講授到這部分內容時要認真聽講,如果通過教師的講解依然不能理解,千萬不能就此擱置,一定要及時向老師和同學請教。C程序設計的入門學習并不難,卻是一個十分重要的過程,因為程序設計思想就是在這時形成的,良好的程序設計習慣也在這個階段養(yǎng)成的。

2.學習時要注重理解一些重要的概念,勤于動手編寫程序,并借鑒別人編寫的好程序。

C程序設計課程就其本質而言并不是很復雜,其核心無非就是變量、函數(shù)、過程、數(shù)組、控制結構(順序結構、選擇結構、循環(huán)結構)、文件和數(shù)據(jù)庫等概念和相關操作。但這些概念雖然一些同學在數(shù)學課程中聽說過,感覺似曾相識,但此概念非彼概念,二者還是有所不同,要真正理解這些概念就必須多動手、多思考。程序設計是高強度的腦力勞動,不是聽會的,也不是看會的,而是練會的。因此在學習過程中要勤于自己獨立編寫一些小程序,在編寫過程中肯定會犯一些錯誤,在錯誤的解決過程中可以提升自己的編程能力,在能力提升的同時增強自身對該課程的學習興趣。對于初學者而言,一方面要自己獨立編程,但由于自身編程知識儲備不充分,也要借鑒別人優(yōu)秀的解題思路與方法,探究別人的思維過程,增強自己的思維能力,然后結合自身實際嘗試實現(xiàn)或者說模仿著實現(xiàn)。

3.在學習過程中要避免孤軍奮戰(zhàn)、單打獨斗,注重團隊協(xié)作和互助。

筆者所在學校C程序設計課程的教學遵循先理論講授后上機實驗的步驟。一個教學班的學生人數(shù)在30至40人,實驗課和理論課都只有一個教師。理論課和實驗課之間的時間差會使一部分基礎較薄弱的學生在實驗課上會碰到各式各樣的問題,而基礎較好的學生在實驗課上會很自如地完成老師布置的實驗任務,因為只有一個老師進行輔導,如果那些基礎不是很好的學生在學習過程中遇到問題后請教老師,老師此時可能正在輔導另外一個學生,在這種情況下就可以選擇向身邊基礎較好的同學請教,這樣既可節(jié)省時間又可加深同學之間的交流協(xié)作。經過半個學習基礎知識的學習,老師會布置一些綜合編程題讓學生融會貫通并有效應用以前所學知識,筆者認為此時同學之間可以以團隊形式進行答題,這樣可以達到取長補短的效果。

參考文獻:

[1]馬麗潔.高職計算機和軟件專業(yè)語言類課程改革探析――以C程序設計語言為例[J].電子商務,2015(07).

c程序設計語言范文第2篇

C++語言是在C語言基礎上發(fā)展而來的一門面向對象的高級語言。教無定法,教學有法。對于計算機專業(yè)大學生的C++程序設計語言教學方法,必須結合當前大學生基礎和實際情況,進行教學方法改革和教學模式創(chuàng)新,提高教學質量和效果,使得計算機專業(yè)大學生不但能夠掌握面向對象的理論知識,而且具有一定的可視化編程與調試能力,實現(xiàn)理論與實踐相結合,達到工程應用型的實用人才水平。如何在有限的學時內使得大學生能夠找到科學的創(chuàng)新學習方法[4],盡快掌握C++語言基本理論和具備編程能力,是每位任課教師都需要面臨的難題。

二、教學模式創(chuàng)新

為了培養(yǎng)面向工程應用的C++程序設計人才,在知識、能力、應用、創(chuàng)新等各方面全面培養(yǎng)大學生,本文提出“雙主互動為綱、兩個創(chuàng)新、兩個學習、兩個支持、四個課堂”的教學模式,使得學生能夠達到掌握理論知識和具備編程能力的工程應用水平。教學模式創(chuàng)新的基本框架如圖1所示。

本課題組的教學模式采用雙主互動教學為綱,即基于師生互動的教師主導學習和學生自主學習。兩個創(chuàng)新是指對教學內容和教學方法分別進行創(chuàng)新。教學內容創(chuàng)新是指教師對教學內容進行梳理分解,突出重點,并及時將新內容、新科研成果、新概念、新技術等內容補充進來,改善課程知識結構,以適應社會對計算機編程人才的需求。教學方法創(chuàng)新是指采用互動式、全方位的教學方法,進行理論與實踐相結合、教學與科研相結合、課內與課外相結合。兩個學習是指將學生分成多個小組進行討論學習、對C++的開發(fā)環(huán)境進行學習,使得學生面向學以致用的培養(yǎng)環(huán)境。兩個支持是指教師要采用各種手段和方法對學生的學習進行指導支持,包括面授支持、電話支持、e-mail和QQ等網絡支持。四個課堂是指理論教學課堂、上機實踐課堂、課程設計課堂和其它課余時間的課堂。

三、采用自然語言啟發(fā)式教學方法,提高學生理解能力

C++語言是一門計算機程序設計語言。C++語言教材從前到后系統(tǒng)性特別強,前后章節(jié)之間環(huán)環(huán)相扣,聯(lián)系緊密。由于面向對象的很多新的概念比較抽象,如果教師在教學中僅僅把教材上的語法知識照本宣科地講給學生聽,會導致下面大部分學生聽不懂,學生會很容易感到枯燥乏味和厭倦疲勞,從而產生排斥和厭學情緒。這種抵抗情緒一旦從開始就產生,則將影響后續(xù)整個學期的教學效果。由于從頭到尾都聽不懂,老師在課堂上提出的問題學生也無法進行互動,這種灌輸式的教學方法效果非常差。而教師要根據(jù)課堂實際情況,采用互動式教學方法,培養(yǎng)學生的主動學習能力,才能得到良好的教學效果。

1.第一次課程教學中,明確C++語言課程的重要性

目前C++語言是大多數(shù)電子、信息、計算機相關專業(yè)的非常重要的程序設計課程,也是這些大學生后續(xù)專業(yè)課學習、畢業(yè)設計、以后上研究生或參加工作進行計算機軟件和IT開發(fā)的主要編程語言,廣泛應用于軟件設計和開發(fā)中。要讓大學生有危機意識,在大學生就業(yè)如此嚴峻的情況下,學好C++語言,能夠提高大學生以后在就業(yè)競爭中的籌碼。

2.講課過程中,對C++語言中的很多概念,結合自然語言進行講解

C++語言作為一門計算機語言,它和人類的自然語言相比,既有區(qū)別,又有聯(lián)系。在講解一些關鍵概念時,采用一些淺顯的自然語言的例子,提高學生的理解能力。本文作者在講述一些關鍵概念時,將這些概念和自然語言結合進行循序漸進啟發(fā)式講解,激發(fā)學生的學習興趣,起到了非常好的效果。下面舉幾個例子。

(1)引用是C++語言中第一個新的概念。引用類似于自然語言中的別名或者綽號,是正名的別名,沒有正名就沒有別名。例如唐太宗就是李世民的引用。李世民是正名,唐太宗是別名。正名和別名屬于一個變量,共用同一片內存空間。引用主要用作函數(shù)的參數(shù)傳遞,形實結合后不會產生臨時的變量,節(jié)省了內存空間

(2)類和對象是C++語言區(qū)別于C語言中普通數(shù)據(jù)類型和變量的概念。類是具有相同屬性和行為的一組對象的集合,它為屬于這個類的所有對象提供了統(tǒng)一的抽象描述,其內部包括屬性和行為兩個主要部分。類和對象的關系就像模具和鑄件的關系一樣,類就相當于模具,對象就相當于鑄件。一個模具可以生產出成千上萬個鑄件。

(3)友元是C++語言中另一個新的概念。在數(shù)據(jù)共享與保護中,友元類似于自然語言中的朋友,但是友元和自然語言中的朋友既有聯(lián)系又有區(qū)別。人類的朋友關系通常是雙向的、可以傳遞的,但是C++中的友元關系是單向的、不能傳遞的。

3.引導學生合理安排課程的學習時間,培養(yǎng)學生的學習興趣

教師可以把學生分成若干個小組并布置一些編程作業(yè),培養(yǎng)他們的團隊協(xié)作意識,并共享小組編程成果,使得他們對自己編制的程序能夠運行和產生正確的結果具有自豪感,提高學生的學習興趣。由每一個小組各自給全班同學講授和演示自己的算法、編程思路、運行結果,既能夠鍛煉學生的編程與演講能力,又能夠在課堂中產生良好的互動。

4.講課過程中盡量做到幽默風趣,靈活運用教學手段

教師在上課時,要做到風趣幽默、聲音洪亮、帶人真誠、平易近人、知識淵博、通俗易懂,才能產生良好的教學效果。教師要靈活運用多種教學手段,盡量采用多媒體教學,在PPT幻燈片中多做一些動畫效果,或者以Flas演示程序的動態(tài)運行過程。教師在C++語言教學過程中要根據(jù)課堂中學生的反應,隨機應變,結合我國傳統(tǒng)文化與最新國內外時事,讓學生潛移默化地學習一些難以理解的語法,則能達到事半功倍的效果。

四、對一些難以區(qū)分的概念采用表格形式進行對比和總結

C++語言是在C語言基礎上發(fā)展起來的面向對象的高級語言,全面兼容C,但是又增加了很多新的較為復雜的語法知識點。對于一些學生難以理解和掌握的語法知識點,如果教師不幫助學生及時進行總結和舉一反三,按照大學生初學的水平很難真正達到掌握和編程應用的水平。因此,教師可以在講完某些知識點后采用表格的形式進行對比和總結。例如,C++中引用和指針的區(qū)別總結表,普通指針、指向常量的指針和常指針三種指針所指向的內容和指針本身能否改變對比總結表,對基類中具有不同訪問屬性的成員經過不同方式繼承后在派生類中的訪問權限的比較和總結表,運算符重載時重載為類的成員函數(shù)和友元函數(shù)、前置、后置自增、自減運算符參數(shù)個數(shù)總結表。

五、熟悉Visual C++編程環(huán)境,具備圖形界面編程能力

目前,Visual C++ 6.0是比較經典的開發(fā)環(huán)境。即使掌握了C++基礎知識,仍然難以高效掌握使用Visual C++的編譯器。為了培養(yǎng)實用型軟件開發(fā)人才,教師還應該進行Visual C++編譯器的入門教學,培養(yǎng)學生掌握如下知識:

1.能夠使用Visual C++開發(fā)環(huán)境進行界面設計;

2.能夠創(chuàng)建簡單的基于MFC的應用程序;

3.能夠使用類、函數(shù)和消息映射機制;

4.能夠利用開發(fā)環(huán)境有效創(chuàng)建對話框、按鈕和菜單等資源。

當然,對于Visual C++的學習,一本好的教材也至關重要,現(xiàn)在的書店和圖書館各種Visual C++的學習教材五花八門,不泛互相抄襲、錯誤百出、誤人子弟的教材。如何從這些書籍的海洋中找到合適的入門教材,對于作為初學者的大學生來說有點難為他們。本文作者也買過不少Visual C++學習的書籍,其中不少書就沒有任何學習價值,既浪費錢,又浪費時間。作為教師,有責任和義務為學生挑選一本優(yōu)秀的、很容易入門的教材。本文作者和周圍很多從事Visual C++語言開發(fā)的朋友們都認為Jon Bates主編的《實用Visual C++ 6.0教程》是一本非常不錯的教材。本人在每個學期給學生教學時,都會將這本教材的電子版發(fā)給同學們,而且從他們的反饋來說,效果確實不錯。

六、理論與實踐相結合,提高程序編程與調試能力

理論必須與實踐相結合,才能得到驗證,否則只是紙上談兵。作為一門計算機語言,C++程序設計的實踐性操作特點決定了上機實踐是課程學習中的重要環(huán)節(jié)。授之以魚,不如授之以漁。幫助學生編程序或調試程序,不如教會學生編程序或調試程序。因此,在教學中,教師可以從如下幾個方面進行考慮:

1.上課時教師提前給同學們將上機編譯器環(huán)境、各種單步調試、斷點調試的方法傳授給學生,并布置好上機操作的題目,這樣學生在上機前就會有充分的準備,做到有的放矢。

2.針對性地給學生布置一些具有趣味性的程序設計題目,讓學生通過查資料、上網和請教老師等多種方式編程調試,培養(yǎng)學生解決問題的能力,讓學生感到有成就感,提高學生的學習興趣。

3.對學生的上機存在的問題進行總結,對于一些普遍存在的問題要在課堂上統(tǒng)一進行講解。并且也要對對自己的教學方法和教學模式進行實時總結和改進,形成閉環(huán)。

按照本文作者研究的教學方法,經過一個學期的理論教學與上機實踐學習,在學期期末考試前的一個月對2010級計算機科學與技術專業(yè)1班全班52個學生劃分為13個小組布置了課程設計項目。每4人一個小組,由每個小組自己推選出1個組長、1個副組長和組員。組長負責課程設計項目的總體實施和分工,副組長協(xié)助,組員配合。課程設計的考核是每個小組交一份打印課程設計報告,包括項目題目、小組成員、程序設計結構、流程圖、源程序、實驗運行結果。每個小組推舉一名學生在講臺上進行10分鐘的PPT演講,老師和學生進行5分鐘左右的提問??己顺煽兪怯衫蠋煾鶕?jù)課程設計報告、演講PPT內容、回答問題效果等項目進行打分。經過一個學期的C++理論學習和一個月的課程設計,全部小組都按時遞交了課程設計報告和進行了匯報演講,其中不少學生講的非常精彩,這對于他們也是一種不可多得的實戰(zhàn)鍛煉。學生普遍反映通過理論與實踐結合的學習開闊了視野,提高了工程應用能力,培養(yǎng)了團隊協(xié)作能力,增強了學習信心,達到了前所未有的良好效果。

七、結論

本文作者根據(jù)多年來的教學體會,提出將滿堂灌式的教學方法轉變?yōu)橐詫W生為主體、以活躍式課堂為形式、以課程實際相結合的多模式創(chuàng)新教學方法,真正實現(xiàn)教師為主導、學生為主體的互動式高效教學創(chuàng)新模式。

參考文獻:

[1]鄭莉. C++語言程序設計[M].北京:清華大學出版社,2010.

[2]錢能. C++程序設計教程[M].北京:清華大學出版社,2009.

[3]譚浩強. C++面向對象程序設計[M].北京:清華大學出版社,2006.

[4]王衛(wèi)軍.教師信息化教學能力發(fā)展策略研究述[J].電化教育研究,2012, 229(5):103-109.

c程序設計語言范文第3篇

[關鍵詞]C語言程序設計 探究教學 實施目標

中圖分類號:TP312.1-4 文獻標識碼:A 文章編號:1009-914X(2014)17-0126-01

一、 C語言程序設計探究教學實施的目標:情感目標、能力目標和認知目標

1、體驗C語言程序設計的編程思想,激發(fā)和保持對C語言程序設計課程的求知欲,形成積極主動地學習和參與C語言程序設計課程探究活動的態(tài)度。

2、能辯證地認識C語言程序設計對社會發(fā)展、科技進步和日常生活學習的影響。

3、獲得親自參與研究探索的積極體驗、培養(yǎng)嚴謹?shù)目茖W態(tài)度。

4、能從日常生活、學習中發(fā)現(xiàn)或歸納可以利用C語言程序設計解決的問題,通過問題分析確定程序功能。

5、能根據(jù)任務的要求,確定所需信息的類型和來源,并鑒別信息的真實性、準確性和相關性。

6、掌握計算機程序的基本概念,理解并掌握C語言程序設計語言的基本知識,包括語句、數(shù)據(jù)類型、變量、常量、表達式、函數(shù)等,熟悉語言的語法規(guī)則,熟悉計算機程序執(zhí)行的基本過程。

7、了解C語言程序設計語言,掌握編寫程序、編譯程序、連接程序以及程序開發(fā)環(huán)境等基本知識,掌握調試、運行程序的基本方法與技巧。

二、C語言程序設計探究教學實施的條件

1、掌握一定的計算機操作基礎

C語言程序設計課程由于其學科自身的特點,需要在計算機上調試程序,所以要求學生具有一定的計算機操作知識,如:開關機、鍵盤和鼠標的使用、文件的建立與查找、常用軟件的使用等。

2、良好的C語言程序設計認知結構

認知結構就是學生頭腦里的知識結構,是學習者觀念的全部內容和組織。奧蘇伯爾的認知結構理論是針對新學習內容的影響(即遷移)提出的,良好的認知結構有利于知識的提取和正向遷移。C語言程序設計探究教學強調在已有知識經驗上的主動建構,面對新的問題和任務,需要學生及時從頭腦中提取信息,建立新舊知識間的聯(lián)系,在已有C語言程序設計知識的基礎上思考解決新問題的辦法,并試圖將新知識納入自己的認知結構中。

3、良好的探究環(huán)境

良好的探究環(huán)境是學生順利進行探究的保證,至少包含兩方面的內容:(1)要有充足的探究時間和靈活的探究條件。探究時間應該根據(jù)學習任務進行合理安排,應該考慮到學生假設錯誤時所耽誤的時間以及討論交流所需要的時間。探究教學中可能需要查閱大量的資料,教師還應該準備書籍、網絡等輔助資源。(2)學生在探究學習的時候不能有太多壓力,不同的學生由于其自身的因素不可能以相同的速度學習,所以教師在進行評價的時候也應該因人而異,應該為每個學生提供充分的思考機會和時間,讓每個學生都能以自己的進度進行探索,并在此過程中感受到樂趣。

三、C語言程序設計探究教學情境的創(chuàng)設

心理學研究表明,恰當、適宜的環(huán)境能有效激發(fā)人的熱烈情緒,提高活動的質量和效果。教學情境是指教師人為創(chuàng)造的“典型場景”,創(chuàng)設目的在于引出教學任務,將學生的注意力吸引到學習任務中來。教師把將要學習的C語言程序設計知識通過一定的情境呈現(xiàn)給學生,使得學生認知結構與周圍環(huán)境不平衡,引起他們對學習目標的注意和興趣,并通過探究活動把學生過去的活動和將來的活動聯(lián)系在心理學研究表明,恰當、適宜的環(huán)境能有效激發(fā)人的熱烈情緒,提高活動的質量和效果。教學情境是指教師人為創(chuàng)造的“典型場景”,創(chuàng)設目的在于引出教學任務,將學生的注意力吸引到學習任務中來。教師把將要學習的C語言程序設計知識通過一定的情境呈現(xiàn)給學生,使得學生認知結構與周圍環(huán)境不平衡,引起他們對學習目標的注意和興趣,并通過探究活動把學生過去的活動和將來的活動聯(lián)系在一體。探究教學情境的創(chuàng)設應做到:(1)創(chuàng)設的情境是為C語言程序設計教學服務的,要以C語言程序設計探究教學目標為依據(jù)。(2)探究情境要接近學生的真實生活經驗,能夠吸引學生的注意力,激發(fā)他們的認知沖突和求知欲。(3)學生在情境中能夠感覺到問題的存在,自然地將新舊知識聯(lián)系起來。(4)情境中必須包含學生未知的新內容,而且是能夠通過探究掌握的。

四、C語言程序設計課程中的探究形式

C語言程序設計課程中開展探究教學主要有4種形式:探究性提問、探究性討論、探究性演示和探究性實驗。這4種形式是相輔相承的,而不是孤立存在的,在C語言程序設計探究教學中,需要用到多種形式來構成一個完整的探究教學過程。C語言程序設計探究教學通常都是由探究性提問開始,然后進行探究性討論、探究性演示或探究性實驗;也可能從探究性演示或探究性實驗開始,在演示或實驗的過程中發(fā)現(xiàn)問題,再進行探究性討論。在實際教學過程中,要根據(jù)學習內容和課堂情況靈活地選用這些形式。

五、C語言程序設計探究教學評價

教學評價指依據(jù)一定的標準,通過各種策略和相關資料的收集,對教學活動及其效果進行客觀衡量和科學判定的系統(tǒng)過程。C語言程序設計探究教學評價是對C語言程序設計探究教學過程及其影響的測量、分析和評定,評價中我們更關注學生學習和成長的過程,尋找適合學生發(fā)展的學習方式,滿足學生知識和能力發(fā)展的需要。評價對探究教學的積極作用是很明顯的,但是如果評價指標制定不合理,或者評價方法的選用、評價結果的表述不當,不僅不能達到預期效果,還會對學生的C語言程序設計學習產生消極影響。

參考文獻

[1] 《基礎教育課程改革綱要(試行)》教育部文件,教基[2001]17號.

[2] 保羅 朗格朗.終身教育引論瞰[M].北京:中國對外翻譯出版公司,1985,p15~31.

[3] 聯(lián)合國教科文組織.學會生存――教育世界的今天和明天[M].上海:上海譯文出.

版社,1979,p2.

[4] 張大均。教育心理學[M].北京:人民教育出版社,2005,p68--71.

[5] 靳玉樂.探究教學論[M].重慶:西南師范大學出版社,200l.

c程序設計語言范文第4篇

關鍵詞:C語言;程序設計;教學改革;能力培養(yǎng);計算機輔助評測

中圖分類號:G642 文獻標識碼:B

1背景

隨著計算機技術的迅速發(fā)展和日益普及,越來越多的高校畢業(yè)生涌入計算機技術及應用產業(yè),特別是軟件產業(yè)。這些人中不僅有計算機專業(yè)的畢業(yè)生,也有些非計算機專業(yè)的畢業(yè)生。在與這些非計算機專業(yè)學生的競爭中,計算機專業(yè)的學生并未表現(xiàn)出明顯的專業(yè)優(yōu)勢。造成這一現(xiàn)象的一個重要原因就是,計算機專業(yè)學生所掌握的基礎專業(yè)知識和能力,缺乏專業(yè)性的深度和廣度,計算機專業(yè)學生所學的一些專業(yè)課程和專業(yè)基礎課程沒有為學生提供足夠的專業(yè)知識和訓練。課程改革前的C語言課程就是這樣一門在專業(yè)性方面有待加強的專業(yè)基礎課程。

程序設計是計算機專業(yè)學生的基礎課程,程序設計能力是計算機專業(yè)人員的重要專業(yè)基礎能力,C語言是目前計算機專業(yè)工作者的第一語言。隨著計算機技術和知識的普及,越來越多的非計算機專業(yè)學生也在這一層次和深度上掌握了C語言知識和運用能力。與此同時,計算機專業(yè)在C語言的教學方面依然采用原來的教學內容和教學方法,在程序設計知識的深度和廣度以及C語言的運用方面沒有大的進展,導致計算機專業(yè)學生與非計算機專業(yè)學生之間在這方面的專業(yè)能力差距逐漸縮小甚至消失。計算機專業(yè)學生所完成的程序在程序結構、程序的可靠性、可維護性、可擴展性、程序的時空效率、以及程序的風格和可讀性等方面與非計算機專業(yè)學生的程序差別不大。

造成上述這種情況的原因,從教學方面看主要有三點:一是目前“C語言程序設計”課程的教學內容偏窄偏淺;二是教學方法不適當;三是實驗考核手段落后。從學生學習的角度看,也存在對學習內容和方法不適應的問題。大多數(shù)的學生從小學到中學,已經適應了記概念、背知識點、應付書面考試的學習模式,對于靈活運用所學知識去分析解決問題,缺乏必要的訓練。當程序設計教學仍然是以程序設計語言為主、以概念為主、以書面教學為主時,就更會強化學生原有的思維模式和學習方法,把這門課程當成以概念和知識點學習為主的理論型課程,忽視了對實際能力的培養(yǎng)。

2指導思想

C語言課程是培養(yǎng)學生專業(yè)能力的重要課程,其教學效果對學生今后其他專業(yè)課程的學習以及畢業(yè)后的專業(yè)工作前景都有重要的影響。為解決C語言課程在程序設計能力培養(yǎng)方面的不足,需要根據(jù)當前學生的特點,在課程教學目標、課程指導思想、課程內容設置和組織、練習和考試的方法及重點等方面進行調整和改革,使學生在掌握運用C語言進行程序設計的同時,在分析問題和解決問題的能力上有顯著的進步,在程序設計的各個環(huán)節(jié)養(yǎng)成良好的習慣,為后續(xù)的專業(yè)課程學習提供必要的程序設計知識和能力,為今后深入掌握專業(yè)化的程序設計能力打下良好的基礎。

對于計算機專業(yè)的學生來說,C語言課程的教學目標不僅僅是使學生了解和掌握C語言本身,而且應該使學生深入掌握程序設計的思路和方法。C語言課程應該是學習使用C語言進行程序設計的課程,而不是僅僅學習C語言本身的課程。程序設計語言與程序設計是互為表里的。程序設計的作用是表達程序設計者的思想,是按照計算機所能理解和執(zhí)行的方式描述需要讓計算機完成的工作,而程序設計語言則是表達這種思想的工具。在程序設計工作中,首先需要明確的是所要表達的思想到底是什么,也就是到底需要計算機按照什么樣的步驟來執(zhí)行計算過程,產生什么樣的計算結果。至于采用什么樣的語言,以及這種語言的細節(jié),則是第二位的。因此,對于沒有程序設計經驗的學生的教學,必須把程序設計的思想和方法放在中心的位置,而把程序設計語言作為講述程序設計思想和方法的工具。

3課程的內容和安排

為使學生通過C語言的學習掌握程序設計的能力,養(yǎng)成良好的程序設計習慣,并在分析問題和解決問題的能力上得到培養(yǎng)和鍛煉,需要在課程的教學內容和側重點上進行必要的調整,在教學方法上進行必要的改進,在實驗和考核的手段上進行必要的革新,在教學過程的組織和安排上與其他相關課程更好地協(xié)調。

首先,需要把教學的重點從C語言本身轉移到程序設計的思路和方法、以及運用C語言進行程序設計上來,把講授語言的概念轉變?yōu)橹v授語言運用,把對概念的講授由抽象的分析和講解轉變?yōu)橥ㄟ^實例和經驗對概念的學習。教學內容應當圍繞程序設計的思想和方法進行組織,把C語言作為講解程序設計的工具,在講解程序設計的思想、方法和步驟的過程中,根據(jù)程序描述的需要,本著由簡到繁,由淺入深的原則,逐步講解C語言中的知識點,特別是C語言要素在程序設計中的運用。

其次,“C語言程序設計”課程是一門實踐性和應用性很強的課程,因此這門課程在教學方法上必然要不同于其他各種理論性課程。它不是以概念的學習為中心,而是以概念運用能力的培養(yǎng)為中心。對于概念和基本知識的掌握,更多地不是通過理論分析,而是通過對實例的分析和在實踐中的運用。對練習題的分析、講解、討論以及在練習現(xiàn)場的答疑都是教學中的要點。對一些復雜概念的引入和探討只有在學生具有了相當?shù)膶嵺`經驗時進行,才能使學生真正地接受。

第三,在教學安排方面要充分考慮C語言的基礎性、應用性、專業(yè)性的特點,以及該課程與其他課程的關聯(lián)和配合。復雜的程序設計知識需要有“數(shù)據(jù)結構”等先修課程作為基礎,同時,基本的C語言知識和程序閱讀和理解能力,也是其他一些專業(yè)課程,包括“數(shù)據(jù)結構”等課程在內的基礎。為了適應學生知識水平和學習能力的現(xiàn)狀,并考慮與其他課程的銜接和協(xié)調,我們把“C語言程序設計”課程的內容分為兩個部分,分兩個階段講授。第一個階段主要針對沒有程序設計經驗的初學者講授程序設計的基本方法和C語言的入門知識,第二階段主要是在第一階段的基礎上進一步提高學生的程序設計能力,培養(yǎng)學生專業(yè)化程序設計能力的基礎,以及對C語言的深入理解和把握。

第一階段課程教學的重點內容是程序設計的基本思路、步驟和方法,以及簡單的程序設計技術和C語言的運用,目的是培養(yǎng)學生程序設計的基本能力和初步培養(yǎng)學生良好的程序設計習慣,使他們知道如何著手分析一個問題,如何把解決問題的過程分解成一個個緊密銜接的步驟,如何用C語言準確地描述這些步驟,以及當程序出現(xiàn)錯誤時如何迅速準確地發(fā)現(xiàn)問題的原因,找到解決的方法。在這一階段的教學中,在講授方法上應以例題分析和討論為主,避免從概念到概念的論述,特別注意避免過于深奧的概念的引入和討論,以免學生在未掌握程序設計基本方法和思考習慣的情況下把注意力不適當?shù)赝度雽Ω拍罾斫獾倪^分追求。對于概念和理論,應該只對必要的內容做適當?shù)慕榻B,更多地把學生的注意力引入到對這些概念的運用中。應該更多地講授使用C語言進行程序設計的實例,通過實例講授分析問題的方法以及程序設計的基本思路、過程和步驟。對于C語言本身,主要應介紹各種基本語言要素和使用方法,介紹簡單程序的編寫、調試和運行過程和操作步驟,講授一些基本的算法、數(shù)據(jù)結構的C語言實現(xiàn)方法和特點。對于C語言的語法和語義,應盡量通過例題的示范進行概括性的介紹。對于其中的細節(jié),則應留給學生通過上機實習,自己逐步深入了解和掌握。這一階段的教學目標是使學生能閱讀和理解一些較為復雜的程序,并能在較短的時間內獨立完成具有初等難度、長度約幾十行的程序的設計、實現(xiàn)和調試。

第二階段的教學主要集中在對程序設計能力、特別是專業(yè)程序設計能力基礎的培養(yǎng)上。在學生學習了“數(shù)據(jù)結構”及其他相關的課程之后,可以進一步引入專業(yè)化的程序設計思想,介紹專業(yè)化的程序設計應當考慮的一些問題,對比不同的解題思路實現(xiàn)的難易程度,對比不同的算法和實現(xiàn)方法在時空效率方面的優(yōu)劣,對比不同的程序設計風格對程序的可讀性、可維護性、可擴展性、可移植性等方面的影響,講授程序質量的判斷標準等。在這一階段也可以引導學生進一步深入理解C語言中的一些重要概念和C語言的特點,使學生在C語言運用的技巧方面得到鍛煉,在程序設計的水平方面得到提高。這一階段的教學內容包括對C語言屬性、特點和重要概念的深入講解、對C語言中難點的深入分析,對程序設計思路、過程和步驟的進一步系統(tǒng)化,以及信息領域常用算法的實現(xiàn),程序和軟硬件系統(tǒng)的關系,程序的調試和測試,程序的時空效率和優(yōu)化,程序設計的風格,中型程序的結構和組織等。在掌握了這部分內容之后,學生應該能夠獨立完成較為復雜的,長度在百行以上的程序的設計、實現(xiàn)和調試,知道如何充分測試一個程序,以保證其運行的可靠,知道如何正確地組織一個較大的程序,以保證其可維護性和可擴展性,知道如何優(yōu)化一個程序,以滿足對時空效率的要求。在這一階段的教學過程中,在教學方法上可以更多地采用啟發(fā)式的方法,可以拿出一定的時間展開課堂討論和習題分析,引導學生主動地學習。同時,在練習題方面也可以適當提供一些難題,以便為學有余力的學生提供更大的學習空間。

4練習和考試

程序設計課程是一門實踐性很強的專業(yè)技術課程。只有加強實踐環(huán)節(jié),讓學生在失敗的和成功的實踐中通過自己的經驗積累才能切實掌握實際知識的運用能力。在課程教學的過程中不僅要重視理論教學,重視教學內容的設置,也要重視實踐環(huán)節(jié)的設置,重視為學生提供具有及時監(jiān)控和反饋環(huán)節(jié)的實踐環(huán)境。在課程的考核環(huán)節(jié),應該以檢驗學生的實際程序設計能力為主,關鍵概念為輔。對于語言的語法細節(jié)和使用方式,則不應單獨作為考核的題目,而應該與對程序設計能力的考核有機地融和在一起,以改變學生讀書、背概念、應付考試的學習模式。

程序設計題目和源程序答案具有高度的靈活性和差異性,難以進行常規(guī)的標準化評測。受評測方式的制約,傳統(tǒng)程序設計語言的練習及考試一般以標準化的筆試題為主,偏重于考察程序設計語言的基本概念和語法細節(jié),而程序設計題目所占比重較小。這種練習及考試方式易于導致學生忽視編程實踐能力和理論聯(lián)系實際能力的培養(yǎng)。為此,需要在練習和考試中改變傳統(tǒng)的方法,要求學生以實際程序設計為主進行練習,通過實際程序設計對學生的學習效果進行考核。這種練習和考試的方式改變了練習的目的,使練習由過去簡單地復習課堂的講授內容改變?yōu)橛蓪W生通過實踐環(huán)節(jié)進行自學。這樣,課堂講授就可以集中對關鍵內容上,而不必在語言本身的細節(jié)上花費過多的時間。

5技術支持手段

為采用“以實際程序設計為主進行練習,通過實際程序設計進行考核”的實踐及考試方式,需要為學生在編程實踐中提供具有及時監(jiān)控和反饋功能的實踐環(huán)境,并在課程作業(yè)方面增加程序設計題目的比例。這樣,不但可以提高練習和考試的強度,使得習題更加接近實際程序設計的要求,而且也更能檢驗教學效果和學生的實際程序設計能力。學生的答題工作全部在計算機上進行,提交的答案必須是不存在任何語法和邏輯錯誤、能解決一個完整問題的源程序。學生在學習階段必須重視實際編程能力,提高對代碼質量和編程風格的要求,養(yǎng)成良好的編程習慣。同時,這也可以改變以往基于經驗和直觀感覺的人工閱卷方式,提高閱卷的效率,減輕教師的閱卷負擔,保證成績評定的準確和公正。而且,在C語言這樣一門具有很強實踐性的信息技術專業(yè)基礎課程的實踐環(huán)節(jié)采用基于信息技術的自動化支持手段,其本身也是對學生的一種示范和啟發(fā)。

在自動化的評測系統(tǒng)中,最重要的問題是對程序設計題目的評測方式和標準。對程序的評價既有內在屬性的指標,如功能、性能、正確性、可靠性等,也有外在屬性的指標,如程序的結構、可讀性、風格等。根據(jù)本課程的教學要求,程序評測系統(tǒng)主要采用內在屬性指標,學生所完成的程序必須通過編譯,產生可執(zhí)行代碼文件,在計算機上運行,根據(jù)題目的要求讀入輸入數(shù)據(jù),進行正確的運算,產生正確的輸出數(shù)據(jù),才能得分。這種方式可以檢查學生程序語法和基本功能的正確性。對程序的功能完整性和性能的評測通過設計具有不同難度的輸入數(shù)據(jù)來完成。這樣,就可以對學生的程序在問題分析、數(shù)據(jù)結構和算法的選擇、實現(xiàn)的正確性和效率等多個方面產生適當?shù)膮^(qū)分度。同時,為了全面提高學生專業(yè)化程序設計的能力,也可適當引入一些外在屬性的指標以及相應的評測手段,以檢驗學生程序在程序的結構、可讀性、風格等方面的水平。

根據(jù)這些原則,我們設計和實現(xiàn)了一個基于Web的程序設計語言練習及考試評測系統(tǒng),并開通了C語言課程教學網站。該練習及考試評測系統(tǒng)由配置工具、命題及題庫管理工具、Web應用服務器、程序題評測服務器、考試控制工具、成績統(tǒng)計工具等組成,具有很強的可配置性和可擴展性,能夠適應不同的練習和考試要求。為防范考試中可能的作弊行為,系統(tǒng)提供了實時網絡監(jiān)測工具和程序源文件及可執(zhí)行碼的功能;在一場考試中可以使用具有相同難度的多份試卷,以避免相鄰座位學生之間的交流和抄襲。練習及考試評測系統(tǒng)既支持程序設計類型的試題,又支持單選、多選、填空等標準化試題。為適應練習和考試的不同要求,對所提交的答案可以分別設置為立即評測和定時評測。這樣,在練習過程中學生就可以及時得知自己的答案是否正確,并及時改正錯誤。練習及考試評測系統(tǒng)可以自動完成對學生成績的評測和統(tǒng)計,并根據(jù)需要生成成績表。這樣,不僅可以使教師及時準確地掌握學生的成績,發(fā)現(xiàn)存在的問題,而且可以大大減輕教師的工作負擔。

c程序設計語言范文第5篇

關鍵詞:教學質量;教學手段;方法創(chuàng)新

C語言是目前最常用的程序設計語言之一,其功能強大、可移植性好,是大學計算機專業(yè)的基礎課程,是很多重點課程如數(shù)據(jù)結構、面向對象程序設計、單片機等課程的先行課程和基礎。但是,C語言也具有語法知識豐富,數(shù)據(jù)類型較多,結構層次復雜等特點,對于初學者,特別是剛接觸計算機的新生來說,難度可想而知。在實際教學中,學生普遍反映C語言難學,聽不懂老師講什么,只會依葫蘆畫瓢,自己編程卻一點思路都沒有,甚至對C語言的學習產生一種畏懼心理。我們知道學好這門課不僅要求學生有敏捷的邏輯思維能力,而更重要的是教師采用何種教學方法,來激發(fā)學生的思維,切實提高學生的編程能力。傳統(tǒng)的教學方式往往過分強調語言的語法教學,這樣會導致學生學到最后,不知道自己能用這個干什么,這樣的結果是與我們教學的目的一一能夠解決實際問題相違背的。因此,如何迅速提高他們的計算機操作能力,培養(yǎng)他們對程序設計的興趣,是一個大的挑戰(zhàn)。本文根據(jù)學生的普遍問題、結合自身C語言教學經驗和學習經歷,談一點自己看法。

一、實際教學中存在的問題

(一)傳統(tǒng)的板書教學,缺乏可以輔助學習的有效途徑。學生對于利用板書講解編程的教學方式有厭倦心理,同時課后師生見面次數(shù)較少,缺乏面對面交流,這間接的影響學生學習的積極性。倘若將集視頻、動畫于一體的電子學案放到網絡上,給學生創(chuàng)造良好方便的學習環(huán)境,將會對學生學習C語言起到積極的促進作用。

(二)教材過于注重對語句語法的深入剖析,缺乏以算法為核心的編程題的教學內容。大多數(shù)C語言教材中通常先給出一般的語法格式,然后逐步講解語法要點,再舉例說明。很多教師往往舉一反三地對使用語句、語法進行深入的教學,而對算法教學卻偏少、不重視。這導致學生在學習上也有了誤區(qū),有好些同學花大量精力做諸如等級考試的選擇題、填空題,帶給學生們更多的是關于語言語法的熟悉和了解,但對真正的目的一編程卻沒有什么幫助。這種方法實不可取,應大量練習編程題,而專門針對編程題的書卻很少,這也導致了學生上機寫程序時有種無從下手的感覺。

二、教學方法與手段

C語言課程是實踐性極強的一門課程,根據(jù)C語言課程的特點,可以組合多種教學方法和手段,靈活使用,以培養(yǎng)學生的分析問題和解決問題的能力,提高學生的程序水平。

(一)項目教學法

項目教學法尤其適合該門課程的教學。教師在授課時可以通過項目分析,重點講解程序設計的思路和方法,輔以語言知識的介紹,將課程內容分為若干項目,以程序設計為主線,貫穿各個項目。而每個項目的教學過程可由“要點分析”、“練習/3a機實踐”、“疑難解答”三個階段組成。這種教學模式能做到最大化得調動學生們的積極性和主動性,激發(fā)學生們的創(chuàng)新性的潛能,在學生們在掌握了C語言各個語法同時,也掌握了程序設計的整體思路,不至于讓學生陷入一種“只見樹木、不見森林”的狀態(tài)。在選擇項目的時候,可以考慮一些趣味性較強的或與學生密切相關的項目,以激發(fā)學生的學習興趣。

(二)問題教學法

教師先提出問題,以學生獨立完成為主,教師提供必要的輔導。這種方法不再沿用老師講、學生被動聽的模式,對學生自學能力要求較高,能給學生施加一定的壓力,可以培養(yǎng)學生探索問題和解決問題的能力,也有利于學生們的創(chuàng)新能力培養(yǎng)。同時,在學生自身經過主動思考后,老師再對題目進行講解,學生聽課興趣會更高,對于他們在實踐中遇到的問題也會格外關注,理解更深刻。

(三)類比教學法

C語言編程是面向過程的思維方式,與我們實際生活中的思維方式不同,同時有很多內容太過抽象,因此學生往往難以接受。所謂的類比教學法,是指在教學過程中,將學生陌生的問題與我們生活中熟悉的東西進行比較,幫助他們理解和認識問題的本質,將抽象的問題具體化,使學生更好、更快地接受新知識。

三、激發(fā)學習興趣

在課堂上盡可能采用一些趣味性強的程序作為例子、作業(yè)或實驗題,以培養(yǎng)學生學習的興趣。例如,我們在講循環(huán)結構時,我們會提到公元前五世紀,我國古代數(shù)學家張丘鍵在《算經》一書中提出了“百雞百錢”問題,該問題要用兩個方程解出三個未知數(shù),一般的方法解答該問題有些費時間,但是如果用編程的方法解決,可能幾分鐘就能把這幾組答案全部列出。這個例子使學生明白數(shù)學知識與計算機之間是緊密關聯(lián)的,也讓他們明白程序設計是用來更快更好地解決數(shù)學問題。此外,我們將學生作業(yè)和考試中經常容易出錯的問題拿出來,讓學生們在課堂上進行找錯,并進行適當?shù)刂v評,在活躍課堂氣氛、提高學生主動性的同時,及時解決學生學習中存在的各種問題,達到鞏固知識的目的。這樣,學生在課堂上不斷處于緊張和輕松的交替狀態(tài),使課堂氣氛動靜相宜,有利于學生對知識的探索。

四、培養(yǎng)自主學習能力

潞西市| 东阳市| 北川| 富阳市| 鄂托克前旗| 南丹县| 双牌县| 绥德县| 呼图壁县| 浦江县| 石嘴山市| 花莲市| 海阳市| 嘉善县| 惠来县| 舞阳县| 淮北市| 壤塘县| 金川县| 古浪县| 新龙县| 青河县| 沙湾县| 诸暨市| 铜鼓县| 陆川县| 涡阳县| 怀化市| 双峰县| 和平区| 保山市| 永安市| 武乡县| 九龙县| 洛扎县| 绍兴市| 三河市| 蒙城县| 墨竹工卡县| 五莲县| 拜城县|