c语言数组数据用指针查找,c语言数组与指针_指针篇_2011.ppt
c語言數(shù)組與指針_指針篇_2011
指 針
6.2 指針的概念6.3 指針與數(shù)組6.4 字符串的指針6.5 指針數(shù)組和指向指針的指針;6.2.1 地址與指針的概念 ;指針的概念;內(nèi)存地址;2、數(shù)組與地址 ;指針與指針變量 ;尋址; 指針變量的定義、初始化和引用 ;(二)、指針變量的引用方式 ;2、通過指針變量來引用所指向的變量;(三)、取地址運算符與指針運算符 ;&和*優(yōu)先級別 ;例如,設(shè)有變量a、指針變量pa,且pa已經(jīng)指向a。;例:用指針變量按從小到大的順序輸出三個整數(shù)。;6.3 指針與數(shù)組;指向一維數(shù)組的指針; 指向一維數(shù)組的指針變量的使用 ;● 當指針變量指向下標為i的數(shù)組元素時,引用數(shù)組元素的方 法如下:; 方法1,2引用數(shù)組元素的方法使用了“指針運算符”,稱為“指針法”;方法3,4引用數(shù)組元素的方法使用了“下標運算符([])”稱為“下標法”。;2、指向一維數(shù)組的指針變量的運算;指針變量-整數(shù) “指針變量中的地址-整數(shù)*指針變量類型占 用單元數(shù)”對應(yīng)的地址;指針變量-- “指針變量中的地址”對應(yīng)的地址(因為是后綴 減1運算符),此后,指針變量將指向上一個 數(shù)組元素。;例如:設(shè)定義了整型數(shù)組a[10],整型指針變量pa,且執(zhí)行了pa=a。假定數(shù)組a的首地址為2000。請看下列的表達式及其運算結(jié)果:;(2)指針變量和指針變量的減法運算; 當兩個指針變量的值(地址值)滿足關(guān)系運算時,結(jié)果為1(真)否則結(jié)果為0(假)。 例如,定義了數(shù)組a和同類型的指針變量p1、p2;使p1指向數(shù)組元素a[2];p2指向數(shù)組元素a[3]。下列關(guān)系表達式及其運算結(jié)果:;例:輸入10個整數(shù)存入一維數(shù)組,從中查找某個整數(shù)(該數(shù)從鍵盤上讀取),查到則輸出其是第幾個數(shù),查不到則輸出“Not Find!”。要求用指針法處理。;3、關(guān)于使用“指針法”處理一維數(shù)組元素的下標越界問題; 雖然C語言允許處理數(shù)組元素時下標可以越界,但在程序中要盡量避免。當出現(xiàn)下標越界的情況,如果你使用的是數(shù)組元素值,顯然這個值不知為何值;如果你是將某個值存入該數(shù)組元素,結(jié)果將會破壞對應(yīng)內(nèi)存單元中原來的值,使得后面程序運行時,結(jié)果不正確,甚至出現(xiàn)預(yù)料不到的問題,而這樣的錯誤很難查找。; 指向二維數(shù)組的指針變量的使用 ;例1:輸入2行3列的矩陣元素后,存入二維數(shù)組。再按行列格式輸出。;2、指針變量指向二維數(shù)組的首地址;(2)二維數(shù)組元素的引用方法。; 如果定義指針變量p并且指向數(shù)組a的首地址,則這些元素的地址和引用方法如下:;例2:重編例1,要求使用指向二維數(shù)組首地址的指針變量處理二維數(shù)組元素。;3、指針變量指向二維數(shù)組中某個一維數(shù)組; 然后再用初始化或賦值方式將該指針變量指向二維數(shù)組的首地址類型(* 指針變量)[m]=二維數(shù)組名 (初始化)指針變量=二維數(shù)組名 (賦值);使用這種指針變量,需要注意以下幾點:;(2)二維數(shù)組元素的引用方法。;二維數(shù)組中的一維數(shù)組; 6.4 字符串的指針;1、如何將指針變量指向字符串常量; 可以用賦值方式使指針變量指向字符串常量,但是不允許將字符串常量賦值給字符型數(shù)組。例如,下列的程序段是錯誤的:;2. 指向存放字符串的字符數(shù)組的指針變量的使用;6.5 指針數(shù)組和指向指針的指針 ;[格式] [存儲類型] 數(shù)據(jù)類型 * 指針數(shù)組名[長度]={初值};;(4)省略“存儲類型”,默認為自動型(auto)。;2、指針數(shù)組元素的引用 ;例5:輸入5個字符串存入一個二維數(shù)組中,然后定義一個指針數(shù)組,使其元素分別指向這5個字符串并輸出。;3、多級指針的定義和應(yīng)用 ;[說明];(3)定義時的“數(shù)據(jù)類型”可以選任何基本數(shù)據(jù)類型,也可以選 取以后介紹的其它數(shù)據(jù)類型。這個數(shù)據(jù)類型是它將要指向 的指針變量所指向的變量或數(shù)組的數(shù)據(jù)類型。; 當某個二級指針變量已指向某個一級指針變量,而這個一級指針變量已指向某個普通變量,則下列的引用格式都是正確的。;例6:輸入5個字符,從中找出最大的字符并輸出。要求用字符數(shù)組存放這5個字符,用指針數(shù)組元素分別指向這5個字符,再用一個二級指針變量指向這個指針數(shù)組。;課堂練習(xí)—指針應(yīng)用程序設(shè)計例題;例2:求3×5整數(shù)矩陣中的最大元素、最小元素、所有元素的平均值。(要求用指向二維數(shù)組
總結(jié)
以上是生活随笔為你收集整理的c语言数组数据用指针查找,c语言数组与指针_指针篇_2011.ppt的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 长期逾期可以坐火车吗
- 下一篇: android动态添加xml布局,and