单选题
某C语言结构体的定义如下。
struct date
int year, month, day; ;
struct worklist
char name[20];
char sex;
struct date birthday;
person;
若对变量person的出生年份进行赋值,正确的赋值语句是 (33) 。
【正确答案】
D
【答案解析】[要点解析] 本试题考查嵌套定义的结构体成员的引用。首先,直接使用结构体成员而无所属关系是一种典型错误,系统将认为它是普通变量而非结构体成员。其次,不论结构体嵌套的层次多少,只能从最外层开始,逐层用“.”运算符展开,注意展开时必须使用变量名而不是结构体名。
事实证明,只有这种展开方式才能清楚地说明成员的所属关系。对于试题,若对变量person的出生年份进行赋值,正确的赋值语句是选项D的“person-birthday. year=1976”。