亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        計(jì)算機(jī)程序設(shè)計(jì)教學(xué)中問題求解能力的培養(yǎng)探索

        2019-06-20 09:17:24徐建軍尹良澤陳立前
        課程教育研究 2019年13期
        關(guān)鍵詞:教學(xué)案例

        徐建軍 尹良澤 陳立前

        【摘要】針對(duì)計(jì)算機(jī)程序設(shè)計(jì)教學(xué)中實(shí)際存在的問題,教學(xué)過程中把知識(shí)講授轉(zhuǎn)化為對(duì)問題求解能力的訓(xùn)練以及計(jì)算思維的培養(yǎng),并以二維數(shù)組的為例展示了一個(gè)具體的教學(xué)設(shè)計(jì),最后介紹了課程實(shí)踐所采取的措施,取得了良好的教學(xué)效果。

        【關(guān)鍵詞】計(jì)算機(jī)程序設(shè)計(jì) ?問題求解 ?教學(xué)案例

        【中圖分類號(hào)】G64 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】2095-3089(2019)13-0243-02

        計(jì)算機(jī)程序設(shè)計(jì)目前是各個(gè)高校理工科的基礎(chǔ)課和必修課,是一門理論和實(shí)踐并重的課程。但在實(shí)際教學(xué)過程中,這門課難教、難學(xué)已經(jīng)成為師生的共識(shí),傳統(tǒng)的程序設(shè)計(jì)教學(xué)一般是以教師為中心,學(xué)生是被動(dòng)的參與者,教學(xué)過程中偏重知識(shí)和理論的傳授,而忽視思維和能力的培養(yǎng)訓(xùn)練。大多數(shù)學(xué)生都認(rèn)為程序設(shè)計(jì)艱澀難懂、學(xué)難致用、學(xué)完即忘,遇到具體問題往往無從下手。

        實(shí)際上,計(jì)算機(jī)程序設(shè)計(jì)這門課除了掌握一種高級(jí)程序設(shè)計(jì)語言之外,更加重要的是訓(xùn)練學(xué)生分析問題和利用計(jì)算機(jī)進(jìn)行問題求解的能力,在這個(gè)過程中培養(yǎng)學(xué)生的計(jì)算思維[1]。計(jì)算思維是指運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計(jì)以及人類行為理解等一系列思維活動(dòng),具體內(nèi)容包含抽象、分解、迭代、遞歸、折中、并行、容錯(cuò)等。作為計(jì)算機(jī)類的基礎(chǔ)課程,計(jì)算機(jī)程序設(shè)計(jì)課必須要改革教學(xué)方式,更新教學(xué)理念,樹立以培養(yǎng)問題求解能力為核心的教學(xué)目標(biāo)[2,3]。

        1.教學(xué)設(shè)計(jì)

        目前,我校的《計(jì)算機(jī)程序設(shè)計(jì)》課程講授的是C語言,C語言功能強(qiáng)大、應(yīng)用靈活,但是其語法細(xì)節(jié)特別多,所以在課堂講授時(shí)不能面面俱到,需要抓住重點(diǎn)和難點(diǎn)進(jìn)行精講。從問題求解能力培養(yǎng)的角度來說:基本表達(dá)式和控制結(jié)構(gòu)是基礎(chǔ),要求熟練掌握;函數(shù)則是課程的重點(diǎn),這是進(jìn)行封裝和抽象的主要語言機(jī)制;數(shù)組、字符串、結(jié)構(gòu)等復(fù)合數(shù)據(jù)類型則是解決實(shí)際問題經(jīng)常使用的,應(yīng)結(jié)合實(shí)際問題加強(qiáng)練習(xí);指針是C語言的精髓,但也是傳統(tǒng)的難點(diǎn),這部分內(nèi)容可以結(jié)合教學(xué)實(shí)際情況進(jìn)行合理取舍。

        教學(xué)過程中,筆者結(jié)合教學(xué)內(nèi)容引入了豐富的教學(xué)案例[4],見表1所示。表中這些原生態(tài)的案例都有實(shí)際的工程應(yīng)用背景,授課時(shí)圍繞如何分析解決這些真實(shí)的問題,啟發(fā)學(xué)生一步步思考,在過程中讓學(xué)生體會(huì)如何把一個(gè)現(xiàn)實(shí)問題轉(zhuǎn)成計(jì)算機(jī)求解的步驟,以此來培養(yǎng)學(xué)生針對(duì)實(shí)際問題的分析和求解能力,從而實(shí)現(xiàn)把編程知識(shí)的講授有機(jī)植入到問題求解能力的訓(xùn)練中。

        程序設(shè)計(jì)的經(jīng)典公式是:程序=數(shù)據(jù)結(jié)構(gòu)+算法。教學(xué)內(nèi)容就是按照數(shù)據(jù)結(jié)構(gòu)(如何表示數(shù)據(jù))和算法(如何處理數(shù)據(jù))兩條線索進(jìn)行組織的,對(duì)于每個(gè)實(shí)際問題啟發(fā)學(xué)生分析出數(shù)據(jù)結(jié)構(gòu)和算法。同時(shí),在這個(gè)過程中還要強(qiáng)調(diào)對(duì)程序從結(jié)構(gòu)和效率等方面進(jìn)行持續(xù)優(yōu)化,并結(jié)合工程實(shí)踐經(jīng)驗(yàn)介紹編程技巧,最后還設(shè)計(jì)合適的課堂練習(xí)進(jìn)一步加強(qiáng)學(xué)習(xí)效果。

        2.案例分析

        這里以多維數(shù)組為例進(jìn)行具體教學(xué)展示。多維數(shù)組是學(xué)完一維數(shù)組之后,一般以二維數(shù)組為例來學(xué)習(xí)多維數(shù)組。這一講是以“地形導(dǎo)航”為教學(xué)案例實(shí)施教學(xué)。

        地形導(dǎo)航是無人機(jī)等系統(tǒng)設(shè)計(jì)的關(guān)鍵部分,系統(tǒng)預(yù)先存儲(chǔ)了任務(wù)區(qū)域的地形信息,然后根據(jù)當(dāng)前所處位置和目的地,自動(dòng)規(guī)劃出飛行路線等??梢钥紤]把地面劃分成網(wǎng)格,逐塊存儲(chǔ)各類地形信息(如海拔高度)。首先給出說明:山峰是四周海拔都低于中心點(diǎn)的位置(排除邊界上的位置),山谷是四周海拔都高于中心點(diǎn)的位置(排除邊界上的位置)。如圖1所示,可以把地形網(wǎng)格中的海拔高度用一個(gè)二維數(shù)組進(jìn)行表示,圖1(b)中橢圓框標(biāo)出的就是符合條件的山峰節(jié)點(diǎn)。這一講的任務(wù)是編寫一個(gè)地形導(dǎo)航分析程序,分析輸出地形網(wǎng)格中山峰、山谷的位置和數(shù)量等信息。

        1)數(shù)據(jù)結(jié)構(gòu)

        首先提出問題:程序中如何表示地形網(wǎng)格?因?yàn)榈匦尉W(wǎng)格有多行多列,可以用多個(gè)一維數(shù)組,但地形網(wǎng)格大小不確定,所以多個(gè)一維數(shù)組并不合適。由此自然過渡到用矩陣來表示,然后引出C語言是用二維數(shù)組來表示矩陣。在給出二維數(shù)組的概念和聲明形式之后,得出求解“地形導(dǎo)航”問題所使用的數(shù)據(jù)結(jié)構(gòu):用二維浮點(diǎn)數(shù)組來表示地形網(wǎng)格。

        接下來的問題是如何給地形網(wǎng)格存入數(shù)據(jù),首先介紹初始化二維數(shù)據(jù)的語法和示例代碼,重點(diǎn)強(qiáng)調(diào)初始化二維數(shù)組時(shí)只能省略第一維,然后示范初始化地形網(wǎng)格的代碼。

        2)算法設(shè)計(jì)

        “地形導(dǎo)航”重點(diǎn)要解決的問題如何找到所有山峰?啟發(fā)學(xué)生進(jìn)行算法設(shè)計(jì):遍歷二維地形網(wǎng)格數(shù)組中的所有節(jié)點(diǎn)(但要排除邊界上的節(jié)點(diǎn),如圖(b)虛線框所示),依次與四周節(jié)點(diǎn)(上、下、左、右四個(gè)節(jié)點(diǎn))進(jìn)行比較,判斷是否滿足山峰的條件。其中的關(guān)鍵如何遍歷地形網(wǎng)格以及如何與四周節(jié)點(diǎn)進(jìn)行比較,這里需要學(xué)會(huì)使用二維數(shù)組。二維數(shù)組的遍歷一般是通過兩層的嵌套循環(huán)實(shí)現(xiàn),對(duì)二維數(shù)組元素的訪問關(guān)鍵在于設(shè)置正確的行列下標(biāo)。然后啟發(fā)學(xué)生分析四周節(jié)點(diǎn)的具體行列下標(biāo),最后給出查找山峰節(jié)點(diǎn)的示例代碼。

        查找山谷節(jié)點(diǎn)的過程則可以作為課堂練習(xí),由學(xué)生模仿查找山峰節(jié)點(diǎn)代碼自行完成。

        3)程序優(yōu)化

        在完成查找山峰和山谷的代碼之后,發(fā)現(xiàn)兩部分的代碼非常類似,提出新的問題:能否用函數(shù)對(duì)上述代碼進(jìn)行優(yōu)化,從而引入二維數(shù)組如何作為函數(shù)的參數(shù)?在這一部分,重點(diǎn)需要指出C語言中二維數(shù)組作為函數(shù)參數(shù)時(shí)不能省略第二維的大小。在此基礎(chǔ)上,定義一個(gè)查找地形網(wǎng)格節(jié)點(diǎn)的函數(shù),函數(shù)參數(shù)包含一個(gè)表示地形網(wǎng)格的二維數(shù)組,以及查找山峰或山谷的標(biāo)志參數(shù)。

        4)課堂練習(xí)

        在之前的基礎(chǔ)上,這一講設(shè)計(jì)的課堂練習(xí)是查找地形網(wǎng)格中的鞍點(diǎn),所謂鞍點(diǎn)是指節(jié)點(diǎn)在所在行最大,并且在所在列中最小。這個(gè)問題與之前的教學(xué)內(nèi)容一脈相承,主要目的也是練習(xí)如何使用二維數(shù)組,但比查找山峰和山谷要略微復(fù)雜。具體實(shí)現(xiàn)時(shí),可以先假設(shè)的每個(gè)網(wǎng)格節(jié)點(diǎn)都是鞍點(diǎn),然后把當(dāng)前節(jié)點(diǎn)與所在行(和列)的其它節(jié)點(diǎn)進(jìn)行比較,如果存在反例則不是鞍點(diǎn)。

        最后,這一講通過“地形導(dǎo)航”這個(gè)案例,把二維數(shù)組的定義、初始化、應(yīng)用、函數(shù)參數(shù)等主要知識(shí)貫穿于問題求解能力的訓(xùn)練中,這個(gè)過程中注重啟發(fā)學(xué)生思考如何設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)和算法,并配合恰當(dāng)?shù)恼n堂練習(xí)以加強(qiáng)教學(xué)效果。

        3.課程實(shí)踐

        計(jì)算機(jī)程序設(shè)計(jì)是一門實(shí)踐性非常強(qiáng)的課程,而問題求解是一個(gè)復(fù)雜且綜合的過程,真正的求解能力只有在編程實(shí)踐中鍛煉、體會(huì)出來的?;谖倚i_發(fā)的Trustie[5]和Educoder[6]兩個(gè)網(wǎng)絡(luò)平臺(tái),課程開展了以下三個(gè)方面實(shí)踐活動(dòng)。

        1)Trustie網(wǎng)絡(luò)教學(xué)平臺(tái)

        Trustie網(wǎng)絡(luò)教學(xué)平臺(tái)除了可以管理課程資源外,一種很重要的功能就是可以在上面布置程序設(shè)計(jì)題,學(xué)生提交代碼后,平臺(tái)可以按之前設(shè)計(jì)好的測試用例對(duì)學(xué)生提交程序進(jìn)行自動(dòng)測試,只有所有的測試用例都通過才能分。除了課堂練習(xí)外,課后要在Trustie布置一些編程實(shí)踐題目,內(nèi)容是與本次上課密切相關(guān),除了起鞏固教學(xué)效果的基礎(chǔ)題目,還有部分難度較大的拓展題。

        2)Educoder編程實(shí)訓(xùn)平臺(tái)

        Educoder編程實(shí)訓(xùn)平臺(tái)可以實(shí)現(xiàn)對(duì)于單元知識(shí)點(diǎn)的檢測和訓(xùn)練。該平臺(tái)是一個(gè)游戲闖關(guān)式的實(shí)訓(xùn)環(huán)境,只有測試用例都通過才能過關(guān)得經(jīng)驗(yàn)值。網(wǎng)站上還提供很多與本單元相關(guān)的背景知識(shí),便于學(xué)生自學(xué)。該平臺(tái)的實(shí)踐完成時(shí)間比較寬松,一般是每個(gè)單元開始上課就布置下去,學(xué)生自主選擇時(shí)間完成。

        3)綜合實(shí)踐

        在課程后期會(huì)布置一個(gè)綜合性的實(shí)踐環(huán)節(jié),要求1~2人一組編寫一個(gè)有一定規(guī)模的實(shí)用程序。從最后完成情況看,選題多為掃雷、俄羅斯方塊等小游戲,以及跟學(xué)習(xí)生活相關(guān)的小應(yīng)用,作品的平均代碼在400行以上。

        這些教學(xué)實(shí)踐極大程度地調(diào)動(dòng)了學(xué)生自主學(xué)習(xí)的積極性和學(xué)習(xí)興趣,激發(fā)了學(xué)生的編程潛能,學(xué)生的問題求解能力得到了全面提高。

        4.結(jié)語

        實(shí)施教學(xué)改革幾年以來,教學(xué)效果顯著。近幾年筆者所負(fù)責(zé)教學(xué)班的期末考試成績?cè)谌6际敲星懊?,在課程完結(jié)之后,班上有多個(gè)學(xué)生還積極參加了ACM等程序設(shè)計(jì)競賽,獲得了多項(xiàng)國家級(jí)獎(jiǎng)勵(lì)。在這些工作的基礎(chǔ)上,以問題求解能力的培養(yǎng)為中心的計(jì)算機(jī)程序設(shè)計(jì)的評(píng)價(jià)和反饋機(jī)制仍需進(jìn)一步研究。

        參考文獻(xiàn):

        [1]Jeannette M. Wing.Computational Thinking[J].Communica

        tions of the ACM,2006(3):33-35.

        [2]謝志英,王靜,陳靜.C語言課程中學(xué)生問題求解能力的培養(yǎng)[J].計(jì)算機(jī)教育,2011,(3):56-61.

        [3]裘宗燕.今天的C程序設(shè)計(jì)課教什么, 怎么教——兼議《從問題到程序》的修訂[J].計(jì)算機(jī)教育,2012, (13):24-32.

        [4]Delores,M. Etter.宮曉利等譯.工程問題C語言求解[M].北京:清華大學(xué)出版社,2005.

        [5]https://www.trustie.net/

        [6]https://www.educoder.net/

        猜你喜歡
        教學(xué)案例
        外研社選修六Module 3 Roy’s story教學(xué)案例
        程序設(shè)計(jì)課程的教學(xué)理念與教學(xué)方法探究
        OOAD與MVC模式在軟件工程教學(xué)案例中的應(yīng)用
        大學(xué)計(jì)算機(jī)基礎(chǔ)一體化教學(xué)改革實(shí)施和教學(xué)效果
        教學(xué)案例的內(nèi)涵及其應(yīng)用意義
        課堂因生成而精彩
        生物教學(xué)中培養(yǎng)學(xué)生核心素養(yǎng)的四個(gè)對(duì)話視角
        充分整合教材資源 優(yōu)化歷史課堂教學(xué)
        小學(xué)數(shù)學(xué)課堂導(dǎo)入技巧及案例分析
        考試周刊(2016年88期)2016-11-24 13:49:44
        反轉(zhuǎn)課堂模式與數(shù)學(xué)教學(xué)案例
        亚洲一区二区三区偷拍视频| 午夜性刺激免费视频| 国产一区二区丰满熟女人妻| 色偷偷亚洲女人的天堂| av在线免费观看网站,| 国产成人a在线观看视频免费| 精品欧美一区二区在线观看| 99久久国语露脸国产精品| 女优av性天堂网男人天堂| 亚洲av中文无码乱人伦在线视色 | 92精品国产自产在线观看48页 | 国产av精品一区二区三区久久| 屁屁影院ccyy备用地址 | 99久久精品日本一区二区免费| √最新版天堂资源在线| 国产99视频一区二区三区| 精品国产亚洲亚洲国产| 成人精品一区二区三区中文字幕| 国产福利酱国产一区二区| 亚洲成生人免费av毛片| 狠狠cao日日橹夜夜十橹| 东北寡妇特级毛片免费| av中文字幕少妇人妻| 亚洲国产av一区二区不卡| 亚洲女同一区二区| 成年女人永久免费看片| 国产后入内射在线观看| 最新国产不卡在线视频| 国产麻豆md传媒视频| 亚洲精品6久久久久中文字幕| 隔壁人妻欲求不满中文字幕| 伊人大杳焦在线| 亚洲男同志gay 片可播放| 被驯服人妻中文字幕日本| 二区三区三区视频在线观看| 成人三级a视频在线观看| 手机看片福利日韩国产| 白白色最新福利视频二| 日本大片免费观看视频| 日本在线视频网站www色下载| av成人资源在线观看|