华南俳烁实业有限公司

考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場 | 考試論壇  
全國  |             |          |          |          |          |         
  當(dāng)前位置:計算機(jī)等級 > 二級考試 > C語言程序設(shè)計 > C語言輔導(dǎo) > 文章內(nèi)容
  

全國計算機(jī)等級考試二級C語言入門教程(103)

中華IT學(xué)院   【 】  [ 2016年5月6日 ]

結(jié)構(gòu)類型變量的說明

說明結(jié)構(gòu)變量有以下三種方法。以上面定義的 stu為例來加以說明。

1. 先定義結(jié)構(gòu),再說明結(jié)構(gòu)變量。如:
struct stu
{
int num;
char name[20];



char sex;
float score;
};
struct stu boy1,boy2;


說明了兩個變量 boy1和boy2為 stu結(jié)構(gòu)類型。也可以用宏定義使一個符號常量來表示一個結(jié)構(gòu)類型,例如:


#define STU struct stu
STU
{
int num;
char name[20];
char sex;
float score;
};
STU boy1,boy2;


2. 在定義結(jié)構(gòu)類型的同時說明結(jié)構(gòu)變量。例如:
struct stu
{
int num;
char name[20];
char sex;
float score;
}boy1,boy2;


3. 直接說明結(jié)構(gòu)變量。例如:
struct
{
int num;
char name[20];
char sex;
float score;
}boy1,boy2;


第三種方法與第二種方法的區(qū)別在于第三種方法中省去了結(jié)構(gòu)名,而直接給出結(jié)構(gòu)變量。三種方法中說明的
boy1,boy2變量都具有圖 7.1所示的結(jié)構(gòu)。說明了 boy1,boy2變量為stu類型后,即可向這兩個變量中的各個成員賦
值。在上述stu結(jié)構(gòu)定義中,所有的成員都是基本數(shù)據(jù)類型或數(shù)組類型。成員也可以又是一個結(jié)構(gòu), 即構(gòu)成了嵌套的
結(jié)構(gòu)。例如,圖7.2給出了另一個數(shù)據(jù)結(jié)構(gòu)。 按圖7.2可給出以下結(jié)構(gòu)定義:

struct date{
int month;
int day;
int year;
}
struct{
int num;
char name[20];
char sex;
struct date birthday;
float score;
}boy1,boy2;


首先定義一個結(jié)構(gòu)date,由month(月)、day(日)、year(年) 三個成員組成。 在定義并說明變量 boy1 和boy2 時,
其中的成員 birthday被說明為data結(jié)構(gòu)類型。成員名可與程序中其它變量同名,互不干擾。結(jié)構(gòu)變量成員的表示方
法在程序中使用結(jié)構(gòu)變量時, 往往不把它作為一個整體來使用。

在ANSI C中除了允許具有相同類型的結(jié)構(gòu)變量相互賦值以外, 一般對結(jié)構(gòu)變量的使用,包括賦值、輸入、輸出、
運(yùn)算等都是通過結(jié)構(gòu)變量的成員來實(shí)現(xiàn)的。

 表示結(jié)構(gòu)變量成員的一般形式是:結(jié)構(gòu)變量名.成員名 例如:boy1.num 即第一個人的學(xué)號 boy2.sex 即第二個
人的性別 如果成員本身又是一個結(jié)構(gòu)則必須逐級找到最低級的成員才能使用。例如:boy1.birthday.month 即第一個


人出生的月份成員可以在程序中單獨(dú)使用,與普通變量完全相同。

分享到:
本文糾錯】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2006-2017 中華考試網(wǎng)(Examw.com) All Rights Reserved  營業(yè)執(zhí)照
五家渠市| 吉木萨尔县| 德格县| 安丘市| 金乡县| 镇雄县| 江北区| 富顺县| 松溪县| 北宁市| 宜兰县| 武功县| 海门市| 侯马市| 财经| 梓潼县| 上饶市| 湘西| 湄潭县| 曲阳县| 清镇市| 报价| 全南县| 岚皋县| 古浪县| 芷江| 崇左市| 高陵县| 得荣县| 沙坪坝区| 定陶县| 明水县| 定州市| 湟源县| 海南省| 永康市| 石林| 德保县| 涟水县| 黄平县| 民权县|