国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于創(chuàng)新思維的C語言指針教學(xué)研究

2013-04-29 12:41:35史旅華付勇智
新課程研究·職業(yè)教育 2013年6期
關(guān)鍵詞:學(xué)以致用創(chuàng)新思維

史旅華 付勇智

摘要:在C語言的教學(xué)中,如何讓學(xué)生理解、掌握和靈活應(yīng)用指針一直是教學(xué)的難點。文章研究了基于創(chuàng)新思維的C語言指針教學(xué)方法,引導(dǎo)學(xué)生自我發(fā)現(xiàn)問題、解決問題,達(dá)到學(xué)以致用的目標(biāo)。

關(guān)鍵詞:C語言指針;創(chuàng)新思維;探究發(fā)現(xiàn);學(xué)以致用

中圖分類號:G712 文獻(xiàn)標(biāo)識碼:A 文章編號:1671-0568(2013)32-0075-02

指針是一個重要的數(shù)據(jù)類型,指針的應(yīng)用可以使代碼高效、簡潔,但也最容易出錯。指針在函數(shù)傳值、內(nèi)存使用、數(shù)組遍歷等使用上的靈活性及其類型的多樣性,使得指針教學(xué)成為C語言教學(xué)的重點,也是難點,是教師與學(xué)生花精力和時間最多,而效果相對較差的知識點。在C語言教學(xué)中,指針的講授往往處于非常尷尬的地位,教師與學(xué)生都感到心有余而力不足。

一、教學(xué)現(xiàn)狀

指針的類型很多,這是學(xué)生正確使用指針的一大障礙。指針變量的值是一個整數(shù)(內(nèi)存字節(jié)編號),但與int不同,它代表內(nèi)存的一個地址,需符合系統(tǒng)的地址編碼規(guī)則。使用時可以指向不同的數(shù)據(jù)類型,學(xué)生很容易犯錯。

C語言規(guī)定,指針變量只能進(jìn)行加減法運(yùn)算:指針變量-指針變量,參與運(yùn)算的指針變量必須是同類型的指針變量并指向同一塊有效的內(nèi)存區(qū)域才有意義,其結(jié)果是一個整數(shù);指針變量的值±整數(shù)其結(jié)果為指向同一塊有效的內(nèi)存區(qū)域,且該內(nèi)存區(qū)域保存的數(shù)據(jù)類型與指針變量類型相同才有意義,對比較運(yùn)算也有相同的限制。這也是學(xué)生很難理解的知識點,使用時容易出錯。

講授指針賦值操作時,只是告訴學(xué)生有兩種方式:一種是把某個同類型變量的地址或同類型指針變量的值賦給一個指針變量;另一種是把申請內(nèi)存庫函數(shù)的返回值賦給一個指針變量。學(xué)生難以理解直接賦一個地址給指針變量為什么經(jīng)常出錯。

二、基于創(chuàng)新思維的教學(xué)

1.創(chuàng)新思維內(nèi)涵

創(chuàng)新思維就是把已有的思維材料進(jìn)行整理抽象,以適應(yīng)新的環(huán)境,進(jìn)而求解新的問題。在教學(xué)中,采用何種方法能啟發(fā)學(xué)生獲得知識呢?美國教育家布魯納主張教學(xué)采用“探究發(fā)現(xiàn)”法,引導(dǎo)學(xué)生像科學(xué)家那樣探求知識,而不是被動接受教師的灌輸。不論是在校學(xué)生的發(fā)現(xiàn),還是科學(xué)家致力于日趨尖端的研究領(lǐng)域的發(fā)現(xiàn),按實質(zhì)來說,都是把現(xiàn)象重新組織和轉(zhuǎn)換,使人能超越現(xiàn)象再進(jìn)行組合,從而獲得新的領(lǐng)悟。

對教學(xué)而言的創(chuàng)新思維,一般是指對引導(dǎo)學(xué)生利用已有的知識,發(fā)現(xiàn)新問題、引入新方法、解決新問題,使學(xué)生了解創(chuàng)新的過程與方法,理解理論源于實際的本質(zhì),進(jìn)而培養(yǎng)學(xué)生的創(chuàng)新思維和科學(xué)素養(yǎng)。

2.基于創(chuàng)新思維的指針教學(xué)

