




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
本文格式為Word版,下載可任意編輯——C語言一維數(shù)組的定義和引用C語言一維數(shù)組的定義和引用
C語言支持一維數(shù)組和多維數(shù)組。假設(shè)一個數(shù)組的全體元素都不是數(shù)組,那么該數(shù)組稱為一維數(shù)組。
一維數(shù)組的定義方式
在C語言中使用數(shù)組務(wù)必先舉行定義。一維數(shù)組的定義方式為:
類型說明符數(shù)組名[常量表達式];
其中,類型說明符是任一種根本數(shù)據(jù)類型或構(gòu)造數(shù)據(jù)類型。數(shù)組名是用戶定義的數(shù)組標(biāo)識符。方括號中的常量表達式表示數(shù)據(jù)元素的個數(shù),也稱為數(shù)組的長度。例如:
inta[10];/*說明整型數(shù)組a,有10個元素*/
floatb[10],c[20];/*說明實型數(shù)組b,有10個元素,實型數(shù)組c,有20個元素*/
charch[20];/*說明字符數(shù)組ch,有20個元素*/
對于數(shù)組類型說明應(yīng)留神以下幾點:
1數(shù)組的類型實際上是指數(shù)組元素的取值類型。對于同一個數(shù)組,其全體元素的數(shù)據(jù)類型都是一致的。
2數(shù)組名的書寫規(guī)矩應(yīng)符合標(biāo)識符的書寫規(guī)定。
3數(shù)組名不能與其它變量名一致。例如:
inta;
floata[10];
是錯誤的。
4方括號中常量表達式表示數(shù)組元素的個數(shù),如a[5]表示數(shù)組a有5個元素。但是其下標(biāo)從0開頭計算。因此5個元素分別為a[0],a[1],a[2],a[3],a[4]。
5不能在方括號中用變量來表示元素的個數(shù),但是可以是符號常數(shù)或常量表達式。例如:
#defineFD5
//...
inta[3+2],b[7+FD];
是合法的.。但是下述說明方式是錯誤的。
intn=5;
inta[n];
6允許在同一個類型說明中,說明多個數(shù)組和多個變量。例如:
inta,b,c,d,k1[10],k2[20];
一維數(shù)組元素的引用
數(shù)組元素是組成數(shù)組的根本單元。數(shù)組元素也是一種變量,其標(biāo)識方法為數(shù)組名后跟一個下標(biāo)。下標(biāo)表示了元素在數(shù)組中的依次號。數(shù)組元素的一般形式為:
數(shù)組名[下標(biāo)]
其中下標(biāo)只能為整型常量或整型表達式。如為小數(shù)時,C編譯將自動取整。例如:
a[5]
a[i+j]
a[i++]
都是合法的數(shù)組元素。
數(shù)組元素通常也稱為下標(biāo)變量。務(wù)必先定義數(shù)組,才能使用下標(biāo)變量。在C語言中只能逐個地使用下標(biāo)變量,而不能一次引用整個數(shù)組。例如,輸出有10個元素的數(shù)組務(wù)必使用循環(huán)語句逐個輸出各下標(biāo)變量:
fori=0;i10;i++
printf%d,a[i];
而不能用一個語句輸出整個數(shù)組。因此,下面的寫法是錯誤的:
printf%d,a;
使用for循環(huán)為一個數(shù)組賦值,并將數(shù)組倒敘輸出。
#include
intmainvoid
inti,a[10];
fori=0;i=9;i++
a[i]=i;
fori=9;i=0;i--
printf%d,a[i];
return0;
將上面的例子稍微變更一下。
#include
intmainvoid
inti,a[10];
fori=0;i10;
a[i++]=i;
fori=9;i=0;i--
printf%d,a[i];
return0;
一維數(shù)組的初始化
給數(shù)組賦值的方法除了用賦值語句對數(shù)組元素逐個賦值外,還可采用初始化賦值和動態(tài)賦值的方法。
數(shù)組初始化賦值是指在數(shù)組定義時給數(shù)組元素賦予初值。數(shù)組初始化是在編譯階段舉行的。這樣將裁減運行時間,提高效率。初始化賦值的一般形式為:
類型說明符數(shù)組名[常量表達式]=值,值值;
其中在中的各數(shù)據(jù)值即為各元素的初值,各值之間用逗號間隔。例如:
inta[10]=0,1,2,3,4,5,6,7,8,9;
相當(dāng)于
a[0]=0;a[1]=1...a[9]=9;
C語言對數(shù)組的初始化賦值還有以下幾點規(guī)定:
1可以只給片面元素賦初值。當(dāng)中值的個數(shù)少于元素個數(shù)時,只給前面片面元素賦值。例如:
inta[10]=0,1,2,3,4;
C語言一維數(shù)組的定義和引用
相當(dāng)于
a[0]=0;a[1]=1...a[9]=9;
C語言對數(shù)組的初始化賦值還有以下幾點規(guī)定:
1可以只給片面元素賦初值。當(dāng)中值的個數(shù)少于元素個數(shù)時,只給前面片面元素賦值。例如:
inta[10]=0,1,2,3,4;
表示只給a[0]~a[4]5個元素賦值,而后5個元素自動賦0值。
2只能給元素逐個賦值,不能給數(shù)組整體賦值。例如給十個元素全部賦1值,只能寫為:
inta[10]=1,1,1,1,1,1,1,1,1,1;
而不能寫為:
inta[10]=1;
3如給全部元素賦值,那么在數(shù)組說明中,可以不給出數(shù)組元素的個數(shù)。例如:
inta[5]=1,2,3,4,5;
可寫為:
inta[]=1,2,3,4,5;
一維數(shù)組程序舉例
可以在程序執(zhí)行過程中,對數(shù)組作動態(tài)賦值。這時可用循環(huán)語句合作scanf函數(shù)逐個對數(shù)組元素賦值。
輸入10個數(shù)字并輸出最大值。
#include
intmainvoid
inti,max,a[10];
printfinput10numbers:\n;
fori=0;i10;i++
scanf%d,a[i];
max=a[0];
fori=1;i10;i++
ifa[i]maxmax=a[i];
printfmaxmum=%d\n,max;
return0;
本例程序中第一個for語句逐個輸入10個數(shù)到數(shù)組a中。然后把a[0]送入max中。在其次個for語句中,從a[1]到a[9]逐個與max中的內(nèi)容對比,若比max的值大,那么把該下標(biāo)變量送入max中,因此max總是在已對比過的下標(biāo)變量中為最大者。對比終止,輸出max的值。
輸入10個數(shù)字并按從大到小的依次排列。
#include
intmainvoid
inti,j,p,q,s,a[10];
printf\ninput10numbers:\n;
fori=0;i10;i++
scanf%d,a[i];
fori=0;i10;i++
p=i;q=a[i];
forj=i+1;j10;j++
ifq
p=j;q=a[j];
ifi!=p
s=a[i];
a[i]=a[p];
a[p]=s;
printf%d,a[i];
return0;
本例程序中用了兩個并列的for循環(huán)語句,在其次個for語句中又嵌套了一個循環(huán)語句。第一個for語句用于輸入10個元素的初值。其次個for語句用于排序。本程序的排序采用逐個對比的方法舉行。在i次循環(huán)時,把第一個元素的下標(biāo)i賦于p,而把該下標(biāo)變量值a[i]賦于q。然后進入小循環(huán),從a[i+1]起到結(jié)果一個元素止逐個與a[i]作對比,有比a[i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)環(huán)境管理體系認證與財務(wù)管理考核試卷
- 化肥銷售合同中的合同履行中的質(zhì)量爭議處理流程考核試卷
- 人造板回收利用技術(shù)探討考核試卷
- 材料生物降解速率測試考核試卷
- 殘障人士運動訓(xùn)練跨學(xué)科合作研究考核試卷
- 貨物驗收報告編制規(guī)范考核試卷
- 三顧茅廬讀書筆記15篇
- 口腔護理發(fā)展史
- 檢察文化建設(shè)年活動方案
- 汽車全國活動方案
- GB/T 45719-2025半導(dǎo)體器件金屬氧化物半導(dǎo)體(MOS)晶體管的熱載流子試驗
- 寶媽日常心理護理
- 2025年社會學(xué)概論測試題含答案(附解析)
- 2025-2030年環(huán)境工程產(chǎn)業(yè)深度調(diào)研及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025年事業(yè)單位公開招聘考試(E類)《綜合應(yīng)用能力西醫(yī)臨床》試卷真題及完整解析
- 保險公司保單管理制度
- 2025年中國AI翻譯行業(yè)市場全景分析及前景機遇研判報告
- 2025-2030中國酶聯(lián)免疫吸附測定(ELISA)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 2025年內(nèi)蒙古眾達人力資源公司招聘題庫帶答案分析
- 水利工程隱患排查課件
- 醫(yī)藥公司廉政管理制度
評論
0/150
提交評論