如果有若干相同結(jié)構(gòu)體類型的數(shù)據(jù)要進(jìn)行處理,我們需定義基類型為相應(yīng)結(jié)構(gòu)體類型的數(shù)組來描述數(shù)據(jù)。這樣的數(shù)組稱為結(jié)構(gòu)體數(shù)組。結(jié)構(gòu)體數(shù)組用來描述各種復(fù)雜數(shù)據(jù),在程序設(shè)計(jì)中經(jīng)常用到,請(qǐng)讀者特別加以關(guān)注。
結(jié)構(gòu)體數(shù)組的定義與結(jié)構(gòu)體變量的定義一樣有以下三種形式:
(1)struct標(biāo)識(shí)符
{成員表};
struct標(biāo)識(shí)符數(shù)組名[常量];
(2)struct標(biāo)識(shí)符
{成員表}數(shù)組名[常量];
(3)struet
(成員表)數(shù)組名[常量];
例如,100個(gè)同學(xué)的情況,我們可以定義結(jié)構(gòu)體數(shù)組allst描述:
struct student
(int no;
char name[8]; -
char sex}
int age;
float score[31];
float tcj,acj}
}allst[100];
結(jié)構(gòu)體數(shù)組相當(dāng)于一個(gè)廣義的二維數(shù)組,結(jié)構(gòu)體數(shù)組的初始化與二維數(shù)組的初始化類似。對(duì)結(jié)構(gòu)體數(shù)組的整體操作需轉(zhuǎn)化成對(duì)數(shù)組的分量下標(biāo)變量進(jìn)行。結(jié)構(gòu)體數(shù)組的分量下標(biāo)變量是結(jié)構(gòu)體類型變量,對(duì)結(jié)構(gòu)體數(shù)組分量的操作要轉(zhuǎn)化成對(duì)結(jié)構(gòu)體分量字段變量進(jìn)行。字段變量是相應(yīng)基類型變量,如是復(fù)雜類型需繼續(xù)進(jìn)行轉(zhuǎn)化,考試大整理發(fā)布。
對(duì)結(jié)構(gòu)體數(shù)組allst的操作要轉(zhuǎn)化成對(duì)allst[i]進(jìn)行操作,而allst[i]的操作要轉(zhuǎn)化成對(duì)allst[i].n0、allst[i].name、allst[i].sex、allst[i].a(chǎn)ge、allst[i].score、allst[i].tcj、allst[i].a(chǎn)cj行操作。allst[i].no、allst[i].name、allst[i].sex、allst[i].a(chǎn)ge、allst[i].score、allst[i].tcj、allst[Fi].a(chǎn)cj相當(dāng)于對(duì)應(yīng)基類型的量。
結(jié)構(gòu)體數(shù)組的定義與結(jié)構(gòu)體變量的定義一樣有以下三種形式:
(1)struct標(biāo)識(shí)符
{成員表};
struct標(biāo)識(shí)符數(shù)組名[常量];
(2)struct標(biāo)識(shí)符
{成員表}數(shù)組名[常量];
(3)struet
(成員表)數(shù)組名[常量];
例如,100個(gè)同學(xué)的情況,我們可以定義結(jié)構(gòu)體數(shù)組allst描述:
struct student
(int no;
char name[8]; -
char sex}
int age;
float score[31];
float tcj,acj}
}allst[100];
結(jié)構(gòu)體數(shù)組相當(dāng)于一個(gè)廣義的二維數(shù)組,結(jié)構(gòu)體數(shù)組的初始化與二維數(shù)組的初始化類似。對(duì)結(jié)構(gòu)體數(shù)組的整體操作需轉(zhuǎn)化成對(duì)數(shù)組的分量下標(biāo)變量進(jìn)行。結(jié)構(gòu)體數(shù)組的分量下標(biāo)變量是結(jié)構(gòu)體類型變量,對(duì)結(jié)構(gòu)體數(shù)組分量的操作要轉(zhuǎn)化成對(duì)結(jié)構(gòu)體分量字段變量進(jìn)行。字段變量是相應(yīng)基類型變量,如是復(fù)雜類型需繼續(xù)進(jìn)行轉(zhuǎn)化,考試大整理發(fā)布。
對(duì)結(jié)構(gòu)體數(shù)組allst的操作要轉(zhuǎn)化成對(duì)allst[i]進(jìn)行操作,而allst[i]的操作要轉(zhuǎn)化成對(duì)allst[i].n0、allst[i].name、allst[i].sex、allst[i].a(chǎn)ge、allst[i].score、allst[i].tcj、allst[i].a(chǎn)cj行操作。allst[i].no、allst[i].name、allst[i].sex、allst[i].a(chǎn)ge、allst[i].score、allst[i].tcj、allst[Fi].a(chǎn)cj相當(dāng)于對(duì)應(yīng)基類型的量。