问题 单项选择题

定义下列结构体(联合)数组:
struct st
char name[15];
int age;
a[10]="ZHAO",14,"WANG",15,"LIU",16,"ZHANG",17;
执行语句printf("%d,%c",a[2].age,*(a[3].name+2))的输出结果为( )。

A) 15,A
B) 16,H
C) 16,A
D) 17,H

答案

参考答案:C

解析: 本题主要考查结构体数组。a[2].age为结构体a[2]的age成员,即16。a[3].name为指向结构体a[3]的name成员的第一个元素的指针,即指向“Z”,(a[3].name+2)将指针后移两位指向第三个元素“A”,*(a[3].name+2))是取指针所指向地址的内容。

选择题
单项选择题