999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

加強《C語言程序設計》課程中編程理念的培養

2012-04-29 00:44:03夏一行
教育教學論壇 2012年1期
關鍵詞:教學方法

夏一行

摘要:本文分析了目前高等院校中《C語言程序設計》課程教學中存在的問題,從教學實踐、算法設計、綜合性項目練習、創新思維培養以及編程風格等多個環節提出方法,從多個方面加強學生的編程思想和能力的培養。

關鍵詞:C語言;程序設計理念;編程實踐;教學方法

中圖分類號:G642.4文獻標志碼:A文章編號:1674-9324(2012)01-0043-02

在眾多高校的本科教學中,《C語言程序設計》課程是各個專業的一門重要公共技術基礎課,它為其他的專業課程奠定了程序設計的基礎,在本科教學計劃中占有重要的地位和作用。C語言作為程序設計中的一個工具,是很多后續專業課程的基礎。掌握C語言的詞法、語法和結構,更重要的是培養學生的程序設計思想和方法,這才是《C語言程序設計》課程的最終目的。本文作者結合課程特點和教學過程中的實踐經驗,從多個方面來講解如何培養學生的編程理念。

一、目前課程教學過程中存在的普遍問題

《C語言程序設計》課程一般都針對大一新生,學生從小接受的是“應試教育”,考試成績是教師考查評價學生的主要依據。在這種教學模式下,課程教學就存在很多局限性。

1.側重于語法結構,忽略程序設計思想的培養。該課程一般都是面向高校各個工科類專業的,選擇同一本教材,課程結束統一進行考核,這樣必然就導致教師上課時需緊扣教材;課程考核一般側重于要求學生掌握C語言的詞法、語法和結構,能解決一些簡單的編程問題;而程序設計最主要的編程思想和能力的培養往往被弱化了,教師經常會反復強調書本上的知識點和示例,而真正程序設計中的編程環節花的時間比較少,這也是課程設置的局限性。

2.算法設計中數學思維能力薄弱。計算機程序是按照實際的工作步驟而事先編制好的、具有特殊功能的指令序列。而程序的核心是算法,它是程序所要解決問題的規則、順序和步驟,在程序編制過程中有著重要的地位。算法提供一種思考問題的方向和方法,算法設計的過程往往需要用到大量的數學知識,需要用一種數學的思維來將問題轉化成一系列的步驟。在教學過程中,發現學生編程時往往卡在數學問題上,而有數學基礎的學生會具有較大的優勢。

3.缺乏綜合性項目的練習。C語言課程的知識點繁多,一般按照課程大綱設置,整個教學過程時間比較緊張,所以教學模式上,是按知識點逐個講解,圍繞每個知識點結合示例加強理解。這些示例都比較簡單,包含的知識點比較單一,這樣導致學生無法很好地將各個知識點融合。一般要到課程過半時,會進行一些簡單的綜合性項目練習,但這些項目編程實現也比較簡單,實現代碼幾十行而已。而且課程后期,知識點難度加大和期末考試的臨近,學生壓力增大,對綜合性項目的練習缺乏激情。而綜合性項目的聯系是鍛煉學生思維能力和編程能力的有效途徑。

二、加強課程教學環節中編程理念的培養

大部分學生在開始《C語言程序設計》課程時,對程序設計概念知之甚少,在使得學生掌握這門語言的同時,激發他們的興趣,培養編程思想和能力,這樣才算學好了這門課程。那如何培養學生的編程理念,從哪些環節來提高學生的編程能力,是每個任課教師需要考慮的問題。

1.加強實踐環節。C語言詞法語法結構復雜,需要學生記憶的內容很多;而且很多學生是首次接觸程序設計,這個課程與以往的數理化課程不同。如果教學時一味地強調知識點內容的灌輸,那會引起學生的恐懼和反感。這樣,隨著后續內容的難度加大,學生學習這門功課會越來越累。程序設計課程都會結合實踐環節,一般是上機。這個環節在學習程序設計語言的過程中起著至關重要的作用。教師需要通過這個環節,將課堂上枯燥乏味的概念應用到實際編程中,讓學生在自己的編程結果中體會到課程的神奇,激發學習的興趣。

