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

        ?

        計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)課堂教學(xué)模型研討

        2019-07-01 05:43:20趙永梅張紅梅
        計(jì)算機(jī)教育 2019年6期
        關(guān)鍵詞:指針程序設(shè)計(jì)內(nèi)存

        安 利,趙永梅,張紅梅

        (空軍工程大學(xué) 裝備管理與無人機(jī)工程學(xué)院,陜西 西安710051)

        0 引 言

        計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)課程是各高校非計(jì)算機(jī)專業(yè)學(xué)生的必修課以及計(jì)算機(jī)專業(yè)的基礎(chǔ)課。C語言是當(dāng)前計(jì)算機(jī)程序設(shè)計(jì)中比較通用的語言,既有豐富的功能又有超強(qiáng)的表達(dá)能力,既有高級語言的各種優(yōu)點(diǎn),又有低級語言的很多特點(diǎn)。學(xué)習(xí)C語言,不僅需要機(jī)械記憶,還要具有形象思維和嚴(yán)密的邏輯推理能力。

        1 興趣模型

        恩格斯講過“興趣是最好的老師”,興趣是學(xué)習(xí)的動力,把學(xué)生的興趣引導(dǎo)到學(xué)習(xí)中來,是教學(xué)成功的一半。在C程序設(shè)計(jì)教學(xué)中,為了使學(xué)員盡快地進(jìn)入學(xué)習(xí)狀態(tài),在課程教學(xué)初期,就要想方設(shè)法將學(xué)生學(xué)習(xí)的積極性和興趣調(diào)動起來。如何調(diào)動呢?圖1為由3個階段構(gòu)成的興趣模型,分別是設(shè)置懸念階段、分析問題階段、解決問題階段。

        圖1 興趣模型

        第一階段,教師可以設(shè)置富有懸念的思考題,以提出問題為切入點(diǎn),通過收集典型的程序解決問題的實(shí)例,采用現(xiàn)實(shí)演示、屏幕演示、啟發(fā)提問等方式進(jìn)行導(dǎo)課,激發(fā)學(xué)生興趣,用興趣吸引學(xué)員自主學(xué)習(xí)體驗(yàn)學(xué)習(xí)的快樂。我們在一維數(shù)組的應(yīng)用中講到排序,教師以日常生活為例設(shè)置相關(guān)游戲,例如讓學(xué)生班長給6名班員從低到高進(jìn)行排隊(duì),其方法任意,不可少于兩種。游戲的過程中,讓學(xué)生仔細(xì)觀察兩種方法是否一樣。之后通過老師的引導(dǎo)告訴學(xué)生這個世界不是缺少問題,而是缺少發(fā)現(xiàn)。其實(shí)在每次排隊(duì)的過程背后,都隱含一個經(jīng)典的排序算法,具體是什么算法呢?

        第二階段,由教師主導(dǎo)通過學(xué)生的興趣點(diǎn),引發(fā)其主動探索問題,并創(chuàng)造性地多角度分析問題、求解問題。對上一階段引導(dǎo)學(xué)生發(fā)現(xiàn)的算法問題進(jìn)一步化解,先討論如何將個子最高的隊(duì)員作為隊(duì)尾隊(duì)員,也就是求最大值的過程。將第一次排隊(duì)的過程,通過演示仔細(xì)分析采用的方法,相鄰兩個隊(duì)員比較,按排序要求調(diào)整位置。這樣個子最高的隊(duì)員就排在末尾了,這個求最大值方法可稱之為鄰位比較法。將用鄰位法找最大值的過程稱為一趟處理,那么,繼續(xù)深入探討,將剩下的5名班員依次使用同樣的方法進(jìn)行第二趟、第三趟、第四趟處理,每趟中班員都兩兩比較,判斷交換,依次得到次高隊(duì)員的排列順序,5個隊(duì)員通過4趟就可以排好序了。這就是著名的冒泡排序,小值向前,大值向后,像水中的氣泡上浮。還可以通過其他排隊(duì)的方法總結(jié)出選擇排序、快速排序等算法。之后通過算法引導(dǎo)學(xué)生一步一步寫出核心代碼。整個游戲過程都由學(xué)生主導(dǎo),而教師僅作為配角對學(xué)生進(jìn)行啟發(fā)使其有所領(lǐng)悟。

        第三階段,引導(dǎo)學(xué)生將理論與實(shí)際相結(jié)合。利用真實(shí)的編程環(huán)境讓學(xué)員直觀感受通過程序設(shè)計(jì)求解問題的過程,達(dá)到提高學(xué)員的認(rèn)知水平,并以滲透程序設(shè)計(jì)思想為關(guān)鍵點(diǎn),培養(yǎng)學(xué)員創(chuàng)造性地分析問題、解決問題的意識。為了驗(yàn)證學(xué)生對之前算法的理解程度,可板書核心代碼,其間可在關(guān)鍵代碼處(如循環(huán)次數(shù))畫線填空,讓學(xué)生自己填充。之后在Visual C++6.0環(huán)境下進(jìn)行調(diào)試。最終將枯燥無味的“語言”課變得生動活潑。

        2 類比模型

        在程序設(shè)計(jì)基礎(chǔ)課程教學(xué)中有很多知識點(diǎn)對學(xué)生來講都屬于很抽象的內(nèi)容,例如指針對初學(xué)者來說就是一個很抽象的概念。指針比較難以從以前學(xué)過的數(shù)學(xué)等知識中找到相應(yīng)的原型,因此對于學(xué)生來說在概念的理解上會有一定的難度。指針能夠靈活處理內(nèi)存單元、分配內(nèi)存,表示復(fù)雜數(shù)據(jù)結(jié)構(gòu)如鏈表等這些優(yōu)點(diǎn)。如何讓學(xué)生能夠很快地理解指針概念并使用指針呢?我們可通過圖2所示類比模型逐步求解問題。類比模型分為4個階段,分別是問題啟發(fā)、層層遞進(jìn)、揭示本質(zhì)、靈活應(yīng)用。

        在第一階段問題啟發(fā)中,以指針為例,教師可以啟發(fā)學(xué)生思考指針與日常生活中有無相似之處,得以使抽象的問題具體化。指針就是地址,是計(jì)算機(jī)內(nèi)存單元的地址,所以使用指針就是要靈活地運(yùn)用計(jì)算機(jī)內(nèi)存的地址。這個概念比較抽象,要使這個抽象的問題具體化就要在教學(xué)過程中引導(dǎo)學(xué)生進(jìn)行類比。

        圖2 類比模型

        第二階段層層遞進(jìn),教師帶領(lǐng)學(xué)生將理論與實(shí)踐相結(jié)合,找到形象的比喻。如圖3所示以學(xué)生宿舍形象比喻計(jì)算機(jī)的內(nèi)存,內(nèi)存單元相當(dāng)于宿舍中的每一個房間;“地址”就是內(nèi)存單元的編號,相當(dāng)于宿舍的門牌號;內(nèi)存中存放的數(shù)據(jù),相當(dāng)于各房間的學(xué)生如圖3。

        第三階段揭示本質(zhì),通過學(xué)生宿舍的比喻對指針的概念已有初步的理解,教師將引導(dǎo)學(xué)生回歸教材,主動對指針進(jìn)行探索,進(jìn)一步創(chuàng)造性地分析以達(dá)到熟知概念。最終使得晦澀的問題直觀化、難懂的問題親切化。

        指針變量就是用來存放指針(地址)的變量,即這個變量中存放的是另一個變量的地址(即存放的是指針),可用“傳達(dá)室”作比喻。傳達(dá)室也是宿舍樓中的一個房間,只是住在那里的人比較特別,他知道哪個房間里住的是哪些人。在講到“直接訪問”和“間接訪問”時,用傳達(dá)室這個比喻很容易讓學(xué)生明白。如知道門牌號,直接找到學(xué)生,相當(dāng)于“直接訪問”,如果通過傳達(dá)室查詢到門牌號再找人,相當(dāng)于“間接訪問”。

        在此,必須理解“指針變量的地址”“指針變量的值”和“指針指向的目標(biāo)變量的值”3 個重要概念。例如:程序1中定義了一個整型變量i和一個指向整型變量i的指針變量p,如圖4所示指針變量p的地址就是系統(tǒng)為p分配的存儲空間的首地址,即1000;指針變量p的值,就是它指向的目標(biāo)變量i的首地址,即2020;p指向的目標(biāo)變量的值,就是目標(biāo)變量i的值,即整型數(shù)“5”。

        程序1:

        void main( )

        { ……

        int i=5;

        int *p=&i;

        ……

        }

        圖4 內(nèi)存分配圖

        指針變量是一種特殊的變量。指針變量具有普通變量的屬性,但指針變量又不同于普通變量,它的特殊性具體表現(xiàn)在兩個方面:一是指針變量的值只能是地址。程序中的每一個實(shí)體(如變量、數(shù)組、函數(shù)等)在內(nèi)存中都占據(jù)一個可標(biāo)志的存儲空間,每一個存儲空間由若干個字節(jié)組成,在內(nèi)存中每一個字節(jié)都有一個地址。一個存儲空間的地址就是該存儲空間中第一個字節(jié)的地址。因此,無論指針變量存儲的是什么數(shù)據(jù)類型的地址,指針變量本身在內(nèi)存中所占字節(jié)數(shù)都是固定的,所以存儲結(jié)構(gòu)體變量的地址和存儲簡單變量的地址需要的存儲空間長度是相等的。二是指針變量的類型是指針變量所指向的存儲空間中存儲數(shù)據(jù)的類型。特別強(qiáng)調(diào)的是,不同類型的指針變量不能直接相互賦值,如不能將一個整型變量的地址賦值給一個實(shí)型指針變量。

        第四階段靈活應(yīng)用,培養(yǎng)學(xué)員靈活運(yùn)用所學(xué)知識的創(chuàng)新思維能力,激發(fā)學(xué)員學(xué)習(xí)熱情。就是在熟知概念的同時,打開學(xué)員的思路,使其掌握一類問題的求解方法,并能夠觸類旁通。

        3 漸近模型

        由于學(xué)生是剛剛接觸計(jì)算機(jī)程序設(shè)計(jì),必須堅(jiān)持“通俗、可接受性”的教學(xué)原則,在授課中,盡量不以傳統(tǒng)的教學(xué)方式中把重點(diǎn)放在語法規(guī)則上為側(cè)重點(diǎn),而應(yīng)該引導(dǎo)學(xué)生設(shè)計(jì)程序的算法,介紹程序設(shè)計(jì)的基本方法和技巧,在講算法的案例中提出語法規(guī)則。由淺入深,融會貫通,逐步突破難點(diǎn)。我們可通過圖5所示漸近模型逐步解決問題。漸近模型分為3個階段,分別是由淺入深、對比分析、問題求解。

        圖5 漸近模型

        第一階段由淺入深。難點(diǎn)突破在教學(xué)活動中十分重要,如何突破難點(diǎn),根據(jù)課程的性質(zhì)不同而不同,對C語言程序設(shè)計(jì)課程而言,從課程的結(jié)構(gòu)來講,指針類型的程序設(shè)計(jì)方法就是相對的難點(diǎn)。為了使學(xué)生能夠很透徹地理解指針變量與普通變量之間的區(qū)別,我們將會從淺顯的案例著手漸近突破。比如實(shí)現(xiàn)兩個數(shù)據(jù)的交換,可采取首先利用普通變量交換數(shù)據(jù)入手,然后使用函數(shù),逐漸引入指針的方法依次講解。以培養(yǎng)學(xué)員分析問題的能力較強(qiáng)的邏輯思維能力。

        第二階段對比分析。結(jié)構(gòu)化程序設(shè)計(jì)方法的特點(diǎn)之一是模塊化,因此采用函數(shù)是最簡潔的方法,我們可通過程序使用指針變量作為函數(shù)的形式參數(shù)接收主函數(shù)中實(shí)際參數(shù)的地址來實(shí)現(xiàn)兩個數(shù)據(jù)之間的交換。也可以通過用指針變量作為形式參數(shù)接收主函數(shù)中實(shí)際參數(shù)的首地址來實(shí)現(xiàn)字符串拷貝,來理解使用普通變量和指針變量之間的區(qū)別。通過設(shè)問引領(lǐng)學(xué)生自行總結(jié)其概念及應(yīng)用的方式方法,然后逐步引導(dǎo)他們繼續(xù)深入理解指針的概念及其應(yīng)用,并通過實(shí)例演示和對比分析來加深學(xué)生的印象。

        第三階段問題求解,可采用多種方法融入教學(xué),提高學(xué)員的綜合素質(zhì);分析學(xué)員現(xiàn)階段面臨的難點(diǎn)問題,引起共鳴,激發(fā)學(xué)員解決問題的欲望。

        4 通過實(shí)踐全面理解和掌握知識

        實(shí)驗(yàn)教學(xué)是課堂理論教學(xué)的重要輔助部分,是學(xué)習(xí)和回顧知識的重要環(huán)節(jié);C語言又是一門實(shí)踐非常強(qiáng)的課程,這個環(huán)節(jié)更是不可或缺。因此,在上機(jī)實(shí)踐之前應(yīng)充分準(zhǔn)備實(shí)踐材料,對上機(jī)內(nèi)容要做到有程序草稿,并且要做到對實(shí)踐的過程非常清晰,以便能夠與理論知識相結(jié)合。

        程序設(shè)計(jì)實(shí)踐的題目難度選擇在一定程度上決定了實(shí)驗(yàn)教學(xué)環(huán)節(jié)能否成功。如果題目太難,學(xué)員的精力重點(diǎn)可能會偏移到專業(yè)知識方面,偏離了課程設(shè)計(jì)的初衷;題目太簡單,不能充分鍛煉學(xué)員的軟件設(shè)計(jì)能力,課程設(shè)計(jì)起不到應(yīng)有的作用。因此,課程設(shè)計(jì)題目的難度應(yīng)當(dāng)適中,學(xué)生通過一定的努力就能完成,一方面可以發(fā)現(xiàn)知識點(diǎn)中自己沒有掌握的內(nèi)容,另一方面,可以提高他們的編程興趣,增強(qiáng)完成課程設(shè)計(jì)任務(wù)的信心,繼而更加鞏固編程和調(diào)試程序的能力,以達(dá)到能夠運(yùn)用計(jì)算機(jī)求解問題的能力。

        5 結(jié) 語

        C語言課程的教學(xué)有別于其他課程,概念多、規(guī)則多、枯燥、操作性強(qiáng)。要上好本門課程,必須不斷地探討和研究。C語言是一門計(jì)算機(jī)專業(yè)和非專業(yè)的重要基礎(chǔ)課程,具有很強(qiáng)的靈活性,教員不僅需要很強(qiáng)的責(zé)任心,還需要不斷地掌握學(xué)生的學(xué)習(xí)動態(tài),靈活地調(diào)整授課方法。此教學(xué)模型通過計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)課程教學(xué)應(yīng)用,達(dá)到了較好的效果。

        猜你喜歡
        指針程序設(shè)計(jì)內(nèi)存
        基于Visual Studio Code的C語言程序設(shè)計(jì)實(shí)踐教學(xué)探索
        “春夏秋冬”的內(nèi)存
        偷指針的人
        從細(xì)節(jié)入手,談PLC程序設(shè)計(jì)技巧
        電子制作(2019年9期)2019-05-30 09:42:04
        為什么表的指針都按照順時針方向轉(zhuǎn)動
        高職高專院校C語言程序設(shè)計(jì)教學(xué)改革探索
        基于改進(jìn)Hough變換和BP網(wǎng)絡(luò)的指針儀表識別
        電測與儀表(2015年5期)2015-04-09 11:30:42
        PLC梯形圖程序設(shè)計(jì)技巧及應(yīng)用
        ARM Cortex—MO/MO+單片機(jī)的指針變量替換方法
        基于內(nèi)存的地理信息訪問技術(shù)
        日本丰满熟妇hd| 拍摄av现场失控高潮数次| 97在线观看| 狠狠狠色丁香婷婷综合激情| 制服丝袜天堂国产日韩| 国产精品天天看大片特色视频| 97久久综合区小说区图片区| 少妇精品偷拍高潮少妇在线观看 | 国产区女主播在线观看| 天美传媒一区二区| 99久久人妻无码精品系列蜜桃| 色青青女同性恋视频日本熟女| 国产av一区二区三区在线播放| 人妻无码中文字幕| 欧美裸体xxxx极品少妇| 国产美女免费国产| 国产三级av在线播放| 亚洲精品中文字幕一区二区| 亚洲欧美综合区自拍另类| 精品福利视频一区二区三区| 99久久国内精品成人免费| 亚洲综合国产精品一区二区| 加勒比日韩视频在线观看| 女人被爽到高潮视频免费国产| 久久久无码一区二区三区| 中国产无码一区二区三区| 国产的自拍av免费的在线观看| 亚洲视频在线观看| 日本一区不卡在线| 亚洲av粉嫩性色av| 精品国产一区二区三区三级| 大肉大捧一进一出视频出来呀| 久久中文字幕日韩无码视频| 亚洲综合一区二区三区久久| 亚洲av中文无码乱人伦在线咪咕 | 国产无套粉嫩白浆在线| 伊伊人成亚洲综合人网7777| 日韩有码中文字幕第一页| 成人影院视频在线播放| 少妇夜夜春夜夜爽试看视频| 久久tv中文字幕首页|