14.5 以下程序的输出结果是
A) 32
B) 16
C) 8
D) 24
typedef union { long x[2];
int y[4];
char z[8];
} MYTYPE;
MYTYPE them;
main()
{ printf("%d\\n",sizeof(them)); }
答案:C
14.6 以下程序的输出结果是
A) 10
B) 50
C) 51
D) 60
20 60 60 70
20 21 11 31
struct st
{ int x;
int *y;
} *p;
int dt[4]={10,20,30,40};
struct st aa[4]={50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0],};
main()
{ p=aa;
printf("%d\\n",++p->x);
printf("%d\\n",(++p)->x);
printf("%d\\n",++(*p->y));
}
答案:C
14.7 若已建立下面的链表结构,指针p,s分别指向图中所示结点,则不能将s所指的结点插入到链表末尾的语句组是
A) s->next=NULL; p=p->next; p->next=s;
B) p=p->next; s->next=p->next; p->next=s;
C) p=p->next; s->next=p; p->next=s;
D) p=(*p).next; (*s).next=(*p).next; (*p).next=s;
答案:C
14.8 以下程序的输出结果是
A) 25
B) 30
C) 18
D) 8
typedef union
{ long i;
int k[5];
char c;
} DATE;
struct date
{ int cat;
DATE cow;
double dog;
} too;
DATE max;
main()
{ printf("%d\\n",sizeof(struct date)+sizeof(max)); }
答案:B