新岳乱合集目录500伦_在教室里被强h_幸福的一家1—6小说_美女mm131爽爽爽作爱

免費咨詢電話:400 180 8892

您的購物車還沒有商品,再去逛逛吧~

提示

已將 1 件商品添加到購物車

去購物車結(jié)算>>  繼續(xù)購物

您現(xiàn)在的位置是: 首頁 > 免費論文 > 學(xué)校高校財務(wù)管理論文 > C++/C語言的多重指針課堂教學(xué)設(shè)計

C++/C語言的多重指針課堂教學(xué)設(shè)計

C++/C 指針 教學(xué)設(shè)計
  引言
  “C++/C”是一門計算機程序設(shè)計高級語言,內(nèi)容豐富,其中的“指針”部分是重要內(nèi)容之一?!爸羔槨敝械摹岸嘀刂羔槨笔墙虒W(xué)難點,普遍認(rèn)為這個內(nèi)容“難教難學(xué)”。如何突破這個教學(xué)難點?在現(xiàn)有的相關(guān)文獻(xiàn)中是否有成功的方法可以借鑒?文獻(xiàn)[1]是介紹“C++”的著名教材。在這本書里,作者用兩個例子完成了“多重指針”的介紹:第一個例子是“指針數(shù)組”,第二個例子是“指向該數(shù)組元素的指針”,即“指向指針的指針”。這兩個例子,難度跨度過大,學(xué)生不容易理解和掌握該概念。文獻(xiàn)[2]將二重指針分別和變量以及數(shù)組結(jié)合在一起, 討論了二級指針變量與二級指針數(shù)據(jù)的用法與區(qū)別。除了上述文獻(xiàn)之外,還有不少文獻(xiàn)討論C++/C教學(xué)法。文獻(xiàn)[3] 提出了C++/C教學(xué)的“指導(dǎo)思想”:“正確處理新理論、新技術(shù)與舊內(nèi)容的關(guān)系”等。文獻(xiàn)[4] 提出了如下教學(xué)方法:采用啟發(fā)式教學(xué)、采用任務(wù)驅(qū)動教學(xué)法、采用“框架法”和“求異法”和采用“多媒體”等。文獻(xiàn)[5] 結(jié)合教學(xué)實踐,提出了“漸進(jìn)式教學(xué)法”和“啟發(fā)式教學(xué)法”,主張通過“編程”來理解新概念,通過“由易到難”啟發(fā)學(xué)生并引入新概念。
  受以上參考文獻(xiàn)啟發(fā),本文將提出一個突破該教學(xué)難點的教學(xué)過程,以課堂教學(xué)設(shè)計的形式介紹于下:
  一、C++/C多重指針的課堂教學(xué)設(shè)計
  我們先將教學(xué)的基本條件以及學(xué)生的基本情況做一介紹,然后再談?wù)n堂教學(xué)設(shè)計的內(nèi)容和步驟。
 ?。ㄒ唬┙虒W(xué)的基本條件
  一間教室,可容納100人左右,配備有多媒體教學(xué)設(shè)備。
  (二)學(xué)生的基本情況
  學(xué)生在接觸C++/C之前僅學(xué)過《計算機應(yīng)用基礎(chǔ)》,從未接觸過另外的編程語言,也沒有學(xué)過另外的計算機課程。對于該課程,學(xué)生已學(xué)過“函數(shù)”、“數(shù)組”和“單重指針”等內(nèi)容。
 ?。ㄈ┙虒W(xué)目的
  讓學(xué)生理解并掌握概念:“二重指針”和“多重指針”。
 ?。ㄋ模┙虒W(xué)設(shè)計的基本思想
  基于以上的教學(xué)基本條件和學(xué)生的實際情況,筆者認(rèn)為應(yīng)該按以下原則進(jìn)行教學(xué):
  先簡后繁,先易后難,循序漸進(jìn),前后對比,歸納總結(jié)。
  下面我們按這個原則設(shè)計教學(xué)過程。
 ?。ㄎ澹┙虒W(xué)過程
  預(yù)備:在課堂上,老師降落銀幕,打開投影儀,啟動電腦,啟動VC系統(tǒng),進(jìn)入編輯界面;老師組織學(xué)生簡單地復(fù)習(xí)一下指針的概念,然后介紹下面的內(nèi)容:
  1、多重指針(含單重指針,下同)與變量的關(guān)系
  我們將通過一個簡單例子,引入多重指針的概念,并舉例該概念的初步應(yīng)用。在這里,老師結(jié)合下例指出:一個變量對應(yīng)一個內(nèi)存單元,我們可以用一重指針變量指向這個內(nèi)存單元,如果有必要的話,也可以用多重指針變量通過特定的傳遞關(guān)系指向這個內(nèi)存單元。
  老師將下列程序輸入系統(tǒng)并運行,將結(jié)果輸出到銀幕上:
  void main()
  {int a=12,*p, **q,***r ;
  p=&a;
  q=&p;
  r=&q;
  cout<  a=13;
  cout<  *p=14;
  cout<  **q=15;
  cout<  ***r=16;
  cout<  }
  銀幕上顯示的結(jié)果是:
  12,12,12,12
  13,13,13,13
  14,14,14,14
  15,15,15,15
  16,16,16,16
  當(dāng)上面的程序運行結(jié)束之后,老師面向?qū)W生分析上述程序:
  該程序的前三條語句“p=&a; q=&p; r=&q;”,其功能對應(yīng)下面的示意圖:
  變量a是一個已經(jīng)初始化或者賦值的整形變量,語句“p=&a;”規(guī)定了一重指針變量p指向變量a;語句“q=&p”規(guī)定了二重指針變量q經(jīng)過一重指針變量p指向變量a;語句“r=&q;”規(guī)定了三重指針變量連續(xù)經(jīng)過兩個指針變量q和p而指向變量a。四條語句“a=13; *p=14;**q=15;和***r=16;”的功能都是對同一個變量a賦值,以上程序運行結(jié)果也驗證了這一點。
  老師還應(yīng)指出:三條語句“p=&a; q=&p; r=&q;”是有序的,是由p、q、r的定義所規(guī)定的,不可顛倒順序,也不能“越級”,譬如“*q=&a;”或者“q=&a;”都是錯誤的,當(dāng)然“**r=&a”或者“*r=&p”也是錯的。另外,“&(&a)”總是錯的,因為符號“&”是取變量的地址,而地址,譬如&a,是“值”而不是變量,所以 “&(&a)”無意義。
  老師還應(yīng)強調(diào)指出:此例中的int可用float、double或者char代換,其程序和結(jié)論相同,但應(yīng)該注意的是,當(dāng)用類型char代換int之后,給變量賦值時可賦字符形的,也可賦整形的。
  最后,老師可以補充:此例中的變量a,也可以是數(shù)組元素,因為一個數(shù)組元素等價一個變量,只是命名規(guī)則不同而已。
  2、多重指針與字符串(或者字符數(shù)組)的關(guān)系
  這一步驟是為介紹“指針數(shù)組和多重指針”做準(zhǔn)備,同時也是為了拓寬多重指針的應(yīng)用范圍。
  在討論“多重指針與字符串(或者字符數(shù)組)的關(guān)系”之前,老師應(yīng)強調(diào):在C++/C語言里,字符串有其特殊的操作規(guī)則,特別是將一個字符串常量賦給一個字符指針或者輸入到一個字符數(shù)組時,該指針或者數(shù)組名接收該字符串首字符的地址,而不是接收字符串本身,將字符串和多重指針結(jié)合時更要注意這一點。另外,要輸出整個字符串,只需將該字符串的首字符地址置入輸出語句即可。

服務(wù)熱線

400 180 8892

微信客服