版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第5章數(shù)組數(shù)組是相同類(lèi)型數(shù)據(jù)的集合。它們都擁有同一個(gè)名稱(chēng)。在大數(shù)量處理處理和字符串操作時(shí),廣泛使用數(shù)組。數(shù)組對(duì)C語(yǔ)言來(lái)說(shuō)起著相當(dāng)至關(guān)重要的作用。本章將重點(diǎn)講數(shù)組的各種操作。5.1數(shù)組簡(jiǎn)介在程序設(shè)計(jì)的過(guò)程中,經(jīng)常會(huì)處理一些數(shù)據(jù)類(lèi)型相同的變量,為了方便,C語(yǔ)言中提供了數(shù)組這一結(jié)構(gòu)。5.1數(shù)組簡(jiǎn)介數(shù)組分類(lèi)按照數(shù)據(jù)類(lèi)型不同分類(lèi)整型數(shù)組、字符型數(shù)組、指針數(shù)組等按照數(shù)據(jù)多少一維數(shù)組、二維數(shù)組、多維數(shù)組5.2數(shù)組的來(lái)源前面章節(jié)中講解的C語(yǔ)言的基本數(shù)據(jù)類(lèi)型只能處理一些簡(jiǎn)單的數(shù)據(jù)類(lèi)型,如果遇到復(fù)雜的具有相同類(lèi)型的多個(gè)數(shù)據(jù)那么就很難解決。幸好,C語(yǔ)言提供了數(shù)組來(lái)解決了這一個(gè)問(wèn)題。5.2數(shù)組的來(lái)源5.3一維數(shù)組一維數(shù)組是長(zhǎng)度固定的數(shù)組,其存儲(chǔ)空間是一片連續(xù)的區(qū)域。本節(jié)將講解一維數(shù)組的概念及其應(yīng)用。5.3.1一維數(shù)組的聲明和定義聲明數(shù)組是告訴編譯器,數(shù)組名所使用的標(biāo)識(shí)符。數(shù)組的定義是令系統(tǒng)為該數(shù)組分配內(nèi)存空間。在C語(yǔ)言中,數(shù)組的聲明和定義是同時(shí)進(jìn)行的。5.3.1一維數(shù)組的聲明和定義5.3.2一維數(shù)組的初始化數(shù)組的初始化是用來(lái)實(shí)現(xiàn)對(duì)數(shù)組的每個(gè)元素賦初值的。雖然有的編譯器會(huì)自動(dòng)對(duì)數(shù)組賦初值,但為了安全起見(jiàn),建議用戶自己對(duì)數(shù)組賦初值。5.3.2一維數(shù)組的初始化5.3.2一維數(shù)組的初始化注意點(diǎn)示例代碼若對(duì)數(shù)組中的所有元素都賦予了初始值,可以不用指定數(shù)組的大小,系統(tǒng)將自動(dòng)根據(jù)賦值的個(gè)數(shù)來(lái)確定數(shù)組的大小
intx[]={1,2,3,4,5};若只對(duì)數(shù)組中的部分元素賦予初始值,則系統(tǒng)會(huì)自動(dòng)為其他元素賦初始值0intx[10]={1,2,3,4,5};若只聲明數(shù)組,而不為數(shù)組賦值,則數(shù)組中的元素值是不確定的intx[10];
C語(yǔ)言數(shù)組的大小只能是常量,而不能使用變量下面的代碼是不合法的:inti=100;inta[i];5.3.3一維數(shù)組的引用在C語(yǔ)言中,一維數(shù)組的引用其實(shí)就是對(duì)一維數(shù)組元素的使用。一維數(shù)組的引用形式以及相關(guān)舉例如圖5.8所示。5.3.4一維數(shù)組程序舉例5.4二維數(shù)組二維數(shù)組指有兩個(gè)下標(biāo)的數(shù)組。C語(yǔ)言中,對(duì)于常用的數(shù)組除了有一維數(shù)組還有二維數(shù)組。本節(jié)來(lái)學(xué)習(xí)二維數(shù)組。5.4.1二維數(shù)組的聲明和定義二維數(shù)組有兩個(gè)下標(biāo)。二維數(shù)組中的元素和一維數(shù)組中的元素一樣,具有同樣的數(shù)據(jù)類(lèi)型。5.4.1二維數(shù)組的聲明和定義5.4.2二維數(shù)組的初始化對(duì)于二維數(shù)組的初始化有好多種方法,如表5-3所示。二維數(shù)組初始化方法示例代碼分行給二維數(shù)組賦初值inta[2][3]={{0,1,2},{4,5,6}}可以將所有數(shù)據(jù)寫(xiě)在一個(gè)花括號(hào)內(nèi),按照數(shù)組排列的順序?qū)Ω髟刭x初值inta[2][3]={0,1,2,4,5,6}可以對(duì)部分元素賦初值,而在每行的其他元素的值為0或者為’\0’
inta[2][3]={{1},{4}}等價(jià)于inta[2][3]={{1,0,0},{4,0,0}}如果對(duì)數(shù)組的全部元素賦初值,則定義二維數(shù)組時(shí)可以不指明下標(biāo)1,但是必須明確指明下標(biāo)2的長(zhǎng)度
inta[2][3]={0,1,2,4,5,6}等價(jià)于inta[][3]={0,1,2,4,5,6}5.4.3二維數(shù)組的引用二維數(shù)組的引用形式如圖5.13所示。5.4.3二維數(shù)組的引用5.4.3二維數(shù)組的引用5.4.4二維數(shù)組程序舉例5.5字符數(shù)組字符數(shù)組就是用來(lái)存放字符的。在計(jì)算機(jī)中經(jīng)常會(huì)處理字符,C語(yǔ)言對(duì)字符的處理主要是通過(guò)字符數(shù)組實(shí)現(xiàn)的。在本節(jié)中將會(huì)講述字符數(shù)組的概念及其應(yīng)用。5.5.1字符數(shù)組的聲明和定義字符數(shù)組的含義如圖5.17所示。5.5.1字符數(shù)組的聲明和定義概念在C語(yǔ)言中,由若干字符組成的序列稱(chēng)為字符串結(jié)束標(biāo)志字符串一般以’\0’作為結(jié)束標(biāo)志存儲(chǔ)形式字符串不能用一個(gè)變量存放,必須用字符數(shù)組來(lái)存放5.5.1字符數(shù)組的聲明和定義5.5.1字符數(shù)組的聲明和定義5.5.2字符數(shù)組的初始化一維字符數(shù)組的初始化方式一般有兩種,如表5-4所示。初始化方式示例代碼說(shuō)明逐個(gè)為字符數(shù)組賦值charc[6]={'H','e','l','l','o'};每個(gè)字符會(huì)依次賦值給數(shù)組中的每個(gè)元素用字符串直接給字符數(shù)組賦值charc[6]={"Hello"};直接將字符串賦給字符數(shù)組來(lái)初始化。系統(tǒng)會(huì)依次讀取字符串中的每個(gè)字符,賦值給數(shù)組每個(gè)元素,并在字符串的的結(jié)尾處加一個(gè)字符即結(jié)束符\0作為一個(gè)數(shù)組元素。charc[6]={"Hello"};等價(jià)于charc[6]="Hello";等價(jià)于charc[]={"Hello"};5.5.2字符數(shù)組的初始化5.5.3字符數(shù)組的引用前面已經(jīng)講解過(guò)了一維數(shù)組與二維數(shù)組的引用,所以字符數(shù)組的引用大家應(yīng)該已經(jīng)有一個(gè)概念了。C語(yǔ)言中,可以引用字符數(shù)組中的一個(gè)元素,得到一個(gè)字符。這一小節(jié)通過(guò)兩個(gè)簡(jiǎn)單的示例講解一維字符數(shù)組和二維字符數(shù)組的引用。5.5.4字符數(shù)組的輸入輸出字符數(shù)組的輸入輸出有兩種方法,如圖5.23所示。5.5.4字符數(shù)組的輸入輸出注意點(diǎn)注意事項(xiàng)說(shuō)明1輸出字符不包括結(jié)束字符’\0’如圖5.2的輸出結(jié)果可以看出2用“%s”格式輸出時(shí),printf()函數(shù)的輸出項(xiàng)是字符數(shù)組名,而不是字符元素printf(“%s”,c);//其中數(shù)組名為c3如果數(shù)組長(zhǎng)度大于字符串的實(shí)際長(zhǎng)度,也只是輸出遇到結(jié)束字符結(jié)束輸出charc[10]={“China”}//字符串的長(zhǎng)度為5printf(“%s”,c);//也只輸出字符串“China”,而不是輸出10個(gè)字符4如果一個(gè)字符數(shù)組由多個(gè)’\0’,則遇到第一個(gè)’\0’就結(jié)束輸出因?yàn)樽址痋0’是字符串的結(jié)束標(biāo)志5可以用scanf函數(shù)輸入一個(gè)字符串scanf(“%s”,c);5.6綜合實(shí)例——楊輝三角通過(guò)輸出楊輝三角圖來(lái)進(jìn)一步講解數(shù)組的應(yīng)用。1.楊輝三角圖行界面楊輝三角的圖形界面如圖5.25所示。2
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024綜合崗位勞動(dòng)協(xié)議模板版B版
- 2024年版城市出租車(chē)租賃協(xié)議樣式版B版
- 2025年消防安全管理咨詢及標(biāo)準(zhǔn)制定合同2篇
- 2024-2025學(xué)年高中歷史第七單元復(fù)雜多樣的當(dāng)代世界第24課兩極對(duì)峙格局的形成學(xué)案含解析岳麓版必修1
- 2024-2025學(xué)年高中語(yǔ)文課時(shí)分層作業(yè)4歸去來(lái)兮辭并序含解析新人教版必修5
- 二零二四年度時(shí)尚傳媒廣告投放及制作合同
- 2025年度道路照明燈具批發(fā)合同范本3篇
- 2025年酒店客房銷(xiāo)售渠道建設(shè)與維護(hù)合同3篇
- 2025年度綠色生態(tài)農(nóng)業(yè)種植承包合同范本3篇
- 2025年蔬菜種植戶與農(nóng)產(chǎn)品電商平臺(tái)合作合同范本3篇
- GB/T 37234-2018文件鑒定通用規(guī)范
- GB/T 31888-2015中小學(xué)生校服
- 質(zhì)量檢查考核辦法
- 不動(dòng)產(chǎn)登記實(shí)務(wù)培訓(xùn)教程課件
- 云南省普通初中學(xué)生成長(zhǎng)記錄-基本素質(zhì)發(fā)展初一-初三
- 2023年系統(tǒng)性硬化病診斷及診療指南
- 外科醫(yī)師手術(shù)技能評(píng)分標(biāo)準(zhǔn)
- 《英語(yǔ)教師職業(yè)技能訓(xùn)練簡(jiǎn)明教程》全冊(cè)配套優(yōu)質(zhì)教學(xué)課件
- 采購(gòu)控制程序
- 六年級(jí)上冊(cè)數(shù)學(xué)簡(jiǎn)便計(jì)算題200題專(zhuān)項(xiàng)練習(xí)
- 冀教版八年級(jí)上冊(cè)Unit 1 單詞短語(yǔ)句型復(fù)習(xí)預(yù)習(xí)單
評(píng)論
0/150
提交評(píng)論