那如何來更好地利用實踐環節呢?具體主要從兩個方面入手:一是結合有意思的程序示例來激發學生的興趣。怎樣讓學生喜歡程序設計,主動去學習C語言?那就要能讓學生體會到通過C語言能實現的奇妙結果。從學習這門課程開始,就可以通過一些簡單有趣的例子,讓學生對有趣現象背后的C語言產生好奇心。比如,學生比較喜歡游戲,課程開始時,可以演示“猜數字”這個小游戲。這個游戲早期在文曲星、掌上電腦上比較流行,學生能從這個示例中體會到簡單的人機交互,當他們看到跟計算機的較量產生輸贏時,能形象地體驗到程序設計帶給他們的小小沖擊。又比如,學習多重循環時,外層、內層循環嵌套,不同的循環變量的變化……這些概念會是學生倍感困惑。這時,我們可以通過一些身邊熟悉的示例來演示:“百錢買百雞”,這是一個有意思的例子,100元錢去市場買100只雞,包括公雞、母雞和小雞,公雞5元1只,母雞3元1只,小雞1元買3只,用多重循環實現。假設公雞x只,母雞y只,那么小雞就是(100-x-y)只,編程時,可以將x作為外層循環變量,y作為內層循環變量,對每一組x和y進行100元錢的判斷。這樣學生通過感性的例子,理解多重循環的流程。從實際的課堂效果來看,學生對這類例子會表現得比較興奮,課堂氣氛同時也被調動起來了。二是改變學生上機環節的方式。傳統的程序設計上機環節,一般是采用某些編程環境,讓學生完成編程作業。學生面對單一的編程環境,程序設計就成了一件枯燥的事情。學習《C語言程序設計》課程的學生一般都是大一新生,在現在的“應試教育”模式下,已經習慣了以考試來衡量自己學習的結果。所以在上機環節引入考核模式,讓學生馬上能得到一個上機成績,來激發他們的積極性。所以在上機環節,采用本校計算機學院教師開發的在線測試系統(http://acm.hdu.edu.cn)提供的C/C++模塊,作為學生上機練習的手段。這個在線測試模塊突破了傳統的考試系統只能對選擇、填空、判斷對錯等客觀題進行自動評分的模式,可實現對C語言主觀編程題的自動評分,根據學生程序的語法、語義和運行結果,衡量學生程序的正確程度。而且教師可以結合課程內容和進度,添加自己的題庫,讓學生更好地理解課堂內容。經過連續幾個學期的使用,受到了師生的普遍歡迎,大大提高了上機效率。以往上機環節學生忙于上網玩游戲的現象基本杜絕。

2.從多角度擴展算法設計的思維。使用C語言程序設計解決問題,要分析問題,用算法對問題進行描述,然后才是具體的數據類型、變量定義、結構選擇等。計算機解決問題的方法和思想與我們解決問題的傳統習慣及想法是不一樣的,這就是我們在學習程序設計時,去學會、去思考計算機的想法,逐步適應計算機的編程思想。教學過程中可以從多個方面來加強這方面的理念。一是掌握多個算法描述方法。算法描述有很多種方法,比如自然語言描述、程序流程圖、偽代碼等,復雜的問題經過這些算法描述會變得清晰簡單。但是在教學過程中,由于課堂時間限制,這些方法的介紹和使用介紹得比較少,經常課程結束了,學生還無法完成一個完整的流程圖。所以在實際程序設計過程中,很多學生忽略了算法設計,只能做到模仿,首先考慮的是有沒有可以類似的參考例子,然后可以仿照著寫代碼。所以在課堂講授示例時,應該時時體現算法設計在程序設計中的重要性。解決一個問題的時候,不是先把代碼展示給學生,而應該現在分析問題,從計算機思維的角度設計相應的算法,并用合適的方法進行描述,然后再引出代碼。讓學生更清楚代碼的來龍去脈,而不是去閱讀代碼、理解代碼。二是學會算法設計的靈活性。現實生活中解決一個問題的方法是多種的,比如要從A地到B地,路徑可以有很多條,選擇的行進方式也可以多種。計算機程序也一樣,比如求1-100的平均值,算法設計可以先將1-100累加然后除以100,也可以1-100每個數除以100再累加。而實現的代碼也可以靈活多變,比如涉及到的100個數的累加環節,用循環來實現,可以靈活選擇while/do-while/for任一個循環結構來編寫代碼。所以C語言詞法語法方面是有約束規則的,但是算法設計是靈活多變的。在示例講解時,可以有意識的“小題大做,一題多解”,通過講解一種方法,提示啟發學生用其他方法解決問題,激發學生考慮問題的靈活性。

3.加強綜合性項目的練習。除了改變上機環節的方式,還應該加強綜合性項目的練習,對所學的詞法語法能融會貫通。可以在課程開始時,給學生布置一個較大型的綜合性項目,作為學期結束時需要上交的大作業。另外在平時的上機過程中,有意識地增加綜合性項目的練習。隨著課程進度,將學過的知識點逐點加入練習項目,防止將各個知識點隔離獨立開。

4.培養創新思維能力。C語言是一門成熟的編程語言,但是學生如果死記硬背這些詞法語法,是無法真正學好這門課程的。我們應當致力于培養學生運用C語言解決實際問題的編程能力,將成熟的C語言知識應用到多變的實際問題中,要求學生具有創新思維能力。教學過程中要開拓視野,不能局限在教材上,如果將書本上的知識對學生進行填鴨式灌輸,學生一方面會對教學產生排斥,更重要的是會限制了學生的思維。在教學各個環節,應該有意識培養學生的創新思維,鼓勵學生的創新想法。學生的想法很多時候是天馬行空,但要相信“存在即合理”。學生最開始學習編程,首先考慮的是實現,而不是代碼的效率問題。當學生設計了一種新算法時,先不要帶著評判的眼光去看代碼,而應該是鼓勵的態度。

5.培養良好的編程風格。學生在學習程序設計的過程中,還應該養成良好的編程風格。一是有意識培養編程的完整過程,包括分析問題、算法設計、代碼編寫、調試程序和編寫文檔等。二是代碼編寫的良好風格,雖然C語言對書寫格式沒有嚴格要求,但一個良好的、規范的書寫方式,可以提高程序的可讀性。初學C語言更應該注意養成這方面的好習慣。

一個良好的編程理念不是簡單形成的,需要教師有效地培養和訓練。學習《C語言程序設計》課程,要使學生掌握C語言的詞法、語法、結構以及結構化程序設計的基本思想和方法,要使學生認識到算法、實踐以及良好的程序設計風格在本課程學習中的重要性,更要培養學生熟練使用C語言編程分析和解決實際問題的能力,培養學生在以后學習、工作中,無論使用什么語言編程,都能靈活應用這些思想和方法的能力,為學生進一步學習其他專業課程和今后從事軟件開發工作打下堅實的基礎。

參考文獻:

[1]何黎霞.傳統教學和案例教學在C語言程序設計教學中的應用[J].電腦知識與技術,2010,6(10).

[2]韓春成,邢鵬飛,燕揚.C語言程序設計教學改革實踐[J].長春師范學院學報(自然科學版),2010,29(5).

[3]袁柳,路綱.程序設計語言教學過程中的學生思維能力培養[J].計算機教育,2011,(12).

[4]陸蓓.C語言程序設計[M].北京:科學出版社,2009.

猜你喜歡
教學方法
初中英語寫作教學方法初探
甘肅教育(2020年2期)2020-09-11 08:01:42
教學方法與知識類型的適宜
數學復習教學方法
高中體育教學方法初探
學周刊(2016年23期)2016-09-08 08:57:30
淺談高等數學中教學方法的創新
實用型中醫人才培養中慕課教學方法的探討
文言文教學方法實踐初探
中學語文(2015年21期)2015-03-01 03:52:15
高中文言文教學方法之我見
中學語文(2015年21期)2015-03-01 03:52:15
初中數學教師不可忽視的幾種教學方法
散文百家(2014年11期)2014-08-21 07:17:18
語文閱讀教學方法略談
主站蜘蛛池模板: 人妻无码AⅤ中文字| 国产精品中文免费福利| 色九九视频| 免费观看三级毛片| 国产精品露脸视频| 网友自拍视频精品区| 欧美日韩亚洲国产主播第一区| 亚洲天堂久久久| 白浆视频在线观看| 一级成人a做片免费| 波多野结衣视频一区二区| 国产精品微拍| 国产亚洲欧美在线人成aaaa| 久久久波多野结衣av一区二区| 亚洲欧美日韩综合二区三区| 欧美亚洲中文精品三区| 中文字幕久久波多野结衣| 亚洲综合18p| 日本国产精品一区久久久| 欧美日韩在线成人| 亚洲视频a| 2021精品国产自在现线看| 亚洲第一av网站| 天堂成人在线视频| 第一区免费在线观看| 中文字幕久久精品波多野结| 欧美在线中文字幕| 欧美色亚洲| 黄色网在线| 婷婷六月激情综合一区| 香蕉视频国产精品人| 成年看免费观看视频拍拍| 国产麻豆另类AV| 岛国精品一区免费视频在线观看| 国产成人精品视频一区二区电影 | 美女扒开下面流白浆在线试听 | 日本久久免费| 日本久久久久久免费网络| 国产91小视频在线观看| 理论片一区| 亚洲a级毛片| 福利一区在线| 国产极品美女在线| 亚洲欧洲日产国码无码av喷潮| 国产剧情国内精品原创| 国产一二三区在线| 亚洲无线观看| 五月综合色婷婷| 五月婷婷欧美| 青青青国产在线播放| 亚洲国产精品一区二区第一页免 | 美女裸体18禁网站| 综合色在线| 在线观看国产精品一区| 欧美成人精品一级在线观看| 伊人色天堂| 国产swag在线观看| 国产伦精品一区二区三区视频优播 | 婷婷综合缴情亚洲五月伊| 亚洲日韩Av中文字幕无码| 69精品在线观看| 欧美精品在线视频观看| 国产肉感大码AV无码| 欧美色视频日本| 久久婷婷色综合老司机| 国产精品白浆在线播放| 亚洲综合二区| 精品久久蜜桃| 亚洲三级成人| 中文无码精品A∨在线观看不卡| 欧美日韩在线观看一区二区三区| a国产精品| 免费人成在线观看成人片| 亚洲无码不卡网| 天天综合网站| 老色鬼欧美精品| 特级aaaaaaaaa毛片免费视频 | 九色国产在线| 亚洲第一区欧美国产综合| 亚洲国产中文精品va在线播放| 好吊色国产欧美日韩免费观看| 欧美日韩在线国产|