C語言規(guī)定,指針變量只能保存地址,其實在學(xué)習(xí)指針之前,學(xué)生已經(jīng)使用過地址。如代碼int x;scanf(“%d”,&x);&x就是變量x的地址,代碼的含義就是聲明一個int型變量x,并把x的地址傳給scanf()函數(shù)。學(xué)習(xí)指針之前,只告訴學(xué)生記住變量前的&;學(xué)習(xí)指針之后,教師就應(yīng)根據(jù)內(nèi)存模型,告訴學(xué)生在計算機(jī)中每個內(nèi)存空間(字節(jié))對應(yīng)的地址是唯一的,scanf函數(shù)功能就是把從鍵盤上輸入的數(shù)據(jù)保存在內(nèi)存中,供主調(diào)函數(shù)使用。所以,主調(diào)函數(shù)只要把變量地址(內(nèi)存地址)傳遞給scanf函數(shù)即可。這個地址是對scanf函數(shù),主調(diào)函數(shù)都是可見,因而都可以操作其中的數(shù)據(jù),這樣就實現(xiàn)了scanf函數(shù)的功能。

為了引導(dǎo)學(xué)生利用創(chuàng)新思維,學(xué)習(xí)新知識指針。可以幫助學(xué)生回顧,當(dāng)計算機(jī)執(zhí)行類似int x;這樣的聲明語句時,系統(tǒng)的行為,來建立新舊知識的聯(lián)系。①系統(tǒng)給x分配了與int類型相符的連續(xù)空間(vc是4字節(jié));②系統(tǒng)記錄了這個空間第一個字節(jié)的編號,即x的地址;③系統(tǒng)標(biāo)識了這個空間中保存的數(shù)據(jù)是int類型的數(shù)據(jù)。

在程序開發(fā)中,經(jīng)常需要把多個具有相同屬性的數(shù)據(jù)保存在連續(xù)區(qū)域,而數(shù)據(jù)的個數(shù)需要到運(yùn)行時才能確定。只要能記住這塊內(nèi)存開始的位置(即內(nèi)存地址,也就是第一個字節(jié)的編號),通過簡單的加減整數(shù)操作訪問到全部的數(shù)據(jù)。

首先,教師需要引導(dǎo)學(xué)生思考,C語言程序要實現(xiàn)這種場景就必須引入新的數(shù)據(jù)類型:這個數(shù)據(jù)類型的變量可以保存數(shù)據(jù)空間地址,可以與一個整數(shù)相加減,還需要標(biāo)識保存在數(shù)據(jù)空間中的數(shù)據(jù)的數(shù)據(jù)類型。指出這種新數(shù)據(jù)類型就是C語言中的指針類型,它具有兩種屬性(地址及保存在該內(nèi)存空間數(shù)據(jù)的數(shù)據(jù)類型),給出新的數(shù)據(jù)類型——指針變量的聲明格式。例如,int * x;其中*標(biāo)識x是一個指針變量,int標(biāo)識這個x中只能保存int類型數(shù)據(jù)空間的地址。

其次,教師引導(dǎo)學(xué)生分析這種新的數(shù)據(jù)類型,如int *x;根據(jù)學(xué)過的變量聲明格式可知,x是一個int *類型的變量(int類型的指針變量),*x是一個int類型的變量。通過例子,利用數(shù)據(jù)的有效性,使學(xué)生明白x中的值必須是系統(tǒng)分配給程序的有效內(nèi)存的地址才有意義,從而理解指針運(yùn)算的本質(zhì)。此時,學(xué)生經(jīng)歷一個完整的發(fā)明過程,從應(yīng)用中發(fā)現(xiàn)現(xiàn)有知識不能解決或不完美,進(jìn)而引入一個能解決問題的新數(shù)據(jù)類型來圓滿解決問題。這就是創(chuàng)新思維。學(xué)生在學(xué)習(xí)新知識的同時,建立了新舊知識的聯(lián)系及使用場景。

最后,教師指導(dǎo)學(xué)生進(jìn)行總結(jié),聲明指針變量時(int *x;),系統(tǒng)的行為:①系統(tǒng)給x分配了與地址值相符的連續(xù)空間(vc是4字節(jié));②系統(tǒng)記錄了這個空間第一個字節(jié)的編號,即x本身的地址;③系統(tǒng)標(biāo)識了x中只能指向保存int類型數(shù)據(jù)的內(nèi)存空間;④x中的值必須是系統(tǒng)分配給程序的有效內(nèi)存空間的地址才有意義。

