糯米文學吧

位置:首頁 > 計算機 > C語言

C語言結構體教程

C語言3.91K

引導語;結構體是由一系列具有相同類型或不同類型的數據構成的數據集合。以下是本站小編分享給大家的C語言結構體教程,歡迎閲讀!

C語言結構體教程

一、結構説明和結構變量定義

在Turbo C中,結構也是一種數據類型,可以使用結構變量,因此,象其它類型的變量一樣, 在使用結構變量時要先對其定義。

定義結構變量的一般格式為:

struct 結構名

{

類型 變量名;

類型 變量名;

...

} 結構變量;

結構名是結構的標識符不是變量名。

類型為第二節中所講述的五種數據類型(整型、浮點型、字符型、指針型和無值型)。

構成結構的每一個類型變量稱為結構成員,它象數組的元素一樣,但數組中元素是以下標來訪問的,而結構是按變量名字來訪問成員的。

下面舉一個例子來説明怎樣定義結構變量。

struct string

{

char name[8];

int age;

char sex[4];

char depart[20];

float wage1,wage2,wage3;

}person;

這個例子定義了一個結構名為string的結構變量person,如果省略變量名person,則變成對結構的説明。用已説明的結構名也可定義結構變量。這樣定義時上例變成:

struct string

{

char name[8];

int age;

char sex[4];

char depart[20];

float wage1,wage2,wage3;

};

struct string person;

如果需要定義多個具有相同形式的結構變量時用這種方法比較方便,它先作結構説明,再用結構名來定義變量。

例如:

struct string Tianyr, Liuqi, ...;

如果省略結構名,則稱之為無名結構,這種情況常常出現在函數內部,用這種結構時前面的例子變成:

struct

{

char name[8];

int age;

char sex[4];

char depart[20];

float wage1,wage2,wage3;

} Tianyr, Liuqi;

 二、結構變量的使用

結構是一個新的數據類型,因此結構變量也可以象其它類型的變量一樣賦值、運算,不同的是結構變量以成員作為基本變量。

結構成員的表示方式為:

結構變量.成員名

如果將結構變量.成員名看成一個整體,則這個整體的數據類型與結構中該成員的數據類型相同,這樣就可象前面所講的變量那樣使用。

下面這個例子定義了一個結構變量,其中每個成員都從鍵盤接收數據,然後對結構中的浮點數求和,並顯示運算結果。請注意這個例子中不同結構成員的訪問。

#include

main()

{

struct

{ /*定義一個結構變量*/

char name[8];

int age;

char sex[4];

char depart[20];

float wage1,wage2,wage3;

}a;

float wage;

char c='Y';

while(c=='Y'||c=='y') /*判斷是否繼續循環*/

{

printf(nName:);

scanf(%s, ); /*輸入姓名*/

printf(Age:);

scanf(%d, &); /*輸入年齡*/

printf(Sex:);

scanf(%s, );

printf(Dept:);

scanf(%s, rt);

printf(Wage1:);

scanf(%f, &1); /*輸入工資*/

printf(Wage2:);

scanf(%f, &2);

printf(Wage3:);

scanf(%f, &3);

wage=1+2+3;

printf(The sum of wage is %6.2fn, wage);

printf(Continue?);

c=getche();

}

}

標籤:語言