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