资源描述:
《第6章-结构体与共用体.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一、判断题1.结构体的定义不为它分配具体的内存空间。答案:T2.C++语言结构体类型变量在程序执行期间,所有成员驻留在内存中。答案:T3.一个共用体变量中可以同时存放其所有成员。答案:F4.若有定义uniondt{inta;charb;doublec;}data;,变量data所占的内存字节数与成员c所占字节数相等。答案:F5.用typedef可以增加新类型。答案:F6.共用体类型数据中所有成员的首地址都是同一地址。答案:T7.可以用已定义的共用体类型来定义数组或指针变量的类型。答案:T8.共用体类型数据中的成员可以是结构体类型,但不可以是共用体类型
2、。答案:F9.可以对共用体变量直接赋值。答案:F二、选择题1.下面关于结构体概念的叙述中,正确的说法是()。A.相同类型数据的集合称为结构体B.不同类型数据的集合称为结构体C.数据的集合称为结构体D.整数的集合称为结构体答案:C2.设有以下说明语句:structabc{intm;floatn;}stype;则下面错误的叙述是()。A.struct是定义结构体类型的关键字B.stype是结构体类型名C.m和n都是结构体成员名D.stype是结构体变量名答案:B3.以下对枚举类型ee的定义中,正确的定义是()。A.enumee{A,B,C,D};B.en
3、umee{'A','B','C','D'};C.enumee={A,B,C,D};D.enumee={'A','B','C','D'};答案:A4.以下关于同类型结构体与同类型共用体赋值的叙述中,正确的说法是()。A.共用体变量之间可以直接赋值,结构体变量之间也可以直接赋值B.共用体变量之间可以直接赋值,结构体变量之间不可以直接赋值C.共用体变量之间不可以直接赋值,结构体变量之间可以直接赋值D.共用体变量之间不可以直接赋值,结构体变量之间也不可以直接赋值答案:A5.设有如下定义:structdata{inti;uniontest{charch;dou
4、bleq;}t;doublef;}b;若字符型变量占1个字节,整型变量占4个字节,双精度变量占8个字节,则结构体变量b占用内存的字节数是()。A.8B.9C.18D.20答案:D6.以下关于数据类型int的别名定义中,正确的定义是()。A.typedefintInteger;B.typedefint=Integer;C.typedefIntegerint;D.typedefInteger=int;答案:A7.设有枚举类型定义:enumcolor{red=3,yellow,blue=10,white,black};则枚举常量black的序号值是()。A
5、.4B.5C.7D.12答案:D8.一个结构体变量所占的内存字节数是()。A.结构体中第一个成员所需的内存字节数B.结构体中最后一个成员所需的内存字节数C.结构体中占用内存最大的成员所需的字节数D.结构体中各成员所需的内存字节数之和答案:D9.当定义一个共用体变量时系统分配给它的内存字节数是()。A.共用体中第一个成员所需的内存字节数B.共用体中最后一个成员所需的内存字节数C.共用体中占用内存最大的成员所需的字节数D.共用体中各成员所需的内存字节数之和答案:C10.以下关于结构体与共用体数据成员定义的叙述中,正确的说法是()。A.结构体类型定义中不能
6、出现共用体类型的成员,共用体类型定义中也不能出现结构体类型的成员B.结构体类型定义中不能出现共用体类型的成员,共用体类型定义可以出现结构体类型的成员C.结构体类型定义中可以出现共用体类型的成员,共用体类型定义中不能出现结构体类型的成员D.结构体类型定义中可以出现共用体类型的成员,共用体类型定义中也可以出现结构体类型的成员答案:D11.在说明一个结构体变量时系统分配给它的存储空间是()。A.该结构体中第一个成员所需存储空间B.该结构体中最后一个成员所需存储空间C.该结构体中占用最大存储空间的成员所需存储空间D.该结构体中所有成员所需存储空间的总和答案:
7、D12.若有以下说明和语句:structworker{intno;char﹡name;}work,﹡p=&work;则以下引用方式不正确的是()。A.work.NoB.(﹡p).noC.p->noD.work->no答案:D13.有如下定义:structdate{intyear,month,day;};structworklist{charname[20];charsex;structdatebirthday;}person;对结构体变量person的出生年份进行赋值时,下面正确的赋值语句是()。A.year=1958B.birthday.year=
8、1958C.person.birthday.year=1958D.person.year=1958答案:C1