




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第七講第七講 二維數(shù)組的定義和引用二維數(shù)組的定義和引用一、二維數(shù)組的定義一、二維數(shù)組的定義定義二維數(shù)組的一般形式:C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件類型說明符數(shù)組名常量表達(dá)式1常量表達(dá)式2決定了數(shù)組的類型命名規(guī)則同簡單變量和一維數(shù)組注意:數(shù)組中數(shù)組元素的個(gè)數(shù)為:常量表達(dá)式1常量表達(dá)式2行下標(biāo)列下標(biāo)C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件如: intint a a3434; 定義了包含有12個(gè)整型數(shù)組元素的二維數(shù)組 a,在內(nèi)存中分布如下:a
2、a0 00 0 aa0 01 1 aa0 02 2 aa1 10 0 aa1 11 1 aa1 12 2 aa2 20 0 aa2 21 1 aa2 22 2 aa0 03 3 aa1 13 3 aa2 23 3 二、二維數(shù)組的引用二、二維數(shù)組的引用引用格式: 數(shù)組名行下標(biāo)列下標(biāo)注意:注意: 1、行下標(biāo)、列下標(biāo)均從0開始,到定義的下標(biāo)值減 一結(jié)束。 2、不能不能寫成 數(shù)組名行下標(biāo),列下標(biāo)(1) 分行給二維數(shù)組賦值(2) 將所有數(shù)據(jù)寫在一個(gè)大括弧中,按數(shù)組排列順序 進(jìn)行賦值。(3) 對(duì)部分元素賦值最直觀,最合理最直觀,最合理C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語
3、語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件三、二維數(shù)組的初始化三、二維數(shù)組的初始化int a34=int a34= 1,2,3,41,2,3,4 , , 5,6,7,85,6,7,8 , , 9,10,11,129,10,11,12 ;int a34=1,2,3,4,5,6,7,8,9,10,11,12;int a34=1,2,3,4,5,6,7,8,9,10,11,12;int a34=int a34= 1 1 , , 5 5 , , 9 9 ;aa0 00 0 aa0 01 1 aa0 02 2 aa1 10 0 aa1 11 1 aa1 12 2 aa2 20 0 aa2 21 1 a
4、a2 22 2 aa0 03 3 aa1 13 3 aa2 23 3 1 12 23 34 45 56 67 78 89 9101011111212aa0 00 0 aa0 01 1 aa0 02 2 aa1 10 0 aa1 11 1 aa1 12 2 aa2 20 0 aa2 21 1 aa2 22 2 aa0 03 3 aa1 13 3 aa2 23 3 1 10 00 00 05 50 00 00 09 90 00 00 0C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件四、二維數(shù)組的應(yīng)用舉例四、二維數(shù)組的應(yīng)用舉例1、
5、將一個(gè)矩陣進(jìn)行轉(zhuǎn)置 1 2 34 5 61425 3 6定義數(shù)組a int a23;并將初始矩陣賦給a中元素a00a01a02a10a11a12123456b00b10b20b01b11b21定義數(shù)組b int b32;用來存放轉(zhuǎn)置后的矩陣C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件數(shù)組a:行下標(biāo)0 00 00 01 11 11 1列下標(biāo)0 01 12 20 01 12 2數(shù)組b:行下標(biāo)0 00 00 01 11 11 1列下標(biāo)0 01 12 20 01 12 2當(dāng)i=0時(shí),j從0變化到2;當(dāng)i=1時(shí),j從0變化到2 ;f
6、or (i=0;i=1;i+)for (i=0;i=1;i+) for (j=0;j=2;j+) for (j=0;j=2;j+) b bj ji i=a=ai ij j;定義變量i i,j j,分別表示a的行下標(biāo)和列下標(biāo), aij=bjiC C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件編寫程序:編寫程序:main()main() int a23= int a23=1,2,31,2,3, ,4,5,64,5,6; int b32,i,j; int b32,i,j; printf( printf(“array a:narray
7、a:n”);); for(i=0;i=1;i+) for(i=0;i=1;i+) for(j=0;j=2;j+) for(j=0;j=2;j+) printf( printf(“%5d%5d”,aij);,aij); bji=aij;bji=aij; printf( printf(“nn”);); printf(printf(“array b:narray b:n”););for (i=0;i=2;i+)for (i=0;i=2;i+) for (j=0;j=1;j+) for (j=0;jmax真假max=aijrow=icolum=j輸出:max和row,colum#include mai
8、n() int a34= 1,2,3,4, 9,8,7,6, -10,10,-5,2; int i,j,row=0,colum=0,max; max=a00; for(i=0;i=2;i+) for(j=0;jmax) max=aij; row=i; colum=j; printf(max=%d,row=%d, colum=%dn,max,row,colum);C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件 五、字符數(shù)組和字符串 1、字符數(shù)組 (1)定義 (2)字符數(shù)組的初始化 逐個(gè)字符賦值 char ch5=char ch
9、5=H H, ,e e, ,l l, ,l l, ,o o; 用字符串常量 char ch6=“Hello”;例 char c10, ch34; (3)字符數(shù)組的引用C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件 例 char fruit7=“Apple”,”O(jiān)range”, ”Grape”,”Pear”,”Peach”;二維字符數(shù)組初始化fruit0fruit1fruit2fruit3fruit4Apple00Orange0Grape00Pear000Peach00C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件
10、C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件例 輸出一個(gè)字符串#include main()char c10=I, ,a,m, ,a, ,b,o,y; int i; for(i=0;i10;i+) printf(%c,ci); printf(n);Iamaboy0123456789C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件例 “hello”共5個(gè)字符,在內(nèi)存占6個(gè)字節(jié) 字符串長度5 h e l l o 0104 101 108 108 111 0內(nèi)存存放字符ASCII碼2、字符串(1)字符串及其結(jié)束標(biāo)志(2
11、)無字符串變量,用字符數(shù)組處理字符串(3)字符串結(jié)束標(biāo)志:C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件例 main( ) char a5=H,e,l,l,o; printf(“%s”,a); 例 main( ) char a =“Hello”; printf(“%s”,a); 結(jié)果:Hello#-=* h e l l o02314結(jié)果:Hello用“%s”輸出時(shí),遇0結(jié)束C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件main() char a=h,e,l
12、,0,l,o,0; printf(%s,a);例輸出:hel h e l 0 l o 0數(shù)組中有多個(gè)0時(shí),遇第一個(gè)結(jié)束C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件1、字符串輸出函數(shù)puts格式:puts(字符數(shù)組)功能:向顯示器輸出字符串(輸出完,換行)說明:字符數(shù)組必須以0結(jié)束2、字符串輸入函數(shù)gets格式:gets(字符數(shù)組)功能:從鍵盤輸入一以回車結(jié)束的字符串放入字符數(shù)組 中,并自動(dòng)加0說明:輸入串長度應(yīng)小于字符數(shù)組維數(shù)例 #include main( ) char string80; printf(“Input a
13、 string:”); gets(string); puts(string);輸入: How are you? 輸出: How are you? C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件3、字符串連接函數(shù)strcat格式:strcat(字符數(shù)組1,字符數(shù)組2)功能:把字符數(shù)組2連到字符數(shù)組1后面返值:返回字符數(shù)組1的首地址說明:字符數(shù)組1必須足夠大 連接前,兩串均以0結(jié)束;連接后,串1的0取消, 新串最后加04、字符串拷貝函數(shù)strcpy格式:strcpy(字符數(shù)組1,字符串2)功能:將字符串2,拷貝到字符數(shù)組1中去返值:返回字符數(shù)組1的首地址說明:字符數(shù)組1必須足夠大 拷貝時(shí)0一同拷貝 不能使用賦值語句為一個(gè)字符數(shù)組賦值例 char str120,str220; str1=“Hello!”; str2=str1 ;()C C C語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件語言程序設(shè)計(jì)課件C C C語語語言言言程程程序序序設(shè)設(shè)設(shè)計(jì)計(jì)計(jì)課課課件件件5、字符串比較函數(shù)strcmp格式:strcmp(字符串1,字符串2)功能:比較兩個(gè)字符串比較規(guī)則:對(duì)兩串從左向右逐個(gè)字符比較(ASCII碼), 直到遇到不同字符或0為止返值:返回int型整數(shù)。 a. 若字符串1 字符串2, 返回正整數(shù) c. 若字符串1= 字符串2,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度房屋抵押權(quán)設(shè)立合同
- 教育信息化解決方案項(xiàng)目投資合同
- 物流配送損害免責(zé)聲明
- 教育培訓(xùn)服務(wù)責(zé)任豁免協(xié)議
- 文化產(chǎn)業(yè)投資開發(fā)協(xié)議書
- 攝影工作室拍攝作品著作權(quán)歸屬聲明
- 農(nóng)業(yè)現(xiàn)代化高效節(jié)水灌溉技術(shù)推廣方案
- 企業(yè)產(chǎn)品質(zhì)量危機(jī)處理預(yù)案
- 高考文言文雙文本專練:《史記》《論語》
- 近期項(xiàng)目成果回顧與反思
- 小兒白血病飲食
- 2024年杭州科技職業(yè)技術(shù)學(xué)院單招職業(yè)技能測(cè)試題庫及答案解析
- JGJ79-2012 建筑地基處理技術(shù)規(guī)范
- LIMS實(shí)驗(yàn)室信息管理系統(tǒng)
- 柱塞泵工作原理動(dòng)畫演示
- 數(shù)字法學(xué)原理
- 玉米收購可行性分析報(bào)告
- 最全醫(yī)院應(yīng)急預(yù)案匯編目錄
- 駕駛員心理健康教育培訓(xùn)課件
- 別墅的價(jià)格評(píng)估報(bào)告
- 滬科版七年級(jí)數(shù)學(xué)下冊(cè) 第六章 實(shí)數(shù) 單元測(cè)試卷
評(píng)論
0/150
提交評(píng)論