欢迎来到天天文库
浏览记录
ID:50889709
大小:59.50 KB
页数:19页
时间:2020-03-15
《练习题10及参考答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、窗体顶部练习题10及参考答案1.单项选择题(1)在声明一个结构体类型时系统分配给它的存储空间是 。A.该结构体类型中第一个成员所需存储空间B.该结构体类型中最后一个成员所需存储空间C.该结构体类型中所有成员所需存储空间的总和D.结构体类型本身并不占用存储空间,即系统并不给结构体类型分配存储空间【答】D(2)下列说法不正确的是 。A.下列结构体声明时,占据了5个字节的空间structstru{ shortinta; shortintb; charc;}B.结构体类型的成员名可以与程序中的变量名相同C.结构体类型的成员可以是
2、一个结构体变量D.可以单独使用结构体变量中的成员,它的作用相当于普通变量【答】声明结构体类型时不占据内存空间。本题答案为A。(3)在定义一个结构体变量时系统分配给它的存储空间是 。A.该结构体变量中第一个成员所需存储空间B.该结构体变量中最后一个成员所需存储空间C.该结构体变量中占用最大存储空间的成员所需存储空间D.该结构体变量中所有成员所需存储空间的总和【答】D(4)下列说法正确的是 。A.结构体类型的每个成员的数据类型必须是基本类型B.结构体类型的每个成员的数据类型都相同,这一点与数组一样C.在声明结构体类型时,其成员的数据类型不能是结
3、构体本身D.以上说法都不对【答】D(5)在定义一个共用体变量时系统分配给它的存储空间是 。A.该共用体变量中第一个成员所需存储空间B.该共用体变量中最后一个成员所需存储空间C.该共用体变量中占用最大存储空间的成员所需存储空间D.该共用体变量中所有成员所需存储空间的总和【答】C(6)以下关于枚举的叙述不正确的是 。A.枚举变量只能取对应枚举类型的枚举元素表中元素B.可以在定义枚举类型时对枚举元素进行初始化C.枚举元素表中的元素有先后次序,可以进行比较D.枚举元素的值可以是整数或字符串【答】D(7)以下关于typedef的叙述不正确的是 。A.
4、用typedef可以定义各种类型名,但不能用来定义变量B.用typedef可以增加新类型C.用typedef只是将已存在的类型用一个新的名字来代表D.使用typedef便于程序的通用【答】使用typedef语句并不能创建新的类型,只是给定义的类型取一个新名字。本题答案为B。(8)设有如下定义:structstru{ intx;inty;};structst{ intx; floaty; structstru*p;}st1,*p1=&st;以下引用正确的是 。A.(*p1).p.x B.(*p1)->p
5、.a C.p1->p->x D.p1.p->a【答】C(9)若有如下声明:uniondata{ char*p; intn;};以下初始化正确的是 。A.uniondataa="Mary"; B.uniondataa={"Mary"};C.uniondataa=10; D.uniondataa={10};【答】在共用体变量初始化时只能
6、给一个成员赋初值。本题答案为B。(10)下列用法正确的是 。A.typedefintINTEGER;INTEGERi,m; B.typedefintchar;chart,m;C.typedefint[4]ARRAY;ARRAYn; D.以上都不对 【答】选项A正确;选项B中char为C语言已有的数据类型;选项C应改为:typedefintARRAY[4];ARRAYn。本题答案为A。(11)以下程序的运行结果是 。#includestructnode{ in
7、tx; charc;};voidfunc(structnodeb);main(){ staticstructnodea={10,'x'}; func(a); printf("%d,%c",a.x,a.c);}voidfunc(structnodeb){ b.x=20;b.c='x';}A.20,x B.10,x C.x,10 D.x,20【答】func()函数采用传值调用方式,形参的值不会传递到实参。本
8、题答案为B。(12)以下程序的运行结果是 。#includestru
此文档下载收益归作者所有