• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      C++教學方法探索

      2009-06-01 07:27:50李永娜
      職業(yè)·中旬 2009年12期
      關鍵詞:程序設計語句程序

      李永娜

      《C++語言程序設計》是高職計算機專業(yè)的一門專業(yè)基礎必修課。C++蘊含了程序設計的基本思想,囊括了程序設計的基本概念,所以是計算機專業(yè)的一門基礎課程。高等院校開設C++語言程序設計的目的是讓學生掌握程序設計的基本方法,逐步形成正確的程序設計思想,同時還能夠熟練地使用C++進行程序設計和調試,為其他程序設計課程的學習和應用打下基礎。

      筆者通過長期的教學實踐發(fā)現(xiàn),學生普遍認為C++枯燥難學、概念復雜、容易出錯,由此產生了畏學、厭學情緒,嚴重影響了課程的進一步學習。為了解決學生面臨的這一系列問題,筆者針對該課程的自身特點,結合各種教學方法以及教學實例,對如何激發(fā)學生的學習興趣、刺激學生的求知欲,從而提高課程的教學質量、增強教學效果等方面進行了深入地探討。

      一、讓學生明確學習目的,激發(fā)學生的學習興趣

      學習興趣就是學生在心理上對學習活動產生愛好、追求和向往的傾向,是推動學生積極主動學習的直接動力。學生只有對所學課程有濃厚的興趣,才能積極主動和富有創(chuàng)造性地去完成學習任務??梢?學生的學習興趣直接關系到教學效果的好壞。那么,教學中應如何激發(fā)學生的學習興趣呢?

      1.明確學習C++的重要性

      學習的重要性也就是這門課程的有用性。在社會競爭日益激烈的今天,學生的學習更看重的是實用性,是課程學習對以后的工作和競爭所起到的作用。當學生深刻地領會到課程學習的重要性之后,對課程的學習興趣也就油然而生了。

      (1)目前,市場對軟件工程師以及熟練掌握計算機程序設計的其他專業(yè)復合型人才的需求缺口很大。C++作為一種通用的程序設計語言,廣泛地應用于軟件設計和開發(fā)當中。熟練掌握C++程序設計語言,必然會成為計算機專業(yè)學生在未來就業(yè)競爭中的一個重要籌碼。

      (2)C++是許多其它商業(yè)軟件的開發(fā)工具。例如,當今世界上最流行的工程制圖軟件包AUTOCAD就是用C++開發(fā)的。另外,大家所熟知的UNIX操作系統(tǒng)也完全是由C++編寫的。

      (3)C++是其它面向對象語言以及網(wǎng)絡編程的基礎。面向對象編程語言,如VB、VC++等,雖然擺脫了面向過程語言的許多細節(jié),使設計程序輕松很多,但用戶對其對象化的事件仍需編寫代碼來驅動實現(xiàn)。這些代碼里面仍包含結構化程序設計的順序、選擇、循環(huán)三種基本結構。因此,C++的編程思想是面向對象語言程序設計的理論基礎。另外,隨著Web網(wǎng)頁技術的不斷普及和發(fā)展,人們制作漂亮的、個性化的Web網(wǎng)頁并不是件難事。問題在于深層次的網(wǎng)絡技術開發(fā)仍然必須掌握一定的編程工具,如CGI程序、ASP腳本語言、JAVASCRIPT等等。實際上,這些流行的網(wǎng)絡編程語言很多都混合了C++的語法,這類語言在數(shù)據(jù)、運算符、函數(shù)的調用、程序語句的書寫、循環(huán)的控制上都極為相似。

      (4)C++編程有助于訓練和培養(yǎng)計算機思維。C++的學習不僅是一門純粹的技術或技能,而且是一種思維訓練的工具,有助于鍛煉人們的思維。這就像數(shù)學對人的思維所起作用一樣,使人的思維更精確、更細致。當學生對該門課程的重要性有一個深刻認識的時候,自然會把C++的學習擺在一個較重要的位置加以重視。這是培養(yǎng)學生興趣的一個重要方面。

      2.展示C++語言程序設計的魅力,刺激學生的求知欲

      將抽象的語言形象化,使枯燥的機械性的學習過程轉化為一種趣味性的認知過程,將C++語言所擁有的魅力展現(xiàn)在學生面前,讓學生感受到C++學習其實也是一項其樂無窮的事情。

      (1)把趣味性問題作為教學實例。C++語言的學習過程是一個相當抽象的過程,各種各樣的語句都以符號的形式展現(xiàn)在面前,學生難免會對此產生厭倦。此時,可以在課堂的案例中加入小游戲及圖形設計內容,以趣味性的實例作為教學的例子。

      在講解一個新的知識體系前,運用即將學到的知識設計一個吸引學生的小游戲或動畫。課前,教師首先展示動畫,側面引導學生,讓他們有“只要我學會了這部分知識也能自己做出來”的信心,這樣會大大提高學生的學習熱情。

      例如,在講解“選擇與循環(huán)結構”之前,筆者首先在課堂上向學生展示了一個“猜數(shù)游戲”,讓學生對此產生了興趣,提高了上機時的積極性。當他們學習了if語句后,就可以編出程序的判斷部分,學習了循環(huán)語句后,就可完成一次猜數(shù)字的過程。而學習了循環(huán)嵌套后,則可實現(xiàn)連續(xù)猜數(shù)字,成為一個完整的游戲。從具體實例切入,由淺入深、循序漸進的教學模式,能夠很好地調動學生學習的主動性,培養(yǎng)他們對課程學習的興趣。

      (2)選擇經(jīng)典的數(shù)學問題作為課堂案例。正如長篇大論的講道理往往不如巧妙的使用一個典故或者一句名言更具說服力一樣,經(jīng)典的數(shù)學問題作為課堂案例會比一般的練習題更能引起學生興趣。例如,“百錢百雞”問題是用C++程序解決數(shù)學方程運算問題的一個典型實例,用到了程序中典型的算法——“窮舉法”。

      將這樣的經(jīng)典數(shù)學問題作實例,可以使學生既學習算法,又體會到運用C++編程解決實際問題的樂趣。又如演示數(shù)學中一元二次方程的求解程序,同樣如此。用所學的知識解決現(xiàn)實問題,使學生能夠感受到理論在實際中的應用,從而進一步激發(fā)他們向更高、更遠的目標奮進。實踐表明,這些學以致用的實例能大大激發(fā)學生對C++學習熱情。因此,在學習過程中,要讓學生體驗到成功的歡樂,獲得成就感,強化學生的求知欲望從而使學生學習C++的興趣和熱情能夠持久保持。

      二、多樣化的教學方法

      1.啟發(fā)式教學法

      程序設計方法是多種多樣的,大多數(shù)問題都不只有一個解法。因此,在教學過程中,教師不應對學生進行刻意地限制,而要鼓勵學生按照自己對問題的理解采用自己認為合適的方法進行處理。教師則對各種方法進行總結,并對各種方法的優(yōu)缺點進行講解。通過這種引導啟發(fā)式的教學方法,可以調動學生的積極性。例如,1+2+3+…+100=?可以采用while語句,也可以采用do…while語句,還可以采用for語句。教師可以引導學生進行思考,讓他們采用不同的語句來實現(xiàn)。這樣不僅能夠調動學生的主觀能動性,還能讓他們在不知不覺中鞏固了所學的知識,加深了對本質的認識。

      2.案例比較教學法

      結合課堂要求,選擇恰當案例,采用多個案例演示比較,經(jīng)過學生的討論后,及時做出講評,并再次講授案例分析中所需要用到的理論知識和技能。通過對各種案例的比較,能夠讓學生深刻領會到不同的語句之間的區(qū)別和聯(lián)系,有助于他們更準確地進行運用。例如,在學習函數(shù)這一章時,為了說明函數(shù)調用時參數(shù)傳遞的方式,設計如下案例供學生討論。

      案例:交換主函數(shù)兩個變量的值,要求:main函數(shù)中兩個變量,采用函數(shù)調用實現(xiàn)變量交換后,然后輸出交換后結果,用swap函數(shù)實現(xiàn)。

      學生經(jīng)過分析討論,得到以下四種方法:

      程序1:

      swap(intx,inty)

      {inttemp;

      temp=x;x=y;y=temp;}

      voidmain()

      {inta=10,b=20;

      swap(a,b);

      cout<

      }

      這個程序中,實參向形參傳遞數(shù)據(jù)的方式是值傳遞。當調用swap時,將實參a和b的值復制給形參x和y,并在swap函數(shù)的內部完成了x和y的交換。由于形參x、y和實參a、b各自擁有自己的內存單元,a和b并沒有完成交換。

      程序2:

      swap(int&x,int&y)

      {inttemp;

      temp=x;x=y;y=temp;}

      voidmain()

      {inta=10,b=20;

      swap(a,b);

      cout<

      }

      這個程序中采用的是另外一種參數(shù)傳遞方式——使用引用。此時實參a初始化形參x,實參b初始化形參y,在swap函數(shù)中實現(xiàn)了a和b的值交換。

      程序3:

      swap(int*p1,int*p2)

      {intp;

      p=*p1;*p1=*p2;*p2=p;}

      voidmain()

      {inta=10,b=20;

      swap(&a,&b);

      cout<

      }

      這個程序中采用的參數(shù)傳遞方式是地址傳遞。此時,通過兩個指針p1和p2分別指向變量a和b,在swap函數(shù)中通過指針實現(xiàn)了a和b的值交換。

      程序4:

      swap(int*p1,int*p2)

      {int*p;

      p=p1;p1=p2;p2=p;}

      voidmain()

      {inta=10,b=20;

      swap(&a,&b);

      cout<

      }

      這種參數(shù)傳遞方式雖然也是把地址傳遞給指針變量,但在swap函數(shù)中進行交換的卻是兩個指針,也就是交換的結果是p1指向b,p2指向a,而a和b的值并沒有交換。因此運行結果也是錯誤的。

      通過這一案例的討論、分析和總結,學生很快就能從理論上掌握函數(shù)的調用及參數(shù)的傳遞方法。同時,結合上機實踐就能使學生更好地理解和記憶所學的知識。

      3.發(fā)散思維教學法

      要在有限的課時內完成相應的教學任務,又讓學生掌握必要的知識,關鍵是讓學生學會如何活學活用,培養(yǎng)學生的發(fā)散性思維。同樣的一個問題,要引導學生從不同的角度來進行思考,通過自己對問題的理解采取不同的方法來解決。這樣不僅有助于學生對知識的鞏固,同時還能讓學生具備靈活的應變能力,將機器語言真正轉化為“自己的語言”。例如,學習循環(huán)結構時,通過“10!”來講解不同的循環(huán)語句。

      方法一:while語句

      voidmain()

      {inti=1;longfac=1;

      while(i<=10)

      {fac*=i;i++;}

      cout<<"10!="<

      方法二:do…while語句

      voidmain()

      {inti=1;longfac=1;

      do

      {fac*=i;i++;}whle(i<=10);

      cout<<"10!="<

      方法三:for語句

      voidmain()

      {inti=1;longfac=1;

      for(i=1;i<=10;i++)

      {fac*=i;}

      cout<<"10!="<

      從上面的例子可以看出,同一問題具有多種不同的解決辦法,可使學生輕松掌握循環(huán)語句的格式和使用方法,深刻體會C++的靈活,激發(fā)學生思考和學習積極性。

      實踐表明,上述教學方法的實施,不僅培養(yǎng)了學生參與意識、動手能力和思維過程,而且也讓學生通過編寫程序完成任務,從而感覺到人類是如何通過程序來驅使計算機為我們的工作、生活和學習提供支持服務的成就感,同時也使學生從枯燥的語法、規(guī)則、程序學習中激發(fā)了學習的興趣,提高了教學質量,增強了教學效果。

      三、實踐與鞏固

      上機這一環(huán)節(jié)是C++的重要組成部分。針對不同的學習基礎和不同的學習要求,部署不同層次和梯度的作業(yè),既保證大部分同學能夠完成,也能使基礎好的學生的得到相應的提高。因此,可以將作業(yè)分為基本作業(yè)和思考作業(yè),這也是引發(fā)學生學習興趣的一個重要手段。如果有條件的話,還可結合專業(yè)做課程設計。程序設計技能的培養(yǎng),只有通過大量的編程訓練和上機實踐才能獲得。為此,必須提供盡可能多的機時讓學生進行程序的編輯、編譯、調試和運行實踐。

      綜上所述,C++程序設計的教學是否成功,關鍵在于對教學內容和教學方法的合理組合。但現(xiàn)實中由于教學目的、教學內容及學生情況等因素千差萬別,因此沒有哪一種教學模式或教學方法是普遍適用的。這就要求教師在教學過程中要根據(jù)實際情況,采用合適的教學模式和教學方法,既要充分發(fā)揮教師的指導作用,又要充分調動學生的學習積極性和主觀能動性。在具體的教學過程中,任課教師要注意從C++的特點出發(fā),理論聯(lián)系實際,樹立程序設計的思想,傳授程序設計的方法,從而獲得最佳的教學效果。

      (作者單位:廣東省高級技工學校)

      猜你喜歡
      程序設計語句程序
      重點:語句銜接
      基于Visual Studio Code的C語言程序設計實踐教學探索
      計算機教育(2020年5期)2020-07-24 08:52:56
      從細節(jié)入手,談PLC程序設計技巧
      電子制作(2019年9期)2019-05-30 09:42:04
      試論我國未決羈押程序的立法完善
      人大建設(2019年12期)2019-05-21 02:55:44
      “程序猿”的生活什么樣
      精彩語句
      英國與歐盟正式啟動“離婚”程序程序
      高職高專院校C語言程序設計教學改革探索
      創(chuàng)衛(wèi)暗訪程序有待改進
      PLC梯形圖程序設計技巧及應用
      达孜县| 日喀则市| 义马市| 唐河县| 手游| 陕西省| 高邑县| 安图县| 泰来县| 东海县| 永泰县| 吉安县| 三门峡市| 新宁县| 宜宾市| 绥江县| 石屏县| 江川县| 井研县| 大竹县| 湛江市| 华蓥市| 肇源县| 沙河市| 文水县| 庆阳市| 兴化市| 深泽县| 伊通| 灵川县| 彰武县| 苗栗市| 那坡县| 平湖市| 岚皋县| 吉安市| 株洲市| 崇礼县| 驻马店市| 徐闻县| 巴中市|