下列程序的输出结果为 main () { union u {char *name; int age; int income;}s s.name="WANGLIO

13 查阅

下列程序的输出结果为

main ()

{

union u

{char *name;

int age;

int income;}s

s.name="WANGLIONG";

s.age=28;

s.income=1000;

printf("%d\n",s.age);

}

A.28

B.1000

C.0

D.不确定

参考答案:

B解析:本题对共用体的使用进行了考查。由于共用体所有成员共同占据一段存储空间,所以对成员变量的赋值,后面的赋值会覆盖掉前面的赋值,因为s.income=1000;是最后一次成员变量赋值,变量age与变量income共同占据一段存储空间,所以age的值也为1000。

计算机二级