李 亮 馮 浩
摘 要:在不同上下文語境中,探討各種類型的C語言數(shù)組所呈現(xiàn)出的宏觀和微觀狀態(tài)。通過橫向和縱向的對比分析,系統(tǒng)地闡述了這些狀態(tài)形成和改變的原理。
關(guān)鍵詞:C語言;數(shù)組;元素
中圖分類號:TP313文獻(xiàn)標(biāo)識碼:A文章編號:1672-3198(2009)16-0255-02
1 整型數(shù)組狀態(tài)分析
1.1 整型數(shù)組初始化后的狀態(tài)分析
以下代碼在定義一維整型數(shù)組時初始化部分元素,并輸出全部單元的值。
int a[4]={1,2},i;
for(i=0;i<=3;i++) printf("%d ",a[i]);
在編譯系統(tǒng)下運行,輸出結(jié)果如下:
1 2 0 0
結(jié)果分析:對一維整型數(shù)組中的部分元素初始化,未初始化的元素自動賦為0值。
以下代碼在定義二維整型數(shù)組時初始化部分元素,并輸出全部單元的值。
int a[3][4]={1,2},i,j;
for(i=0;i<=2;i++)
{printf("
");for(j=0;j<=3;j++)printf("%d ",a[i][j]);}
輸出結(jié)果如下:
1 2 0 0
0 0 0 0
0 0 0 0
結(jié)果分析:二維數(shù)組和多維數(shù)組從本質(zhì)上來說,就是一維數(shù)組,只不過這類一維數(shù)組的每個元素也是一個數(shù)組而已。比如此二維數(shù)組實際是含有三個元素的一維數(shù)組,每一行是它的一個元素,每個元素又是一個一維數(shù)組。
1.2 給整型數(shù)組元素賦值后的狀態(tài)分析
給整型數(shù)組中的部分元素賦值后,對其他未賦值元素不產(chǎn)生影響,保持原值。
1.3 輸入數(shù)據(jù)給整型數(shù)組元素后的狀態(tài)分析
為整型數(shù)組中的部分元素輸入數(shù)據(jù)后,對其他元素不產(chǎn)生影響,保持原值。
2 浮點型數(shù)組狀態(tài)分析
2.1 浮點型數(shù)組初始化后的狀態(tài)分析
以下代碼在定義一維浮點型數(shù)組時初始化部分元素,并輸出全部單元的值。
float a[4]={0.1,0.2};int i;
for(i=0;i<=3;i++) printf("%f ",a[i]);
輸出結(jié)果如下:
0.100000 0.200000 0.000000 0.000000
結(jié)果分析:對一維浮點型數(shù)組中的部分元素初始化,未初始化的元素自動賦為0.000000,這和整型數(shù)組類似。
2.2 給浮點型數(shù)組元素賦值后的狀態(tài)分析
給浮點型數(shù)組中的部分元素賦值后,對其他未賦值元素不產(chǎn)生影響,保持原值。
2.3 輸入數(shù)據(jù)給浮點型數(shù)組元素后的狀態(tài)分析
為浮點型數(shù)組中的部分元素輸入數(shù)據(jù)后,對其他元素不產(chǎn)生影響,保持原值。
3 字符數(shù)組狀態(tài)分析
3.1 字符數(shù)組初始化后的狀態(tài)分析
以下代碼在定義一維字符數(shù)組時初始化部分元素,并輸出全部單元的值。
char a[6]={'o','k'};int i;
for(i=0;i<=5;i++) printf("%c",a[i]);
輸出結(jié)果如下:
ok¢¢¢¢
結(jié)果分析:對一維字符數(shù)組中的部分元素初始化,未初始化的元素自動賦為空字符(即'