引導(dǎo)學(xué)生總結(jié)指針變量的運(yùn)算規(guī)律,計算機(jī)的內(nèi)存有很多,但只有系統(tǒng)分配給程序的內(nèi)存才能被使用。在程序中對指針變量進(jìn)行操作,其本質(zhì)是為了對指針變量所指向的內(nèi)存地址中的數(shù)據(jù)進(jìn)行操作。要使指針變量指向有效的內(nèi)存空間,那么指針變量與指針變量之間只是減法運(yùn)算,而且參與運(yùn)算的指針變量是指向同一塊連續(xù)的內(nèi)存空間才有意義。指針變量與整數(shù)運(yùn)算的結(jié)果一定是與指針變量所指向地址屬于同一塊連續(xù)的有效內(nèi)存空間才有意義。

對于比較運(yùn)算來說,其本質(zhì)是由地址的特點決定的:地址值是內(nèi)存空間編號,只是序號而已。因此,指針變量的比較運(yùn)算只是為了確定內(nèi)存空間的位置關(guān)系,而內(nèi)存空間的位置關(guān)系只有指向同一塊連續(xù)的有效內(nèi)存空間才有意義。加法、乘法、除法等運(yùn)算,都不能保證運(yùn)算結(jié)果,是一個系統(tǒng)分配給程序的有效內(nèi)存地址,因而C語言規(guī)定指針變量進(jìn)行這些運(yùn)算是不合法的。

基于創(chuàng)新思維的教學(xué),引導(dǎo)學(xué)生按照知識獲取的規(guī)律學(xué)習(xí),理論源于實踐,當(dāng)原有的知識不能解決問題時就需引入新的理論,并利用新知識解決問題,達(dá)到學(xué)以致用的目標(biāo)。

參考文獻(xiàn):

[1]李俊萩等.C語言指針教學(xué)中的知識點分析與總結(jié)[J].計算機(jī)教育,2011,(08).

[2]于福生等.C語言課程中指針內(nèi)容體系設(shè)置的改革嘗試[J].計算機(jī)教育,2013,(04).

[3](美)杰羅姆.S.布魯納.布魯納教育論著選[M].邵瑞珍,張渭城譯.北京:人民教育出版社,1989.

[4]付勇智.基于目標(biāo)的C語言程序設(shè)計教學(xué)研究[J].新課程研究(中旬刊),2011,(12).

猜你喜歡
學(xué)以致用創(chuàng)新思維
培養(yǎng)高中化學(xué)教學(xué)中的綠色化學(xué)思想
分組合作教學(xué)法在中職《職業(yè)生涯規(guī)劃》中的應(yīng)用
考試周刊(2016年96期)2016-12-22 23:46:16
學(xué)以致用,引導(dǎo)學(xué)生嘗試寫詩
考試周刊(2016年21期)2016-12-16 10:03:36
初中科學(xué)復(fù)習(xí)課的有效性探究
新時期醫(yī)學(xué)生創(chuàng)新實踐能力培養(yǎng)的意義
物理教學(xué)中學(xué)生創(chuàng)新思維的培養(yǎng)研究
構(gòu)建優(yōu)質(zhì)高中數(shù)學(xué)課堂,實現(xiàn)活力教學(xué)
在經(jīng)濟(jì)新常態(tài)下地方本科院校大學(xué)生創(chuàng)新創(chuàng)業(yè)教育研究
中國市場(2016年33期)2016-10-18 14:22:47
巧用“錯誤”激活數(shù)學(xué)課堂的實踐與思考
成才之路(2016年26期)2016-10-08 11:45:16
培養(yǎng)職校生創(chuàng)新思維能力的研究
成才之路(2016年26期)2016-10-08 10:59:04
伊宁市| 绥宁县| 天全县| 嵩明县| 肥东县| 聂拉木县| 会昌县| 奇台县| 铜陵市| 德保县| 武乡县| 吉安县| 子洲县| 迁安市| 齐河县| 德保县| 海原县| 太保市| 诸暨市| 襄城县| 许昌县| 海林市| 神池县| 昭觉县| 西乌珠穆沁旗| 沾化县| 长治县| 来凤县| 麦盖提县| 内乡县| 交口县| 湖口县| 淳化县| 长葛市| 梧州市| 改则县| 右玉县| 罗源县| 康平县| 沙雅县| 武冈市|