C語言結(jié)構(gòu)體數(shù)組概述
一個(gè)結(jié)構(gòu)體變量中可以存放一組有關(guān)聯(lián)的數(shù)據(jù),如一個(gè)學(xué)生的學(xué)號(hào)、姓名、成績等數(shù)據(jù),如果有10個(gè)學(xué)生的數(shù)據(jù)需要參加運(yùn)算,顯然應(yīng)該用數(shù)組,這就是結(jié)構(gòu)體數(shù)組。
結(jié)構(gòu)體數(shù)組與之前介紹的數(shù)值型數(shù)組的不同之處在于每個(gè)數(shù)組元素都是一個(gè)結(jié)構(gòu)體類型的數(shù)據(jù),他們都包括各個(gè)成員項(xiàng)。
C語言定義結(jié)構(gòu)體數(shù)組
一般形式
struct 結(jié)構(gòu)體名
{成員表列}數(shù)組名[數(shù)組長度];
先聲明一個(gè)結(jié)構(gòu)體類型(如struct Person),然后再用此類型定義結(jié)構(gòu)體數(shù)組:結(jié)構(gòu)體類型 數(shù)組名[數(shù)組長度]。
C語言使用結(jié)構(gòu)體數(shù)組注意事項(xiàng)
對(duì)結(jié)構(gòu)體數(shù)組初始化的形式是在定義數(shù)組的后面加上:={初值表列};
在定義結(jié)構(gòu)體數(shù)組時(shí)進(jìn)行初始化,為清晰起見,將每個(gè)學(xué)生的信息用一對(duì)花括號(hào)包起來,這樣做,閱讀和檢查比較方便,尤其當(dāng)數(shù)據(jù)量多時(shí),這樣是有好處的。
C語言使用結(jié)構(gòu)體數(shù)組求五個(gè)人的平均成績
#include
struct{
char *name;//姓名
float score;//成績
}array[] = {//結(jié)構(gòu)體數(shù)組
{"張三",145.0},
{"李四",130.5},
{"王五",148.5},
{"趙六",139.0},
{"小林",150.0}
};
int main()
{
float sum =0;
for(int i=0; i<5; i++)
{
sum +=array[i].score;
}
printf("平均成績:%.2f\\n", sum/5);
return 0;
}
編譯運(yùn)行結(jié)果:
平均成績:142.60
--------------------------------
Process exited after0.09937 secondswith return value0
請(qǐng)按任意鍵繼續(xù). . .
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
6715瀏覽量
88321 -
C語言
+關(guān)注
關(guān)注
180文章
7575瀏覽量
134239 -
結(jié)構(gòu)
+關(guān)注
關(guān)注
1文章
117瀏覽量
21528
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論