自考“高级语言程序设计”习题答案详解(39)_工学-查字典自考网
 
请输入您要查询的关键词
  查字典自考网 >> 工学 >> 自考“高级语言程序设计”习题答案详解(39)

自考“高级语言程序设计”习题答案详解(39)

发布时间: 2016-06-29 来源:查字典自考网

7.1 单项选择题

1.设有定义“struct {int x;int y;} d[2]={{1,3},{2, 7}};”,则

printf(“%dn”, d[0].y/d[0].x*d[l].x);的输出是( )

①O ②l

③3 ④6

「解」结构数组d有两个结构元素,每个结构又由两个整型成分组成,初始化后,d[0].x=1,d[0].y=3,d[1].x=2.所以表达式d[0].y/d[0].x* d[l].x的值是 6.所以正确解答是④。

2.设有定义“enum term { my, your=4, his, her=his+10};”,则

printf(“%d,%d,%d,%dn”,my, your, his, her);

的输出是( )

①0,l,2,3 ②0,4,0,10

③0,4,5,15 ④1,4,5,15

「解」按枚举类型定义的规定,枚举类型team的枚举常量对应的整数分别是my=0、your=4、his=5、her=15.所以语句输出0,4,5,15.正确解答是③。

3.以下对枚举类型名的定义中,正确的是()

①enum a ={one,two,three};

② enum a{a1, a2,a3};

③enum a ={‘1’,‘2’,‘3’};

④ enum a {“one”,“two”,“three” };

「解」枚举类型定义的句法是:

enum 枚举类型名 {枚举类型常量1,枚举类型常量2,……};

其中枚举类型常量都是互不相同的标识符。所以定义enum a {a1,a2,a3 };

是一个正确的定义。任何在枚举类型名之后接上 =,或用字符常量,或用字符串常量作为枚举类型常量都是不正确的定义。解答应是②。

4.若有如下定义,则 printf(“%dn”, sizeof(them));的输出是( )

typedef union { lOng x[2];int y[4];char z[8];} MYTYPE;MYTYPE them;

①32 ②16 ③8 ④24

「解」共用型变量的成分是覆盖存储,为共用型变量分配存储时,以其中需要最多存储字节的成分进行分配。设long型数据占4个字节、int型数据占2个字节。共用型MYTYPE有三个成分,第一个成分是有两个long型元素的数组,它需要8个字节;第二个成分是有4个int型元素的数组,它也需要8个字节;第三个成分是有8个字符元素的数组,也是8个字节。所以MYTYPE类型的共用型变量只需要8个字节。正确解答是③。

5.设有以下说明和定义:

typedef union {long i;int k[5]; char c;} DATE;

struct date {int cat; DATE cow; double dog;} too;

DATE max;

则下列语句的执行结果是( )

printh(“%d”,sizeof(struct date)+sizeof(max));

① 26 ② 30

③ 18 ④ 8

「解」设long型数据占4个字节、int型数据占2个字节,double数据占8个字节。共用型DATE有三个成分:long型成分i,有五个int型元素的数组k,char型成分 c.所以 DATE类型的变量需要10个字节。结构类型date有三个成分:int型成分cat,DATE共用类型cow, double型成分dog.所以结构类型 date需要20个字节。所以表达式 sizeof(struct date)+sizeof max的值是30.正确解答是②。

点击显示
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读

当前热点关注

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • [相关地区]